JPWO2019216277A1 - 情報処理装置、演算装置、及び情報処理方法 - Google Patents

情報処理装置、演算装置、及び情報処理方法 Download PDF

Info

Publication number
JPWO2019216277A1
JPWO2019216277A1 JP2020518279A JP2020518279A JPWO2019216277A1 JP WO2019216277 A1 JPWO2019216277 A1 JP WO2019216277A1 JP 2020518279 A JP2020518279 A JP 2020518279A JP 2020518279 A JP2020518279 A JP 2020518279A JP WO2019216277 A1 JPWO2019216277 A1 JP WO2019216277A1
Authority
JP
Japan
Prior art keywords
spin
group
information processing
value
interaction
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
JP2020518279A
Other languages
English (en)
Other versions
JP6874219B2 (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
Publication of JPWO2019216277A1 publication Critical patent/JPWO2019216277A1/ja
Application granted granted Critical
Publication of JP6874219B2 publication Critical patent/JP6874219B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/3001Arithmetic instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/11Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30036Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Computational Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Probability & Statistics with Applications (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Operations Research (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

イジングモデルの基底状態の探索を効率よく行い、組合せ最適化問題を効率よく解けるようにする。情報処理装置は、イジングモデルの相互作用関係をN個の第1スピン群の各スピンとN個の第2スピン群の各スピンとを接続した完全2部グラフとして表し、第1スピン群のi番目のスピンと第2スピン群のj(=i)番目のスピンとが同値となるように第1スピン群のi番目のスピンと第2スピン群のj番目のスピンとの間の相互作用を設定したエネルギー関数を記憶し、エネルギー関数に基づきイジングモデルの基底状態を探索する。情報処理装置は、上記エネルギー関数についてシミュレーティッド・アニーリング法(simulated Annealing Method)のアルゴリズムを適用することによりイジングモデルの基底状態を探索する。

Description

本発明は、情報処理装置、演算装置、及び情報処理方法に関する。
本出願は、2018年5月8日に出願された日本特許出願2018−089773号に基づく優先権を主張し、その開示全体を援用して本出願に取り込むものである。
特許文献1には、「相互作用モデルの解を求めるための基本構成単位となる構成要素をアレイ状に配置した半導体装置を提供する。」、「相互作用モデルの1つのノードの状態を示す値を記憶する第1のメモリセルと、1つのノードに接続された他のノードからの相互作用を示す相互作用係数を記憶する第2のメモリセルと、第1のメモリセルの値を固定するためのフラグを記憶する第3のメモリセルと、他のノードの状態を示す値及び前記相互作用係数に基づいて、前記1つのノードの次状態を示す値を決定する第1の演算回路と、フラグの値に応じて前記次状態を示す値を第1のメモリセルに記録するか否かを決定する第2の演算回路と、を有するユニットを複数備える。」と記載されている。
非特許文献1には、量子アニーリング(断熱量子計算)(adiabatic quantum optimization)におけるマイナーエンベッディング(minor-embedding in adiabatic quantum optimization)に関して記載されている。
特開2016−51313号公報
Choi, V. (2008). Minor-embedding in adiabatic quantum computation: I. The parameter setting problem. Quantum Information Processing, 7(5), 193-209.
物理現象や社会現象の多くは相互作用モデルによって表現することができる。相互作用モデルは、モデルを構成する複数のノードと、ノード間の相互作用、さらに必要であればノード毎のバイアスで定義される。物理学や社会科学の分野においては種々のモデルが提案されているが、いずれも相互作用モデルの一形態として解釈することができる。
相互作用モデルの一つとしてイジングモデル(Ising Model)がある。イジングモデルの基底状態の探索は、イジングモデルのエネルギー関数を最小化するスピン配列を求める最適化問題である。イジングモデルの基底状態を探索する方法として、マルコフ連鎖モンテカルロ法(以下、MCMC(Markov chain Monte Carlo methods)と称する。)によるものがある。MCMCでは、状態間を確率的に遷移させつつ状態のサンプリングを行うことで所望の統計量を推定する。
ここでいわゆる組合せ最適化問題をイジングモデルの基底状態の探索問題に変換すると、スピン間の相互作用は密構造(個々のスピンが他のすべてのスピンと隣接する構造)となる。そのため、各スピンについて確率的な処理を同時に行うことはできず、例えば、半導体装置を用いてイジングモデルの基底状態の探索を行おうとすると処理の高速化が困難になるという課題がある。
本発明は、こうした背景に鑑みてなされたもので、イジングモデルの基底状態の探索を効率よく行うことが可能な、情報処理装置及び情報処理方法を提供することを目的とする。
上記目的を達成するための本発明の一つは、情報処理装置であって、イジングモデルの相互作用関係をN個の第1スピン群の各スピンとN個の第2スピン群の各スピンとを接続した完全2部グラフとして表し、前記第1スピン群のi番目のスピンと前記第2スピン群のj(=i)番目のスピンとが同値となるように前記第1スピン群のi番目のスピンと前記第2スピン群のj番目のスピンとの間の相互作用を設定したエネルギー関数を記憶する記憶部と、前記エネルギー関数に基づき前記イジングモデルの基底状態を探索する基底状態探索部と、を備える。
その他、本願が開示する課題、及びその解決方法は、発明を実施するための形態の欄、及び図面により明らかにされる。
本発明によれば、イジングモデルの基底状態の探索を効率よく行うことができる。
イジングモデルのエネルギーランドスケープの概念図である。 イジングモデルのスピン間の相互作用関係を完全グラフとして表した図である。 イジングモデルのスピン間の相互作用関係を完全2部グラフとして表した図である。 情報処理装置の概略的な構成を示す。 演算回路のブロック図である。 情報処理装置が備える主な機能を示す図である。 基底状態探索処理を説明するフローチャートである。 MCMCにおけるステップ数とエネルギーHとの関係を示すグラフである。
以下、実施の形態を図面に基づいて詳細に説明する。尚、以下の説明において、同一の又は類似する構成に共通の符号を付して重複した説明を省略することがある。また同一あるいは同様の機能を有する要素が複数ある場合に同一の符号に異なる添字を付して説明することがある。また複数の要素を区別する必要がない場合は添字を省略して説明することがある。
まずイジングモデル(Ising Model)について説明する。イジングモデルは磁性体の振舞いの説明に用いられる統計力学のモデルである。イジングモデルは、+1/−1(「0/1」や「上/下」等でもよい)の2値をとるスピンの状態、及び上記スピン間の相互作用を示す相互作用係数を用いて定義される。イジングモデルのエネルギー関数H(σ)(一般にハミルトニアンと呼ばれる)は次式で表わされる。
Figure 2019216277
式1において、σ、σは、それぞれi番目とj番目のスピンの値、Ji,jは、i番目とj番目のスピンの間の相互作用係数を表わす。
式1の右辺は、スピン間の相互作用に起因するエネルギーの総和である。一般にイジングモデルは無向グラフとして表現され、i番目のスピンからj番目のスピンへの相互作用と、j番目のスピンからi番目のスピンへの相互作用とを区別することはない。そのため、式1ではi<jを満たすσ、σの組合せについて相互作用の影響を求めている。
イジングモデルの基底状態の探索はイジングモデルのエネルギー関数を最小化するスピン配列を求める最適化問題である。本実施形態では、イジングモデルの基底状態の探索をマルコフ連鎖モンテカルロ法(以降、MCMC(Markov chain Monte Carlo methods)と呼ぶ)により行う。
図1はイジングモデルのエネルギーランドスケープの概念図である。グラフの横軸はスピン配列、縦軸は系の全エネルギーである。確率的な遷移では、現在の状態σから、状態σの近傍のある状態σ’への確率的な遷移を繰り返す。状態σから状態σ’に遷移する確率のことを、以下、遷移確率P(σ,σ’)と称する。遷移確率P(σ,σ’)の例としてメトロポリス法(Metropolis method)によるものや熱浴法によるものがある。メトロポリス法における遷移確率P(σ,σ’)の算出式を次に示す。
Figure 2019216277
式2において、Tは一般に温度と呼ばれるパラメータであり、状態間の遷移のし易さを表す。
近傍の状態σ’を生成する方法としては、現在の状態σから一つのスピンの値を変更する方法が一般的である。変更するスピンを一つずつ順番に変えていくことで、スピン全体が取り得る状態について探索を行う。例えば、図1の場合、状態Aから一つのスピンが反転すると状態Bとなり、更に一つのスピンが反転すると状態Cとなる。
温度Tを大きな値から徐々に減少させつつMCMCを実行するとき、エネルギーが最も低い状態に漸近的に収束する。これを利用して最小化問題の最適解または近似解を求める手法として、シミュレーティッド・アニーリング(以下、SA(simulated Annealing)と称する。)がある。
イジングモデルに対してMCMCやSAを適用する場合、式2に基づきスピンの値を確率的に決定する。ここで非隣接の複数のスピンについては式2に基づく状態遷移を同時に適用することが可能である。そのため、例えば、特許文献1に記載されているように、式2に基づく確率的処理を実現する回路を複数用意し、非隣接の複数のスピンの値を並列して更新することで、MCMCやSAの処理の高速化を図ることが可能である。
図2は、スピンの数を6とした場合における、イジングモデルの全スピン間の相互作用関係を表した完全グラフ(全結合グラフ)である。組合せ最適化問題をイジングモデルの基底状態の探索問題に変換すると、スピン間の相互作用関係は同図に示すような密構造(個々のスピンが他の全てのスピンと隣接する構造)となる。そのため、各スピンの確率的な処理を同時に行うことはできず、MCMCやSAの処理の高速化を図ることは困難である。逆に言えば、こうした密の相互作用関係を持つイジングモデルに対して、MCMCの要求する理論的背景を満たしつつ複数のスピンを同時に更新することができれば、MCMCやSAの処理の高速化を図ることが可能であり、ひいては組合せ最適化問題を効率よく解くことが可能になる。こうした観点に基づき、本実施形態では、イジングモデルの相互作用関係を完全2部グラフとして表わす(模擬する)方法により基底状態を求める。以下、この方法について説明する。
図3はイジングモデルの相互作用関係を完全2部グラフとして表した図である。本例ではスピンの数を6としている。同図に示す左列のスピン群(以下、第1スピン群と称する。)のi番目のスピンと右列のスピン群(以下、第2スピン群と称する。)のj番目のスピンと間には相互作用Ji,jが働く。以下、第1スピン群のi番目のスピンと第2スピン群のj番目のスピン間の相互作用係数をwiと表記する。
非特許文献1(Choi, V. (2008). Minor-embedding in adiabatic quantum computation: I. The parameter setting problem. Quantum Information Processing, 7(5), 193-209.)に記載されているように、相互作用wiを充分に大きい値に設定すると、同図に示すイジングモデルの基底状態において、第1スピン群のi番目のスピンの値と第2スピン群のj(=i)番目のスピンの値は同値となる。例えば、非特許文献1は、相互作用係数wiが次の式3を満たすならば、第1スピン群と第2スピン群の値が同値になることを与えている。
Figure 2019216277
また次の式4又は式5を満たす値も条件を満たすことを示すことができる。但し、λは、i行j列の要素がJi,jで対角成分が0である行列の最小固有値である。
Figure 2019216277
Figure 2019216277
基底状態において、第1スピン群及び第2スピン群が同値であると仮定する。第1スピン群及び第2スピン群の夫々のスピンの総数をNとし、基底状態における第1スピン群及び第2スピン群のi番目のスピンの値をS(i=1〜N)とする。このとき、基底状態におけるイジングモデルのエネルギーHは、次式で表すことができる。
Figure 2019216277
式6の右辺第2項のwは、第1スピン群のi番目のスピンと第2スピン群のj(=i)番目のスピンとの間の相互作用係数であり、S、・・・、SNに依らない定数である。つまり値S、・・・、SNは、次式の解である。
Figure 2019216277
故にスピンS、・・・、SNは、完全グラフで表したイジングモデルによる式1を最小化するσ、・・・、σNと捉えることができる。つまり図3に示す完全2部グラフで表したモデルの基底状態における各列のスピン配列は、図2に示す完全グラフ(全結合グラフ)で表したイジングモデルの基底状態と等しい。また図3に示すグラフは2部グラフであるので第1スピン群の隣接するスピン間には相互作用がなく、また第2スピン群の隣接するスピン間についても同様に相互作用がない。従って、図3に示すモデルに対してMCMCを実行するとき、各群のスピンは同時に値を更新することが可能であり、基底状態の探索を効率よく行うことができる。
続いて、メトロポリス法によりスピンを更新する場合を考える。以下の説明では、第1スピン群の各スピンの値をσ 、・・・、σ と表し、同様に第2スピン群の各スピンの値をσ 、・・・、σ と表す。ここで第2スピン群のi番目のスピンの値σ を反転させたときのエネルギーHの差分ΔHは次式から求めることができる。
Figure 2019216277
前述したように、メトロポリス法において温度Tにおける状態遷移の受理確率(遷移確率)は式2で表される。従って、一様乱数u(0<u≦1)を用いると、状態遷移が受理される条件は次式で表すことができる。
Figure 2019216277
ここで状態遷移後に第2スピン群のスピンの値σ が+1となる場合を考える。まず状態遷移前の第2スピン群のスピンの値σ が+1ならば、ΔH>−T・ln(u)、つまり式8から、次式が成り立つときに条件を満たす。
Figure 2019216277
同様に、状態遷移前の第2スピン群のスピンの値σ が−1ならばΔH≦−T・ln(u)、つまり式8から、次式が成り立つときに状態遷移後に第2スピン群のスピンの値σ が+1となる。
Figure 2019216277
故に状態遷移前の第2スピン群のスピンの値σ に依らず、次式を満たせば状態遷移後に第2スピン群のスピンの値σ が=+1となることがわかる。
Figure 2019216277
結局、メトロポリス法に従った状態遷移を実行するには、第2スピン群のスピンの値σ の次状態を次式から求めればよい。尚、次式における関数sign(x)は、x≧0ならば+1、x<0ならば−1を返す関数である。
Figure 2019216277
ここで式13は、第2スピン群のある1つのスピンに着目し、このスピンの次状態をメトロポリス法に従って決定するための式である。また第1スピン群のスピンのi番目と第2スピン群のスピンのj番目の間に働く相互作用Ji,jが充分に大きければ、第2スピン群の複数のスピンの値σ に対して同時に式13を適用することが可能である。従って、複数のスピンを同時に更新する場合は次式から第2スピン群の各スピンの次状態を求めればよい。但し、次式に示す関数signは、引数に与えられたベクトルの各要素に対して符号を与えるものとする。
Figure 2019216277
尚、以上では、第2スピン群のスピンの更新則について述べたが,第1スピン群のスピンについても同様であり、次の更新則を得ることができる。
Figure 2019216277
図4は、式14及び式15に基づきイジングモデルの基底状態の探索を行う情報処理装置の一例である。同図に示すように、この情報処理装置10は、プロセッサ11、主記憶装置12、補助記憶装置13、入力装置14、出力装置15、通信装置16、一つ以上の演算装置20、及びこれらの装置を通信可能に接続するシステムバス5を備える。情報処理装置10は、例えば、その一部又は全部がクラウドシステム(Cloud System)により提供されるクラウドサーバ(Cloud Server)のような仮想的な情報処理資源を用いて実現されるものであってもよい。また情報処理装置10は、例えば、互いに協調して動作する、通信可能に接続された複数の情報処理装置によって実現されるものであってもよい。
プロセッサ11は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)を用いて構成されている。主記憶装置12は、プログラムやデータを記憶する装置であり、例えば、ROM(Read Only Memory)(SRAM(Static Random Access Memory)、NVRAM(Non Volatile RAM)、マスクROM(Mask Read Only Memory)、PROM(Programmable ROM)等)、RAM(Random Access Memory)(DRAM(Dynamic Random Access Memory)等)等である。補助記憶装置13は、ハードディスクドライブ(Hard Disk Drive)、フラッシュメモリ(Flash Memory)、SSD(Solid State Drive)、光学式記憶装置(CD(Compact Disc)、DVD(Digital Versatile Disc)等)等である。補助記憶装置13に格納されているプログラムやデータは、随時、主記憶装置12に読み込まれる。
入力装置14は、ユーザから情報の入力を受け付けるユーザインタフェースであり、例えば、キーボード、マウス、カードリーダ、タッチパネル等である。出力装置15は、ユーザに情報を提供するユーザインタフェースであり、例えば、各種情報を可視化する表示装置(LCD(Liquid Crystal Display)、グラフィックカード等)や音声出力装置(スピーカ)、印字装置等である。通信装置16は、他の装置と通信する通信インタフェースであり、例えば、NIC(Network Interface Card)、無線通信モジュール、USB(Universal Serial Interface)モジュール、シリアル通信モジュール等である。
演算装置20は、イジングモデルの基底状態の探索に関する処理を実行する装置である。演算装置20は、例えば、GPU(Graphics Processing Unit)のように、情報処理装置10に装着する拡張カードの形態を取るものであってもよい。演算装置20は、例えば、CMOS(Complementary Metal Oxide Semiconductor)回路、FPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)等のハードウェアによって構成される。演算装置20は、制御装置、記憶装置、システムバス5に接続するためのインタフェース等を含み、システムバス5を介してプロセッサ11との間でコマンドや情報の送受を行う。演算装置20は、例えば、通信線を介して他の演算装置20と通信可能に接続され、他の演算装置20と協調して動作するものであってもよい。演算装置20により実現される機能を、例えば、プロセッサ(CPU、GPU等)にプログラムを実行させることにより実現してもよい。
図5は、演算装置20の動作原理を説明する回路(以下、演算回路500と称する。)のブロック図である。演算回路500は式14及び式15に相当する機能を実現する。以下、同図とともに演算装置20の動作原理について説明する。尚、以下の説明において、演算回路500が取り扱うスピンの数をNで表す。
同図に示すように、演算回路500は、隣接行列メモリ511、第1スピンメモリ512a、第2スピンメモリ512b、第1セレクタ513a、第2セレクタ513b、積和演算装置514、ベクトル乗算器515、比較器516、及び否定(NOT)回路520を含む。
隣接行列メモリ511には、相互作用Jを表す情報(以下、隣接行列と称する。)が格納される。隣接行列は、i行j列の要素が相互作用係数Ji,jであるN行N列の行列である。隣接行列は一般に対称行列であり、この対称性を用いて隣接行列メモリ511の使用量を削減することができる。
第1スピンメモリ512aには、前述した完全2部グラフの第1スピン群の各スピンの状態を示すN次元ベクトルの情報が格納される。第2スピンメモリ512bは、前述した完全2部グラフの第2スピン群の各スピンの状態を示すN次元ベクトルの情報が格納される。
同図に示すように、演算回路500には、信号EN、信号SW、及び信号SRが入力される。比較器516は信号SPを出力する。
信号ENは、H(high)とL(low)の値を周期的に繰り返す信号である。信号ENがH(high)のとき、第1セレクタ513aは第1スピンメモリ512aの値を出力し、第2セレクタ513bは第2スピンメモリ512bの値を出力する。また信号ENがL(low)のとき、第1セレクタ513aは第2スピンメモリ512bの値を出力し、第2セレクタ513bは第1スピンメモリ512aの値を出力する。尚、第1セレクタ513a及び第2セレクタ513bは、上記とは逆位相(逆論理)の信号ENにより上記のように動作するものであってもよい。
信号SWは、N要素のベクトル(N次元ベクトル)を表す信号である。
積和演算装置514には、隣接行列メモリ511に格納されている隣接行列(相互作用係数Ji,j)の値、信号SW、及び第1セレクタ513aの出力が入力される。ここで第1セレクタ513aの出力であるN次元ベクトルをx、信号SWの表すN次元ベクトルをw=(w、・・・、w)と表すとき、積和演算装置514は、y=2(A+diag(w、・・・、w))xなるN次元ベクトルyを出力する。
信号SRは、各要素が互いに独立な乱数であるN次元ベクトルを表す。本例では各要素は温度Tと乱数−ln(u)を掛け合わせたものである。但しuは一様乱数(0<u≦1)である。
ベクトル乗算器515には、第2セレクタ513bから出力されるN次元ベクトルと、N次元の信号SRとが入力される。ベクトル乗算器515は、夫々の1番目の要素の積、2番目の要素の積、というように、対応する要素ごとの積を計算して出力する。従って、ベクトル乗算器515の出力信号もN次元ベクトルである。
比較器516には、積和演算装置514から出力されるN次元ベクトルと、ベクトル乗算器515から出力されるN次元ベクトルとが入力される。比較器516は、入力された各N次元ベクトルの対応する要素同士を比較し、比較した結果(要素同士の大小関係)を出力する。例えば、比較器516は、比較器516の2入力信号において、1番目の要素を比較したとき、積和演算装置514の信号の方が大きい場合は1を、小さい場合は−1を、比較器516の1番目の要素に設定する。
比較器516から出力される信号SPは、前述したMCMCに基づくスピンの次状態である。信号SPの情報は、信号ENがH(High)であれば第1スピンメモリ512aに、信号ENがL(Low)であれば第2スピンメモリ512bに書き込まれる。
図6に情報処理装置10が備える主な機能(ソフトウェア構成)を示している。同図に示すように、情報処理装置10は、記憶部600、モデル変換部611、隣接行列設定部612、スピン値初期化部613、温度設定部614、相互作用演算実行部615、及びスピン値読出部616を備える。これらの機能は、プロセッサ11が、主記憶装置12に格納されているプログラムを読み出して実行することにより、もしくは、演算装置20が備えるハードウェアにより実現される。尚、情報処理装置10は、上記の機能に加えて、例えば、オペレーティングシステム、ファイルシステム、デバイスドライバ、DBMS(DataBase Management System)等の他の機能を備えていてもよい。
上記機能のうち記憶部600は、問題データ601、イジング形式問題データ602、及び演算装置制御プログラム603を、主記憶装置12又は補助記憶装置13に記憶する。問題データ601は、例えば、組合せ最適化問題等を所定の記述形式で記述したデータである。問題データ601は、例えば、ユーザがユーザインタフェース(入力装置、出力装置、通信装置等)を介して設定する。イジング形式問題データ602は、モデル変換部611が、問題データ601をイジングモデル形式のデータに変換することにより生成されるデータである。演算装置制御プログラム603は、相互作用演算実行部615が演算装置20を制御する際に実行する、もしくは相互作用演算実行部615が個々の演算装置20にロードして演算装置20に実行させるプログラムである。
モデル変換部611は、問題データ601をイジングモデル形式のデータであるイジング形式問題データ602に変換する。モデル変換部611の機能は必ずしも情報処理装置10に実装されていなくてもよく、情報処理装置10が、他の情報処理装置等で生成されたイジング形式問題データ602を入力装置14や通信装置16を介して取り込むようにしてもよい。
隣接行列設定部612は、イジング形式問題データ602に基づくイジングモデルの相互作用関係を前述した完全2部グラフで表した場合における隣接行列(相互作用係数Ji,j)を隣接行列メモリ511に設定する。
スピン値初期化部613は、演算装置20の第1スピンメモリ512a及び第2スピンメモリ512bに格納されている各スピンの値を初期化する。スピン値初期化部613は、例えば、完全2部グラフにおける第1スピン群の各スピンの値σ 、・・・σ 、及び第2スピン群の各スピンの値σ 、・・・、σ をいずれも50%の確率で「1」か「−1」に設定する。
温度設定部614は、相互作用演算実行部615がイジングモデルの基底状態の探索を行う際に用いる、式14及び式15における温度Tの値を設定する。
相互作用演算実行部615は、温度設定部614により設定された温度Tごとに、式14及び式15に従ってイジングモデルの基底状態を探索する演算(以下、相互作用演算と称する。)を行う。相互作用演算に際し、相互作用演算実行部615は、例えば、温度Tを高いほうから低いほうに向けて変化させる。
スピン値読出部616は、相互作用演算実行部615によるイジングモデルの基底状態の探索が終了すると、第1スピンメモリ512a又は第2スピンメモリ512bに格納されているスピンの値を読み出し、読み出した値を出力装置15や通信装置16に出力する。
図7は、イジングモデルの基底状態の探索に際し情報処理装置10が行う処理(以下、基底状態探索処理S700と称する。)を説明するフローチャートである。以下、同図とともに基底状態探索処理S700について説明する。尚、以下において、符号の前に付している「S」の文字は処理ステップの意味である。基底状態探索処理S700は、例えば、入力装置14を介してユーザからの指示等を受け付けることにより開始される。
同図に示すように、まずモデル変換部611が、問題データ601をイジング形式問題データ602に変換する(S711)。記憶部600が既にイジング形式問題データ602を記憶している場合は当該処理S711は省略される。S711の処理と、S712以降の処理とは、夫々を異なる装置で実行するようにしてもよい。またS711の処理と、S712以降の処理とを異なるタイミングで実行するようにしてもよい(例えば、S711の処理を事前に行っておくことが考えられる。)。
続いて、隣接行列設定部612が、隣接行列メモリ511に隣接行列を設定する(S712)。隣接行列は、ユーザインタフェース(例えば、入力装置14、出力装置15、通信装置16等により実現される。)を介してユーザが設定又は編集することもできる。
続いて、スピン値初期化部613が、第1スピンメモリ512a及び第2スピンメモリ512bに格納されている各スピンの値を初期化する(S713)。
続いて、温度設定部614が、式14及び式15の温度Tk(k=1,2,3、・・・)を設定する(S714)。尚、上記の添字kは設定される温度Tの種類を表す。
続いて、相互作用演算実行部615が、初期状態におけるエネルギーHを算出する(S715)。
続いて、相互作用演算実行部615が、式14及び式15に基づき相互作用演算を実行することにより次状態を生成し、生成した次状態に基づき次状態におけるエネルギーH’を求め、差分ΔH(=H’−H)を求める(S716)。
続いて、相互作用演算実行部615は、生成した次状態を受理するか否かを判定する。尚、相互作用演算実行部615は、上記の判定を、例えば、メトロポリス基準(ΔHとTで定まる基準)に基づき行う。
相互作用演算実行部615が次状態を受理すると判定した場合(S717:YES)、次状態に遷移する(S718)。具体的には、式14に基づき相互作用演算を実行した場合は第2スピン群の各スピンの値を次状態に設定し、式15に基づき相互作用演算を実行した場合は第1スピン群の各スピンの値を次状態に設定する。
一方、相互作用演算実行部615が次状態を受理しないと判定した場合(S717:NO)、処理はS719に進む。
S719では、相互作用演算実行部615は、温度Tを下げるか否かを判定する。例えば、相互作用演算実行部615は、S716〜S719のループを所定回数以上繰り返した場合に温度Tを下げると判定する。
相互作用演算実行部615が温度Tを下げると判定した場合(S719:YES)、処理はS720に進み、相互作用演算実行部615は温度Tを下げる。例えば、指数型アニーリングの場合、相互作用演算実行部615は、Tk+1=γ・Tとする(γは冷却速度を決定する係数)。一方、相互作用演算実行部615が温度Tを下げないと判定した場合(S719:NO)、処理はS716に戻る。
続いて、相互作用演算実行部615は、停止条件が成立したか否か(例えば、温度Tが予め設定された最低温度に達したか否か)を判定する(S721)。停止条件が成立したと相互作用演算実行部615が判定した場合(S721:YES)、処理はS722に進む。一方、停止条件が成立しないと相互作用演算実行部615が判定した場合(S721:NO)、処理はS716に戻る。
S722では、スピン値読出部616が、第1スピンメモリ512a及び第2スピンメモリ512bに格納されているスピンの値を読み出して出力する。以上で基底状態探索処理S700は終了する。
以上の構成からなる情報処理装置10によりイジングモデルの基底状態の探索を行った場合の効果を検証すべく、イジングモデルの全スピン間の相互作用関係を完全グラフで表した場合(以下、従来手法と称する。)におけるイジングモデルの基底状態の探索結果と、イジングモデルのスピン間の相互作用関係を完全2部グラフとして表した場合(以下、本手法と称する。)におけるイジングモデルの基底状態の探索結果との比較を行った。
まず従来手法と本手法の夫々について、スピンの数を16とし、温度Tを1000度から30度まで変化させて基底状態探索処理S700を行った場合における、エネルギーの極小値(最小値を含む)と各極小値の出現回数を求めた。尚、隣接行列(相互作用係数Ji,j)は「−127」〜「127」の間でランダムに設定した。各スピンの更新回数は1000回とした。また試行回数は100回とした。
表1は、従来手法を用いた場合におけるエネルギーの極小値(局所解又は最適解)と基底状態探索処理S700における出現回数を示したものである。また表2は、本手法を用いた場合におけるエネルギーの極小値(局所解又は最適解)と基底状態探索処理S700における出現回数を示したものである。
Figure 2019216277
Figure 2019216277
表1及び表2から、本手法による場合でも従来手法と同様にエネルギー極小値を精度よく特定できることがわかる。
図8は、スピンの数を32768とし、隣接行列(相互作用係数Ji,j)を「−32767」〜「32767」の間でランダムに設定して、従来手法及び本手法により基底状態探索処理S700を行った場合における、MCMCにおけるステップ数とエネルギーHとの関係を示すグラフである。同図に示すように示すように、本手法は従来手法に比べて少ないステップ数でエネルギーHが極小値に到達することがわかる。即ち、本手法によれば、イジングモデルの基底状態の探索を効率よく行うことが可能である。
以上、詳細に説明したように、本実施形態の情報処理装置10によれば、イジングモデルの基底状態の探索を効率よく行うことができる。そのため、組合せ最適化問題を効率よく解くことができる。尚、情報処理装置10(演算装置20を含む)は、シンプルな構成であるので安価かつ容易に製造することができる。
以上、一実施形態について詳述したが、本発明は上記の実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば、上記の実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また上記実施形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また上記の各構成、機能部、処理部、処理手段等は、それらの一部または全部を、例えば、集積回路で設計する等によりハードウェアで実現してもよい。また上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリやハードディスク、SSD(Solid State Drive)等の記録装置、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また上記の各図において、制御線や情報線は説明上必要と考えられるものを示しており、必ずしも実装上の全ての制御線や情報線を示しているとは限らない。例えば、実際には殆ど全ての構成が相互に接続されていると考えてもよい。
また以上に説明した情報処理装置10の各種機能部、各種処理部、各種データベースの配置形態は一例に過ぎない。各種機能部、各種処理部、各種データベースの配置形態は、情報処理装置10が備えるハードウェアやソフトウェアの性能、処理効率、通信効率等の観点から最適な配置形態に変更し得る。
また前述した各種のデータを格納するデータベースの構成(スキーマ(Schema)等)は、リソースの効率的な利用、処理効率向上、アクセス効率向上、検索効率向上等の観点から柔軟に変更し得る。
10 情報処理装置、11 プロセッサ、12 主記憶装置、20 演算装置、511 隣接行列メモリ、512a 第1スピンメモリ、512b 第2スピンメモリ、513a 第1セレクタ、513b 第2セレクタ、514 積和演算装置、515 ベクトル乗算器、516 比較器、520 否定(NOT)回路、600 記憶部、601 問題データ、602 イジング形式問題データ、603 演算装置制御プログラム、611 モデル変換部、612 隣接行列設定部、613 スピン値初期化部、614 温度設定部、615 相互作用演算実行部、616 スピン値読出部

Claims (11)

  1. イジングモデルの相互作用関係をN個の第1スピン群の各スピンとN個の第2スピン群の各スピンとを接続した完全2部グラフとして表し、前記第1スピン群のi番目のスピンと前記第2スピン群のj(=i)番目のスピンとが同値となるように前記第1スピン群のi番目のスピンと前記第2スピン群のj番目のスピンとの間の相互作用を設定したエネルギー関数を記憶する記憶部と、
    前記エネルギー関数に基づき前記イジングモデルの基底状態を探索する基底状態探索部と、
    を備える、情報処理装置。
  2. 請求項1に記載の情報処理装置であって、
    前記第1スピン群及び前記第2スピン群の夫々のスピンの総数をNとし、基底状態における前記第1スピン群のスピンのi番目の値をS(i=1〜N)とし、基底状態における前記第2スピン群のスピンのj番目の値をS(j=1〜N)とし、前記第1スピン群のi番目のスピンと第2スピン群のj番目のスピンと間の相互作用係数をJi,jとし、前記第1スピン群のスピンのi番目と前記第2スピン群のスピンのj(=i)番目との間の相互作用係数をwとし、
    前記相互作用係数Ji,jは次式、
    Figure 2019216277
    又はi行j列の要素がJi,jで対角成分が0である行列の最小固有値λで与えられる次式
    Figure 2019216277
    を満たすように設定される、
    情報処理装置。
  3. 請求項2に記載の情報処理装置であって、
    前記基底状態探索部は、
    シミュレーティッド・アニーリング法(simulated Annealing Method)のアルゴリズムに従って前記イジングモデルの基底状態を探索し、
    前記探索において、状態間の遷移のし易さを表すパラメータである温度Tにおける状態遷移の受理確率(遷移確率)P(σ,σ’)をメトロポリス法(Metropolis method)に基づき次式から求め、
    Figure 2019216277
    前記第1スピン群の各スピンの値をσ 、・・・、σ と表し、前記第2スピン群の各スピンの値をσ 、・・・、σ と表した場合に、
    第2スピン群のi番目のスピンの値σ を反転させたときの前記エネルギーHの差分ΔHを次式から求め、
    Figure 2019216277
    第1スピン群のi番目のスピンの値σ を反転させたときの前記エネルギーHの差分ΔHを次式から求め、
    Figure 2019216277
    u(0<u≦1)を一様乱数とした場合に前記状態遷移が受理される条件を次式に基づき判定する、
    Figure 2019216277
    情報処理装置。
  4. 請求項3に記載の情報処理装置であって、
    前記基底状態探索部は、
    前記第2スピン群の次状態を次式により求め、
    Figure 2019216277
    前記第1スピン群の次状態を次式により求める、
    Figure 2019216277
    情報処理装置。
  5. 請求項4に記載の情報処理装置であって、
    前記相互作用係数Ji,jを記憶する隣接行列メモリと、
    前記第1スピン群の各スピンの値σ 、・・・、σ を記憶する第1スピンメモリと、
    前記第2スピン群の各スピンの値σ 、・・・、σ を記憶する第2スピンメモリと、
    前記第1スピンメモリの値又は前記第2スピンメモリの値、前記隣接行列メモリの値、及びN次元ベクトルw=(w、・・・、w)を表す信号が入力される積和演算装置と、
    前記第1スピンメモリの値又は前記第2スピンメモリの値、及び各要素が互いに独立な乱数であるN次元ベクトルが入力されるベクトル乗算器と、
    前記積和演算装置から出力されるN次元ベクトルと、前記ベクトル乗算器から出力されるN次元ベクトルとが入力され、入力された各N次元ベクトルの対応する要素同士を比較し、要素同士の大小関係を出力する比較器と、
    を有する一つ以上の演算装置を備える、
    情報処理装置。
  6. 請求項5に記載の前記演算装置であって、
    前記隣接行列メモリと、前記第1スピンメモリと、前記第2スピンメモリと、前記積和演算装置と、前記ベクトル乗算器と、前記比較器と、を備える、
    演算装置。
  7. 請求項6に記載の演算装置であって、
    CMOS(Complementary Metal Oxide Semiconductor)回路、FPGA(Field Programmable Gate Array)、及びASIC(Application Specific Integrated Circuit)のうちのいずれかにより実現される、
    演算装置。
  8. 情報処理装置が、
    イジングモデルの相互作用関係をN個の第1スピン群の各スピンとN個の第2スピン群の各スピンとを接続した完全2部グラフとして表わし、前記第1スピン群のi番目のスピンと前記第2スピン群のj(=i)番目のスピンとが同値となるように前記第1スピン群のi番目のスピンと前記第2スピン群のj番目のスピンとの間の相互作用を設定したエネルギー関数を記憶するステップ、及び、
    前記エネルギー関数に基づき前記イジングモデルの基底状態を探索するステップ、
    を実行する、
    情報処理方法。
  9. 請求項8に記載の情報処理方法であって、
    前記第1スピン群及び前記第2スピン群の夫々のスピンの総数をNとし、基底状態における前記第1スピン群のスピンのi番目の値をS(i=1〜N)とし、基底状態における前記第2スピン群のスピンのj番目の値をS(j=1〜N)とし、前記第1スピン群のi番目のスピンと第2スピン群のj番目のスピンと間の相互作用係数をJi,jとし、前記第1スピン群のスピンのi番目と前記第2スピン群のスピンのj(=i)番目との間の相互作用係数をwとし、
    前記相互作用係数Ji,jは次式、
    Figure 2019216277
    又はi行j列の要素がJi,jで対角成分が0である行列の最小固有値λで与えられる次式
    Figure 2019216277
    を満たすように設定される、
    情報処理方法。
  10. 請求項9に記載の情報処理方法であって、
    前記情報処理装置は、
    シミュレーティッド・アニーリング法(simulated Annealing Method)のアルゴリズムに従って前記イジングモデルの基底状態を探索し、
    前記探索において、状態間の遷移のし易さを表すパラメータである温度Tにおける状態遷移の受理確率(遷移確率)P(σ,σ’)をメトロポリス法(Metropolis method)に基づき次式から求め、
    Figure 2019216277
    前記第1スピン群の各スピンの値をσ 、・・・、σ と表し、前記第2スピン群の各スピンの値をσ 、・・・、σ と表した場合に、
    第2スピン群のi番目のスピンの値σ を反転させたときの前記エネルギーHの差分ΔHを次式から求め、
    Figure 2019216277
    第1スピン群のi番目のスピンの値σ を反転させたときの前記エネルギーHの差分ΔHを次式から求め、
    Figure 2019216277
    u(0<u≦1)を一様乱数とした場合に前記状態遷移が受理される条件を次式に基づき判定する、
    Figure 2019216277
    情報処理方法。
  11. 請求項10に記載の情報処理方法であって、
    前記情報処理装置は、
    前記第2スピン群の次状態を次式により求め、
    Figure 2019216277
    前記第1スピン群の次状態を次式により求める、
    Figure 2019216277
    情報処理方法。
JP2020518279A 2018-05-08 2019-04-26 情報処理装置、演算装置、及び情報処理方法 Active JP6874219B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2018089773 2018-05-08
JP2018089773 2018-05-08
PCT/JP2019/017996 WO2019216277A1 (ja) 2018-05-08 2019-04-26 情報処理装置、演算装置、及び情報処理方法

Publications (2)

Publication Number Publication Date
JPWO2019216277A1 true JPWO2019216277A1 (ja) 2021-02-12
JP6874219B2 JP6874219B2 (ja) 2021-05-19

Family

ID=68468062

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020518279A Active JP6874219B2 (ja) 2018-05-08 2019-04-26 情報処理装置、演算装置、及び情報処理方法

Country Status (3)

Country Link
US (1) US11182157B2 (ja)
JP (1) JP6874219B2 (ja)
WO (1) WO2019216277A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7206476B2 (ja) * 2018-09-14 2023-01-18 富士通株式会社 最適化装置、最適化装置の制御方法及び最適化装置の制御プログラム
JP7248907B2 (ja) * 2019-08-14 2023-03-30 富士通株式会社 最適化装置および最適化装置の制御方法
JP7396024B2 (ja) * 2019-12-20 2023-12-12 日本電気株式会社 情報処理装置、情報処理方法及びプログラム
JP6861309B1 (ja) * 2020-03-11 2021-04-21 株式会社メルカリ システム、情報処理方法及びプログラム
US11656787B2 (en) 2020-04-29 2023-05-23 Hitachi, Ltd. Calculation system, information processing device, and optimum solution search process method
JP7466147B2 (ja) 2020-06-23 2024-04-12 株式会社日立製作所 情報処理システムおよび情報処理方法
JP7357795B2 (ja) 2020-07-30 2023-10-06 株式会社日立製作所 情報処理方法および情報処理システム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160260013A1 (en) * 2015-03-06 2016-09-08 Nokia Technologies Oy Method and apparatus for optimization

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10339466B1 (en) * 2013-09-11 2019-07-02 Google Llc Probabilistic inference in machine learning using a quantum oracle
US10275422B2 (en) * 2013-11-19 2019-04-30 D-Wave Systems, Inc. Systems and methods for finding quantum binary optimization problems
US9946513B2 (en) * 2014-07-09 2018-04-17 Hitachi, Ltd. Semiconductor device and information processing system
JP6021864B2 (ja) * 2014-08-29 2016-11-09 株式会社日立製作所 半導体装置および情報処理装置
JP5922202B2 (ja) 2014-08-29 2016-05-24 株式会社日立製作所 半導体装置、画像セグメンテーション方法、および画像処理装置
WO2016035171A1 (ja) * 2014-09-03 2016-03-10 株式会社日立製作所 半導体集積回路装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160260013A1 (en) * 2015-03-06 2016-09-08 Nokia Technologies Oy Method and apparatus for optimization

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
VICKY CHOI: "Minor-embedding in adiabatic quantum computation: II. Minor-universal graph design", [ONLINE], JPN6021013814, 19 January 2010 (2010-01-19), ISSN: 0004487164 *

Also Published As

Publication number Publication date
US20210117188A1 (en) 2021-04-22
WO2019216277A1 (ja) 2019-11-14
US11182157B2 (en) 2021-11-23
JP6874219B2 (ja) 2021-05-19

Similar Documents

Publication Publication Date Title
JP6874219B2 (ja) 情報処理装置、演算装置、及び情報処理方法
JP7007520B2 (ja) 情報処理装置、演算装置、及び情報処理方法
JP7186797B2 (ja) 量子計算のための方法及びシステム
JP6836529B2 (ja) 計算装置、計算プログラム、記録媒体及び計算方法
JP7206476B2 (ja) 最適化装置、最適化装置の制御方法及び最適化装置の制御プログラム
JP6925546B1 (ja) 演算システム、情報処理装置、および最適解探索処理方法
CN108986872B (zh) 用于大数据电子病历约简的多粒度属性权重Spark方法
US20200090051A1 (en) Optimization problem operation method and apparatus
WO2020196862A1 (ja) 情報処理装置、情報処理システム、情報処理方法、記憶媒体およびプログラム
JP6895415B2 (ja) 計算装置、計算プログラム、記録媒体及び計算方法
JP7219402B2 (ja) 最適化装置、最適化装置の制御方法及び最適化装置の制御プログラム
JP3215351B2 (ja) 配置方式
JP7357795B2 (ja) 情報処理方法および情報処理システム
JP2022094510A (ja) 最適化プログラム、最適化方法及び情報処理装置
WO2021084629A1 (ja) 演算回路、演算装置、情報処理装置およびイジングモデルの基底状態探索方法
JP7444804B2 (ja) 制御方法およびサンプリング装置
JP7470019B2 (ja) 情報処理システム
US20200089475A1 (en) Optimization problem arithmetic method and optimization problem arithmetic apparatus
US20230153376A1 (en) Optimization method, information processing device, and information processing system
US20220308837A1 (en) Optimization method, information processing apparatus, and system using the same
JP2022158010A (ja) 情報処理システム、情報処理方法、及び情報処理プログラム
JP2024049148A (ja) 情報処理方法、及び情報処理装置
WO2022044184A1 (ja) 情報処理システムおよび最適解探索処理方法
WO2023021666A1 (ja) 情報処理装置、量子回路生成方法および量子回路生成プログラム
JP5942998B2 (ja) 線形制約条件生成装置及び方法、半正定値最適化問題求解装置、計量学習装置、並びにコンピュータ・プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200820

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: 20210420

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210421

R150 Certificate of patent or registration of utility model

Ref document number: 6874219

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150