JP2022167230A - Closed path generation apparatus, closed path generation method, and program - Google Patents

Closed path generation apparatus, closed path generation method, and program Download PDF

Info

Publication number
JP2022167230A
JP2022167230A JP2021072896A JP2021072896A JP2022167230A JP 2022167230 A JP2022167230 A JP 2022167230A JP 2021072896 A JP2021072896 A JP 2021072896A JP 2021072896 A JP2021072896 A JP 2021072896A JP 2022167230 A JP2022167230 A JP 2022167230A
Authority
JP
Japan
Prior art keywords
cycle
nodes
edge
solution
quantum annealing
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.)
Pending
Application number
JP2021072896A
Other languages
Japanese (ja)
Inventor
慎司 橋本
Shinji Hashimoto
匡人 中川
Masato Nakagawa
靖侑 坂本
Yasuyuki Sakamoto
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.)
NEC Solution Innovators Ltd
Original Assignee
NEC Solution Innovators 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 NEC Solution Innovators Ltd filed Critical NEC Solution Innovators Ltd
Priority to JP2021072896A priority Critical patent/JP2022167230A/en
Publication of JP2022167230A publication Critical patent/JP2022167230A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Logic Circuits (AREA)

Abstract

To provide a closed path generation apparatus, a closed path generation method, and a program for reducing the time for generating a closed path.SOLUTION: A closed path generation apparatus 50 includes a solution unit 54 which selects a first closed path and a second closed path out of a plurality of closed paths, and causes a quantum annealing machine to solve a problem based on a first Ising model formed by setting a first spin that represents whether to connect two nodes of an edge included in the first closed path to the second closed path and a second spin that represents whether to connect two nodes of an edge included in the second closed path to the first closed path.SELECTED DRAWING: Figure 3

Description

本発明は、閉路を生成する閉路生成装置、閉路生成方法、及びプログラムに関する。 The present invention relates to a circuit generation device, a circuit generation method, and a program for generating a circuit.

組み合わせ最適化問題の一つである巡回セールスマン問題(以降、TSPと記載することがある)を、量子アニーリングを用いて解く場合、良く知られているような、都市数と到達順を変数(スピン)と定義する方法では、都市数n(=1以上の整数)に対してn個の変数(スピン)が必要になるため求解に時間がかかる。 When solving the traveling salesman problem (hereinafter sometimes referred to as TSP), which is one of combinatorial optimization problems, using quantum annealing, the number of cities and the order of arrival are used as variables ( In the method defined as spin), it takes time to find a solution because n2 variables (spins) are required for the number of cities n (=an integer equal to or greater than 1).

関連する技術として特許文献1に開示の技術が提案されている。特許文献1に開示の技術では、まず、ハミルトン閉路問題において与えられたグラフの地点(ノード)ごとに、ノードに連結されたエッジ(二地点間の経路)のグループを生成する。次に、エッジのグループごとに、エッジのグループに含まれるエッジが経路として選択されたか否かを示す二値変数を生成する。次に、二値変数をスピンとする、イジングモデルを生成する。次に、イジングマシンが計算したイジングモデルの解に基づき、ハミルトン閉路問題の解を求めている。 As a related technique, the technique disclosed in Patent Document 1 is proposed. In the technique disclosed in Patent Document 1, first, for each point (node) of a graph given in the Hamiltonian cycle problem, a group of edges (paths between two points) connected to the node is generated. Next, for each edge group, a binary variable is generated that indicates whether an edge included in the edge group was selected as a path. Next, an Ising model is generated in which the binary variable is the spin. Next, based on the solution of the Ising model calculated by the Ising machine, the solution of the Hamiltonian circuit problem is obtained.

国際公開第2020/170410号WO2020/170410

しかしながら、特許文献1の技術を用いた場合でも、一つの閉路が求まるまで繰り返し求解をするため、巡回セールスマン問題において与えられたグラフによっては求解に時間がかかる。 However, even when the technique of Patent Document 1 is used, it takes time to find a solution depending on the graph given in the traveling salesman problem because the solution is repeatedly found until one cycle is found.

一つの側面として、閉路を生成する時間を短縮する、閉路生成装置、閉路生成方法、及びプログラムを提供することを目的とする。 An object of one aspect is to provide a circuit generation device, a circuit generation method, and a program that shorten the time to generate a circuit.

上記目的を達成するため、一つの側面における閉路生成装置は、
複数の閉路の中から第一の閉路と前記第一の閉路に接続する第二の閉路とを選択し、前記第一の閉路に含まれるエッジが有する二つのノードを前記第二の閉路に接続させるかを表す第一のスピンと、前記第二の閉路に含まれるエッジが有する二つのノードを前記第一の閉路に接続させるかを表す第二のスピンとを設定した第一のイジングモデルに基づいて、量子アニーリングマシンに求解させる、求解部
を有することを特徴とする。
In order to achieve the above object, the circuit generation device in one aspect is
A first cycle and a second cycle connected to the first cycle are selected from among a plurality of cycles, and two nodes of edges included in the first cycle are connected to the second cycle. and a second spin representing whether to connect the two nodes of the edge included in the second cycle to the first cycle. The feature is that it has a solution-finding unit that causes a quantum annealing machine to solve based on

また、上記目的を達成するため、一側面における閉路生成方法は、
複数の閉路の中から第一の閉路と前記第一の閉路に接続する第二の閉路とを選択し、前記第一の閉路に含まれるエッジが有する二つのノードを前記第二の閉路に接続させるかを表す第一のスピンと、前記第二の閉路に含まれるエッジが有する二つのノードを前記第一の閉路に接続させるかを表す第二のスピンとを設定した第一のイジングモデルに基づいて、量子アニーリングマシンに求解させる、求解ステップ、
を有することを特徴とする。
Also, in order to achieve the above object, a closed path generation method in one aspect includes:
A first cycle and a second cycle connected to the first cycle are selected from among a plurality of cycles, and two nodes of edges included in the first cycle are connected to the second cycle. and a second spin representing whether to connect the two nodes of the edge included in the second cycle to the first cycle. a solution step that causes a quantum annealing machine to solve based on
characterized by having

さらに、上記目的を達成するため、一側面におけるプログラムは、
コンピュータに、
複数の閉路の中から第一の閉路と前記第一の閉路に接続する第二の閉路とを選択し、前記第一の閉路に含まれるエッジが有する二つのノードを前記第二の閉路に接続させるかを表す第一のスピンと、前記第二の閉路に含まれるエッジが有する二つのノードを前記第一の閉路に接続させるかを表す第二のスピンとを設定した第一のイジングモデルに基づいて、量子アニーリングマシンに求解させる、求解ステップ、
を実行させることを特徴とする。
Furthermore, in order to achieve the above objectives, the program in one aspect is
to the computer,
A first cycle and a second cycle connected to the first cycle are selected from among a plurality of cycles, and two nodes of edges included in the first cycle are connected to the second cycle. and a second spin representing whether to connect the two nodes of the edge included in the second cycle to the first cycle. a solution step that causes a quantum annealing machine to solve based on
is characterized by executing

一つの側面として、閉路を生成する時間を短縮できる。 As one aspect, the time to generate a cycle can be shortened.

図1は、量子アニーリングマシンを有するシステムの一例を示す図である。FIG. 1 is a diagram illustrating an example of a system having a quantum annealing machine. 図2は、巡回セールスマン問題を説明するための図である。FIG. 2 is a diagram for explaining the traveling salesman problem. 図3は、閉路生成装置の一例を説明するための図である。FIG. 3 is a diagram for explaining an example of a circuit generation device. 図4は、不要経路の除外を説明するための図である。FIG. 4 is a diagram for explaining exclusion of unnecessary routes. 図5は、閉路を説明するための図である。FIG. 5 is a diagram for explaining a closed circuit. 図6は、複数の閉路を説明するための図である。FIG. 6 is a diagram for explaining a plurality of closed paths. 図7は、複数の閉路を一つの閉路にする方法を説明するための図である。FIG. 7 is a diagram for explaining a method of making a plurality of closed circuits into one closed circuit. 図8は、補助処理を説明するための図である。FIG. 8 is a diagram for explaining auxiliary processing. 図9は、複数の閉路を一つにする量子アニーリングを説明するための図である。FIG. 9 is a diagram for explaining quantum annealing for making a plurality of cycles into one. 図10は、複数の閉路を一つにする量子アニーリングを説明するための図である。FIG. 10 is a diagram for explaining quantum annealing for making a plurality of cycles into one. 図11は、閉路生成装置(A)(B)の動作の一例を説明するための図である。FIG. 11 is a diagram for explaining an example of the operation of the circuit generators (A) and (B). 図12は、閉路生成装置(A)(C)の動作の一例を説明するための図である。FIG. 12 is a diagram for explaining an example of the operation of the circuit generators (A) and (C). 図13は、閉路生成装置を実現するコンピュータの一例を示す図である。FIG. 13 is a diagram showing an example of a computer that implements the circuit generation device.

はじめに、実施形態の理解を容易にするために、量子アニーリングマシンについて概要を説明する。 First, an overview of the quantum annealing machine is provided to facilitate understanding of the embodiments.

量子アニーリングとは、組み合わせ最適化問題を解くための近似解法である。具体的には、量子アニーリングは、量子効果を制御して、目的関数の最小値を探す問題を解く手法である。 Quantum annealing is an approximate solution method for solving combinatorial optimization problems. Specifically, quantum annealing is a technique for solving the problem of finding the minimum value of an objective function by controlling quantum effects.

量子アニーリングマシンは、例えば、組み合わせ最適化問題などを解くために特化されたハードウェアである。図1は、量子アニーリングマシンを有するシステムの一例を示す図である。 Quantum annealing machines are specialized hardware for solving combinatorial optimization problems, for example. FIG. 1 is a diagram illustrating an example of a system having a quantum annealing machine.

システム1は、例えば、量子アニーリングマシン10、情報処理装置20、端末装置30、ネットワーク40などを用いて構成される。 The system 1 is configured using, for example, a quantum annealing machine 10, an information processing device 20, a terminal device 30, a network 40, and the like.

量子アニーリングマシン10は、量子処理部11(QPU:Quantum processing Unit)、制御部12、読取部13などを有するハードウェアである。 The quantum annealing machine 10 is hardware having a quantum processing unit 11 (QPU: Quantum processing unit), a control unit 12, a reading unit 13, and the like.

量子処理部11は、複数の量子ビットが相互接続された回路である。量子処理部11の回路(又は機器)は、例えば、所定数の量子ビットを接続して構成された複数のユニット・セルと、異なるユニット・セル間の量子ビットを接続するためのカプラとを用いて構築された超電導量子回路などが考えられる。 The quantum processing unit 11 is a circuit in which a plurality of quantum bits are interconnected. The circuit (or device) of the quantum processing unit 11 uses, for example, a plurality of unit cells configured by connecting a predetermined number of quantum bits, and a coupler for connecting the quantum bits between different unit cells. A superconducting quantum circuit constructed by

制御部12は、量子処理部11を制御する回路(又は機器)である。量子処理部11が超電導量子回路である場合、制御部12は、情報処理装置20から送信された制御信号に基づいて、量子処理部11に印加する局所磁場の制御をする。局所磁場は、例えば、マイクロ波を用いて制御する。 The control unit 12 is a circuit (or device) that controls the quantum processing unit 11 . If the quantum processing unit 11 is a superconducting quantum circuit, the control unit 12 controls the local magnetic field applied to the quantum processing unit 11 based on the control signal transmitted from the information processing device 20 . The local magnetic field is controlled using, for example, microwaves.

読取部13は、量子処理部11の量子ビットの状態(スピン)を読み取る回路(又は機器)である。読取部13は、量子アニーリングが終了するたびに量子ビットの状態を読み取り、量子ビットの状態を表す状態情報を情報処理装置20に送信する。 The reading unit 13 is a circuit (or device) that reads the state (spin) of the quantum bit of the quantum processing unit 11 . The reading unit 13 reads the state of the quantum bit each time quantum annealing ends, and transmits state information representing the state of the quantum bit to the information processing device 20 .

情報処理装置20は、ネットワーク40を介して端末装置30と接続されている。また、情報処理装置20は、量子アニーリングマシン10と接続されている。 The information processing device 20 is connected to the terminal device 30 via the network 40 . The information processing device 20 is also connected to the quantum annealing machine 10 .

具体的には、情報処理装置20は、局所磁場を制御するための制御信号を、制御部12へ送信する。情報処理装置20は、量子ビットの状態を表す状態情報を、読取部13から受信する。 Specifically, the information processing device 20 transmits a control signal for controlling the local magnetic field to the control unit 12 . The information processing device 20 receives state information representing the state of the quantum bit from the reading unit 13 .

なお、図1では、利用者が端末装置30を用いて、ネットワーク40を介し、情報処理装置20を操作する構成が示されているが、利用者が情報処理装置20を直接操作してもよい。 Note that FIG. 1 shows a configuration in which the user operates the information processing device 20 using the terminal device 30 via the network 40, but the user may directly operate the information processing device 20. .

情報処理装置20は、例えば、CPU(Central Processing Unit)、又はFPGA(Field-Programmable Gate Array)などのプログラマブルなデバイス、又はGPU(Graphics Processing Unit)、又はそれらのうちのいずれか一つ以上を搭載した回路、又はサーバコンピュータなどである。 The information processing device 20 is, for example, a CPU (Central Processing Unit), a programmable device such as an FPGA (Field-Programmable Gate Array), a GPU (Graphics Processing Unit), or one or more of them. or a server computer.

端末装置30は、ネットワーク40を介して情報処理装置20と接続されている。端末装置30は、例えば、CPU、又はFPGAなどのプログラマブルなデバイス、又はGPU、又はそれらのうちのいずれか一つ以上を搭載した回路、又はパーソナルコンピュータ、又はモバイル端末などの情報処理装置である。 The terminal device 30 is connected to the information processing device 20 via the network 40 . The terminal device 30 is, for example, a programmable device such as a CPU or FPGA, or a GPU, or a circuit equipped with one or more of them, or an information processing device such as a personal computer or a mobile terminal.

ネットワーク40は、例えば、インターネット、LAN(Local Area Network)、専用回線、電話回線、企業内ネットワーク、移動体通信網、ブルートゥース(登録商標)、WiFi(Wireless Fidelity)などの通信回線を用いて構築された一般的なネットワークである。 The network 40 is constructed using communication lines such as the Internet, a LAN (Local Area Network), a dedicated line, a telephone line, an in-house network, a mobile communication network, Bluetooth (registered trademark), and WiFi (Wireless Fidelity). general network.

次に、量子アニーリングマシンにより組み合わせ最適化問題を解く方法について説明する。量子アニーリングマシンにより組み合わせ最適化問題を解くには、まず、対象とする組み合わせ最適化問題をイジングモデル、又はQUBO(Quadratic Unconstrained Binary Optimization)などで表現する。 Next, a method of solving a combinatorial optimization problem by a quantum annealing machine will be explained. To solve a combinatorial optimization problem with a quantum annealing machine, first, the target combinatorial optimization problem is represented by an Ising model, QUBO (Quadratic Unconstrained Binary Optimization), or the like.

イジングモデルは、例えば、数1に示したハミルトニアンH(σ)などで表すことができる。ハミルトニアンH(σ)とは系全体のエネルギーを表す。 The Ising model can be represented by the Hamiltonian H(σ) shown in Equation 1, for example. The Hamiltonian H(σ) represents the energy of the entire system.

Figure 2022167230000002
Figure 2022167230000002

ijは、隣接する量子ビット間の結合強度を表す。結合強度は、例えば、隣接する量子ビットを結合している結合器に外部から磁束を印可することにより制御される。 J ij represents the coupling strength between adjacent qubits. The coupling strength is controlled, for example, by externally applying magnetic flux to the couplers coupling adjacent qubits.

は、量子ビットに外部から印可される局所磁場を表す。局所磁場の印可は、例えば、外部からマイクロ波を注入することにより実現する。 h i represents the local magnetic field externally applied to the qubit. Application of the local magnetic field is achieved, for example, by injecting microwaves from the outside.

次に、組み合わせ最適化問題を量子アニーリングマシンに投入する。具体的には、イジングモデル、又はQUBOを、量子処理部11に構成されている量子ビットトポロジーにマイナー埋め込みをする。マイナー埋め込みは、イジングスピン(変数)を量子ビットへマッピングする処理である。 Next, we put the combinatorial optimization problem into a quantum annealing machine. Specifically, the Ising model or QUBO is minor-embedded into the quantum bit topology configured in the quantum processing unit 11 . Minor embedding is the process of mapping Ising spins (variables) to qubits.

次に、量子アニーリングマシンは量子アニーリングを開始する。具体的には、量子アニーリングマシンの制御部12が、量子処理部11に局所磁場を印加した後、局所磁場を時間をかけて弱めていく。その結果、最終的に、ハミルトニアンが最小の状態に収束する。 The quantum annealing machine then begins quantum annealing. Specifically, the control unit 12 of the quantum annealing machine applies a local magnetic field to the quantum processing unit 11 and then weakens the local magnetic field over time. As a result, the Hamiltonian finally converges to the minimum state.

次に、量子アニーリングマシンの読取部13は、量子処理部11の量子ビットの状態を読み取る。 Next, the reading unit 13 of the quantum annealing machine reads the states of the quantum bits of the quantum processing unit 11 .

ただし、ハミルトニアンが最小の状態に収束しないこともあるので、上述したアニーリングを複数回繰り返して解を取得することが好適である。なお、ハミルトニアンが最小の状態に収束しない理由は、量子処理部11の回路がノイズの影響を受け易く安定しないためである。 However, since the Hamiltonian may not converge to the minimum state, it is preferable to obtain the solution by repeating the above-described annealing multiple times. The reason why the Hamiltonian does not converge to the minimum state is that the circuit of the quantum processing unit 11 is susceptible to noise and is not stable.

次に、TSP(巡回セールスマン問題)を量子アニーリングマシンで解く方法について説明する。TSPは、セールスマンがすべての都市を一回だけ訪れ、出発点(出発した都市)に戻る場合に、移動距離が最小になる経路を求める問題である。 Next, a method of solving the TSP (Traveling Salesman Problem) with a quantum annealing machine will be described. TSP is the problem of finding the route that minimizes the distance traveled if the salesman visits every city only once and returns to the starting point (the starting city).

図2を用いて(1)(2)に示すようにスピン(変数:イジングスピン)を定義した場合について説明する。図2は、巡回セールスマン問題を説明するための図である。図2の例では、五つの都市(都市1から都市5:五つのノード)を巡回する場合に、二つの都市間の経路(エッジ)に移動コストを与えて、五つの都市をすべて巡回した移動距離が最小になる経路を求める。 A case where the spin (variable: Ising spin) is defined as shown in (1) and (2) will be described with reference to FIG. FIG. 2 is a diagram for explaining the traveling salesman problem. In the example of FIG. 2, when traveling through five cities (city 1 to city 5: five nodes), a travel cost is given to the route (edge) between the two cities, and a travel that tours all five cities Find the path that minimizes the distance.

(1)ある都市をどの順番に訪れるかという問題において、スピン(変数)を都市それぞれと定義する。その場合、ある都市にある順番で訪れたときを1、それ以外を0とするので、都市数がn個である場合、スピン数はn個となる。したがって、図2の例では、都市数が5個であるので、スピン数は25個となる。 (1) Define a spin (variable) for each city in the question of what order to visit a certain city. In that case, when a city is visited in a certain order, it is 1, and otherwise it is 0. Therefore, if the number of cities is n , the number of spins is n2. Therefore, in the example of FIG. 2, since the number of cities is 5, the number of spins is 25.

このように(1)の例では、スピン数は都市数の二乗個必要になるので、訪れる都市数が多くなるとスピン数が指数関数的に増加する。そのため、近似解を求解する時間がかかる。そこで、(2)に示すようなスピンの定義をする方法が提案されている。 Thus, in example (1), the number of spins required is the square of the number of cities, so the number of spins increases exponentially as the number of cities visited increases. Therefore, it takes time to find the approximate solution. Therefore, a method of defining spin as shown in (2) has been proposed.

(2)すべての都市を一回だけ訪れるようにするには、どのような経路を選択すれば最適かという組み合わせ問題として、スピン(変数)を二つの都市間の経路それぞれと定義する。その場合、都市数がn個である場合にはスピン数は個となる。したがって、図2の例では、都市数が5個であるので、スピン数は10個となる。 (2) Define a spin (variable) as each route between two cities as a combinatorial problem of what kind of route should be selected in order to visit all cities only once. In that case, when the number of cities is n, the number of spins is n C 2 . Therefore, in the example of FIG. 2, since the number of cities is 5, the number of spins is 10.

このように(2)の例では、経路をスピンとして定義してスピン数を削減しているため、(1)の求解時間より、(2)の求解時間を短縮することができる。 Thus, in the example (2), the path is defined as a spin and the number of spins is reduced, so the solution-seeking time of (2) can be shortened from the solution-seeking time of (1).

(実施形態)
次に、(2)の求解時間より、更に、求解時間を短縮する実施形態について説明をする。具体的には、求解時間を短縮するために、あらかじめ不要な経路を除外してから、量子アニーリングマシン10に量子アニーリングを実行させる。
(embodiment)
Next, an embodiment in which the solution-seeking time is further shortened from the solution-seeking time of (2) will be described. Specifically, in order to shorten the solution-finding time, the quantum annealing machine 10 is caused to perform quantum annealing after excluding unnecessary paths in advance.

実施形態について図面を参照して説明する。なお、以下で説明する図面において、同一の機能又は対応する機能を有する要素には同一の符号を付し、その繰り返しの説明は省略することもある。 Embodiments will be described with reference to the drawings. In the drawings described below, elements having the same or corresponding functions are denoted by the same reference numerals, and repeated description thereof may be omitted.

[装置構成]
求解時間を短縮するための閉路生成装置について説明する。閉路生成装置50は、情報処理装置20又は端末装置30に構築する。又は、閉路生成装置50の機能を、情報処理装置20と端末装置30に分散させてもよい。
[Device configuration]
A cycle generating device for shortening the solution-finding time will be described. The circuit generation device 50 is built in the information processing device 20 or the terminal device 30 . Alternatively, the functions of the circuit generation device 50 may be distributed between the information processing device 20 and the terminal device 30 .

閉路生成装置50は、図3に示すように、取得部51と、抽出部52と、イジングモデル生成部53と、求解部54と、経路生成部55とを有する。図3は、閉路生成装置の一例を説明するための図である。 The cycle generation device 50 includes an acquisition unit 51, an extraction unit 52, an Ising model generation unit 53, a solution determination unit 54, and a route generation unit 55, as shown in FIG. FIG. 3 is a diagram for explaining an example of a circuit generation device.

取得部51は、TSPにより与えられたグラフを表すグラフ情報を取得する。グラフ情報(グラフ)は、都市(地点)を表すノード情報(ノード)と、二つのノード間の経路を表すエッジ情報(エッジ)と、経路それぞれに付与されたコスト情報(コスト)とが関連付けられた情報である。 The acquisition unit 51 acquires graph information representing a graph provided by the TSP. Graph information (graph) is associated with node information (node) representing a city (point), edge information (edge) representing a route between two nodes, and cost information (cost) assigned to each route. information.

コスト情報は、二つのノード間の移動コストを表す情報である。移動コストは、例えば、距離などである。ただし、移動コストは距離に限定されない。 Cost information is information representing the cost of traveling between two nodes. The movement cost is, for example, the distance. However, movement costs are not limited to distance.

抽出部52は、TSPにおいて与えられたグラフに含まれるノードを順次選択し、選択したノードごとに、選択したノードとそれ以外のノードで表されたエッジに関連付けられたコストを参照し、あらかじめ設定された順位以下のコストに対応するエッジを抽出する。 The extraction unit 52 sequentially selects the nodes included in the graph given in the TSP, and for each selected node, refers to the cost associated with the edge represented by the selected node and other nodes, and presets Extract the edge corresponding to the cost less than or equal to the given rank.

具体的には、まず、抽出部52は、取得部51からグラフを取得する。次に、抽出部52は、取得したグラフに含まれるノードを選択する。次に、抽出部52は、選択したノードと、選択したノード以外のノードで表されたエッジを抽出する。 Specifically, first, the extraction unit 52 acquires the graph from the acquisition unit 51 . Next, the extraction unit 52 selects nodes included in the obtained graph. Next, the extraction unit 52 extracts edges represented by the selected node and nodes other than the selected node.

次に、抽出部52は、抽出したエッジのうち、エッジに関連付けられたコストがあらかじめ設定された順位以下のエッジを抽出する。すなわち、抽出部52は、コストの値が小さいエッジを、所定数抽出する。 Next, the extracting unit 52 extracts edges whose costs associated with the edges are lower than or equal to a preset rank among the extracted edges. That is, the extraction unit 52 extracts a predetermined number of edges with small cost values.

抽出部52は、上述した処理を、グラフに含まれるすべてのノードについて実行して、ノードごとに、所定数のエッジを抽出する。 The extraction unit 52 executes the above-described processing for all nodes included in the graph, and extracts a predetermined number of edges for each node.

なお、順位は、実験、シミュレーションにより決定する。順位は、例えば、下位25[%]のコスト値を取得することなどが考えられる。 The ranking is determined by experiments and simulations. For example, it is conceivable to obtain the lowest 25[%] cost value.

ただし、順位は25[%]に限定されるものではない。また、順位は、適時変更してもよい。順位の変更については後述する。 However, the rank is not limited to 25[%]. Also, the order may be changed as needed. A change in ranking will be described later.

具体的に、図4を用いて、抽出処理(不要経路を除外する処理)について説明する。図4は、不要経路の除外を説明するための図である。 Specifically, with reference to FIG. 4, extraction processing (processing for excluding unnecessary routes) will be described. FIG. 4 is a diagram for explaining exclusion of unnecessary routes.

図4の例は、都市1から都市nそれぞれについて、a個の都市(ノード)が抽出されたことを示している。すなわち、都市1から都市nそれぞれについて、a個の経路(エッジ)が抽出されている。例えば、都市1の場合、都市1と都市2、都市1と都市4、・・・都市1と都市10で表される経路(エッジ)が、コストが小さい順にa個抽出されたことを示している。 The example of FIG. 4 shows that a cities (nodes) are extracted for each of cities 1 to n. That is, a routes (edges) are extracted for each of cities 1 to n. For example, in the case of city 1, a paths (edges) represented by cities 1 and 2, cities 1 and 4, . there is

イジングモデル生成部53は、抽出したエッジをスピン(変数)としたイジングモデル(第二のイジングモデル)又はQUBOを生成する。具体的には、イジングモデル生成部53は、数2に示すようなイジングモデルを生成する。なお、イジングモデルは手動で生成してもよい。 The Ising model generation unit 53 generates an Ising model (second Ising model) or QUBO using the extracted edge as a spin (variable). Specifically, the Ising model generation unit 53 generates an Ising model as shown in Equation (2). Note that the Ising model may be generated manually.

Figure 2022167230000003
Figure 2022167230000003

求解部54は、生成したイジングモデルに基づいて、量子アニーリングマシン10に求解させる。 The solving unit 54 causes the quantum annealing machine 10 to solve based on the generated Ising model.

具体的には、まず、求解部54は、イジングモデル生成部53から数2に示したイジングモデルを取得する。次に、求解部54は、取得したイジングモデルに基づいて、量子アニーリングマシン10の量子処理部11を制御するための制御情報を生成する。その後、求解部54は、制御情報を含む制御信号を、制御部12に送信する。 Specifically, first, the solution obtaining unit 54 acquires the Ising model shown in Equation 2 from the Ising model generating unit 53 . Next, the solution finding unit 54 generates control information for controlling the quantum processing unit 11 of the quantum annealing machine 10 based on the acquired Ising model. After that, the solution seeking unit 54 transmits a control signal including control information to the control unit 12 .

量子処理部11が超電導量子回路である場合、制御部12は、受信した制御信号に基づいて、量子処理部11に印加する局所磁場を制御する。 When the quantum processing unit 11 is a superconducting quantum circuit, the control unit 12 controls the local magnetic field applied to the quantum processing unit 11 based on the received control signal.

詳細には、求解部54は、まず、数2に示したイジングモデルに基づいて、量子アニーリングマシン10の量子処理部11に構成されている量子ビットトポロジーに対してマイナー埋め込みをするための指示を、量子アニーリングマシン10の制御部12にする。 Specifically, the solution-finding unit 54 first issues an instruction for minor embedding to the quantum bit topology configured in the quantum processing unit 11 of the quantum annealing machine 10 based on the Ising model shown in Equation 2. , to the controller 12 of the quantum annealing machine 10 .

求解部54は、量子アニーリングマシン10に指示するため、数2のハミルトニアンの式を展開し、展開後得られた各項のうち、一次項又は同じスピンから成る二次項の係数をスピンに係るバイアス、別々のスピンから成る二次項の係数をスピン間の相互作用とする。このとき、ハミルトニアンがQUBOであればイジングモデルへの変換を行い、量子アニーリングマシンに対してパラメータを設定する。なお、QUBOからイジングモデルへの変換が可能であることは証明されている。 In order to instruct the quantum annealing machine 10, the solving unit 54 expands the Hamiltonian equation of Equation 2, and among the terms obtained after expansion, the coefficients of the first-order term or the second-order term composed of the same spin are set to the bias related to the spin. , the coefficient of the quadratic term consisting of separate spins is the interaction between the spins. At this time, if the Hamiltonian is QUBO, conversion to the Ising model is performed, and parameters are set for the quantum annealing machine. It has been proved that QUBO can be converted to the Ising model.

次に、求解部54は、制御部12に対して、量子処理部11に局所磁場を印加させる指示をし、その後、局所磁場を時間かけて弱めていくように指示をする。その結果、最終的に、数2のハミルトニアンHは最小の状態に収束する。 Next, the solution-seeking unit 54 instructs the control unit 12 to apply a local magnetic field to the quantum processing unit 11, and then instructs the control unit 12 to weaken the local magnetic field over time. As a result, the Hamiltonian H of Equation 2 finally converges to the minimum state.

経路生成部55は、量子ビットの状態を表す状態情報を用いて閉路を生成する。具体的には、まず、経路生成部55は、量子アニーリングマシンの読取部13から状態情報を取得する。次に、経路生成部55は、状態情報に基づいて、閉路を表す閉路情報を生成する。 The path generation unit 55 generates a cycle using state information representing the state of the quantum bit. Specifically, first, the path generation unit 55 acquires state information from the reading unit 13 of the quantum annealing machine. Next, the route generator 55 generates closed path information representing closed paths based on the state information.

例えば、経路生成部55は、図5に示すような閉路を生成する。図5は、閉路を説明するための図である。図5の例は、17個の都市(ノード)を最短距離で巡回する閉路を表している。 For example, the path generator 55 generates a closed path as shown in FIG. FIG. 5 is a diagram for explaining a closed circuit. The example in FIG. 5 represents a cycle that circulates 17 cities (nodes) in the shortest distance.

閉路情報は、閉路に含まれる都市間の接続状態を表す情報である。図5の例では、閉路情報は、都市1と都市2の経路、都市2と都市3の経路、・・・、都市17と都市1の経路が接続されていることを表す情報である。 The circuit information is information representing the connection state between cities included in the circuit. In the example of FIG. 5, the circuit information is information indicating that the route between cities 1 and 2, the route between cities 2 and 3, . . . , the routes between cities 17 and 1 are connected.

上述したように、実施形態においては、あらかじめコストの小さいエッジを抽出し、抽出したエッジをスピンとして定義し、量子アニーリングマシン10を用いて量子アニーリングを実行させるので、求解時間を短縮することができる。 As described above, in the embodiment, an edge with a low cost is extracted in advance, the extracted edge is defined as a spin, and quantum annealing is performed using the quantum annealing machine 10. Therefore, the solution-finding time can be shortened. .

言い換えれば、不要と推定されたエッジを除外して、スピンの数を削減するので、求解時間を短縮することができる。 In other words, edges estimated to be unnecessary are excluded to reduce the number of spins, thereby shortening the solution-finding time.

ところが、上述した実施形態においては、次の(A)(B)(C)に示すような事象が発生する。 However, in the above-described embodiment, the following events (A), (B), and (C) occur.

(A)あらかじめ設定された順位により抽出したエッジをスピンとした場合に、量子アニーリングマシン10で求解できないことがある。 (A) The quantum annealing machine 10 may not be able to find a solution when the spin is the edge extracted according to the order set in advance.

そこで、抽出部52は、求解できない場合、あらかじめ設定された順位を変更する。具体的には、まず、抽出部52は、求解部54から求解できなかったことを表すエラー情報を取得する。次に、抽出部52は、抽出するエッジの数が多くなるように、順位を変更する。例えば、ノードがn個である場合、最低でも、1/n*100[%]は増加させる。 Therefore, the extraction unit 52 changes the preset order when the solution cannot be obtained. Specifically, first, the extracting unit 52 acquires error information indicating that the solution could not be obtained from the solution obtaining unit 54 . Next, the extraction unit 52 changes the order so that the number of edges to be extracted increases. For example, if the number of nodes is n, at least 1/n*100[%] is increased.

次に、抽出部52は、順位を変更した後、ノードごとに、再度エッジを抽出する。次に、イジングモデル生成部53は、新たに抽出したエッジをスピンとして、新たにイジングモデルを生成する。その後、求解部54は、生成した新たなイジングモデルに基づいて、量子アニーリングマシン10に求解させる。 Next, after changing the ranking, the extraction unit 52 extracts edges again for each node. Next, the Ising model generation unit 53 generates a new Ising model using the newly extracted edge as a spin. After that, the solving unit 54 causes the quantum annealing machine 10 to solve based on the generated new Ising model.

(B)数2に示したハミルトニアンHには、閉路が一つになるようなエッジの組み合わせを求める制約式が含まれていないため、複数の閉路が求解されることがある。例えば、図6に示すように複数の閉路が生成されることがある。図6は、複数の閉路を説明するための図である。 (B) Since the Hamiltonian H shown in Equation 2 does not include a constraint expression for obtaining a combination of edges that makes one cycle, multiple cycles may be solved. For example, multiple cycles may be generated as shown in FIG. FIG. 6 is a diagram for explaining a plurality of closed paths.

そこで、経路生成部55は、複数の閉路が求められた場合、複数の閉路を用いて、コストの合計が最小となる一つの閉路を生成する。具体的には、経路生成部55は、複数の閉路のうち最も多くノードを含む閉路(大閉路)に、大閉路以外の小閉路を順次接続させる。例えば、経路生成部55は、図6に示した複数の閉路を、図5に示した一つの閉路にする。 Therefore, when a plurality of closed paths are obtained, the path generation unit 55 uses the plurality of closed paths to generate one closed path that minimizes the total cost. Specifically, the path generation unit 55 sequentially connects minor cycles other than the major cycle to the cycle (major cycle) that includes the most nodes among the plurality of cycles. For example, the path generation unit 55 converts the plurality of closed paths shown in FIG. 6 into one closed path shown in FIG.

まず、経路生成部55は、小閉路を選択し、選択した小閉路のノードごとに、大閉路のノードそれぞれとの距離を求める。次に、経路生成部55は、求めた距離に基づいてノード同士を接続する。 First, the path generation unit 55 selects a minor cycle, and obtains the distance between each node of the selected minor cycle and each node of the major cycle. Next, the route generator 55 connects the nodes based on the obtained distance.

図7は、複数の閉路を一つの閉路にする方法を説明するための図である。図7Aの例では、まず、経路生成部55は、都市10、11、12を有する小閉路を選択する。次に、経路生成部55は、選択した小閉路と、都市5から都市9及び都市13から都市17を有する大閉路とを一つの閉路にする。 FIG. 7 is a diagram for explaining a method of making a plurality of closed circuits into one closed circuit. In the example of FIG. 7A, first, the route generator 55 selects a minor cycle having cities 10, 11, and 12. In the example of FIG. Next, the route generation unit 55 makes the selected minor cycle and the major cycle having cities 5 to 9 and cities 13 to 17 into one cycle.

例えば、経路生成部55は、小閉路の都市10、11、12それぞれについて、大閉路の都市5から都市9及び都市13から都市17との距離を求める。その結果、経路生成部55は、都市10と都市9の距離、及び、都市12と都市13の距離が、他に求めた距離より短いので、図7Bに示すように、都市10と都市9、都市12と都市13を接続して、新たに大閉路を生成する。 For example, the route generation unit 55 obtains the distances from the cities 5 to 9 and from the cities 13 to 17 in the major cycle for each of the cities 10, 11, and 12 in the minor cycles. As a result, since the distance between cities 10 and 9 and the distance between cities 12 and 13 are shorter than the other distances obtained, the route generation unit 55 determines that the distances between cities 10 and 9, as shown in FIG. 7B. Connect the city 12 and the city 13 to generate a new great cycle.

次に、経路生成部55は、都市1、2、3、4を有する小閉路を選択し、選択した小閉路と、都市5から都市17を有する大閉路とを一つの閉路にする。 Next, the route generator 55 selects the minor cycles having cities 1, 2, 3, and 4, and combines the selected minor cycles and the major cycles having cities 5 to 17 into one cycle.

例えば、経路生成部55は、小閉路の都市1、2、3、4それぞれについて、大閉路の都市5から都市17との距離を求める。その結果、経路生成部55は、都市1と都市17の距離、及び、都市4と都市5の距離が、他に求めた距離より短いので、図7Cに示すよ
うに、都市1と都市17、都市4と都市5を接続して、新たに大閉路を生成する。
For example, the route generation unit 55 obtains the distances from the cities 5 to 17 of the major cycle for each of the cities 1, 2, 3, and 4 of the minor cycles. As a result, since the distance between city 1 and city 17 and the distance between city 4 and city 5 are shorter than the other distances obtained, the route generation unit 55 generates the distance between city 1 and city 17, and the distance between city 1 and city 17, as shown in FIG. 7C. Connect city 4 and city 5 to generate a new great cycle.

ただし、都市3と都市5の距離は、都市1と都市17の距離より短いが、都市5は既に選ばれているので、都市3と都市5は選択されない。 However, although the distance between cities 3 and 5 is shorter than the distance between cities 1 and 17, cities 3 and 5 are not selected because city 5 has already been selected.

なお、すでに数2に示したハミルトニアンHの制約により、経路生成部55でコストが最小となるような閉路を求めており、各閉路内では順序を入れ替える必要はない。よって、小閉路を大閉路に接続させる際に追加となるコストが最小となる組み合わせを求める問題に帰着させることで、上述した複数の閉路を一つの閉路にする処理にかかる計算量は少なく、短時間で求めることができる。 Note that the path generation unit 55 obtains a cycle that minimizes the cost due to the constraints of the Hamiltonian H already shown in Equation 2, and it is not necessary to change the order within each cycle. Therefore, by reducing the problem of finding a combination that minimizes the additional cost when connecting a minor cycle to a major cycle, the amount of calculation required for the above-described process of combining a plurality of cycles into one cycle is small and short. can be obtained in time.

ところが、上述した方法により大閉路を生成した場合、最短経路でないことがある。そこで、さらに精度を上げるために、経路生成部55は2―opt法を用いた補助処理を実行する。補助処理は、二つの経路を順次選択し、選択した二つの経路(エッジ)の接続をつなぎ直し、大閉路が短くなるなら、つなぎ直した閉路を採用する。 However, when a great cycle is generated by the method described above, it may not be the shortest path. Therefore, in order to further improve accuracy, the route generation unit 55 executes auxiliary processing using the 2-opt method. The auxiliary process sequentially selects two paths, reconnects the connections of the two selected paths (edges), and if the great cycle becomes shorter, adopts the reconnected cycle.

また、補助処理の終了は、つなぎ直しても、大閉路が短くならない場合に補助処理を終了する。 Further, the auxiliary processing is ended when the great cycle is not shortened even by reconnecting.

図8は、補助処理を説明するための図である。例えば、図8Aに示すように、都市16と都市14の経路(矢印)と、都市13と都市15の経路(矢印)が選択された場合、図8Bに示すように、都市16と都市14の経路を都市16と都市15の経路に入れ替える。また、都市13と都市15の経路を都市13と都市14の経路に入れ替える。 FIG. 8 is a diagram for explaining auxiliary processing. For example, as shown in FIG. 8A, when the route (arrow) between cities 16 and 14 and the route (arrow) between cities 13 and 15 are selected, as shown in FIG. The route is switched to the route of city 16 and city 15. Also, the route between cities 13 and 15 is replaced with the route between cities 13 and 14 .

この入れ替えの結果、大閉路が短くなるなら、入れ替えた大閉路を採用する。このように上述した入れ替え処理を繰り返し、大閉路が短くならない場合(改善がなくなった場合)に補助処理を停止する。その結果、図8Cに示すような大閉路が得られる。 If the great cycle becomes shorter as a result of this replacement, the replaced great cycle is adopted. In this way, the replacement process described above is repeated, and the auxiliary process is stopped when the great cycle is not shortened (when there is no improvement). As a result, a large cycle is obtained as shown in FIG. 8C.

このように、補助処理を実行することにより、上述した複数の閉路を一つの閉路(大閉路)にした場合でも、大閉路をより良い近似解となる経路を求めることができる。 By executing the auxiliary process in this way, even when the plurality of cycles described above are converted into one cycle (great cycle), it is possible to obtain a route that provides a better approximate solution to the great cycle.

(C)上述した(B)の方法(全探索を用いた処理)はノード数が少ない場合に有効である。しかしながら、ノード数が多くなると(B)の方法のように全探索をした場合には、閉路を生成する時間が増大する。 (C) Method (B) described above (processing using exhaustive search) is effective when the number of nodes is small. However, when the number of nodes increases, the time required to generate a cycle increases when exhaustive search is performed as in method (B).

そこで、複数の閉路を一つにする問題において、扱うノード数が多い場合には、閉路を接続する組み合わせの中から最適な接続点(ノード)を量子アニーリングにより求解し、求解した結果に基づいて複数の閉路を一つの閉路にする。その後、(B)の方法と同様、補助処理(2―opt法)を用いて、閉路をより短くなるような経路に改善する。 Therefore, in the problem of combining multiple cycles into one, if the number of nodes to be handled is large, the optimal connection point (node) is solved by quantum annealing from among the combinations that connect the cycles, and based on the result of solving Make multiple cycles into one cycle. After that, similar to the method (B), auxiliary processing (2-opt method) is used to improve the cycle to a shorter path.

(C)の方法において、まず、イジングモデル生成部53は、複数の閉路の中から最も多くノードを含む大閉路(第一の閉路)と、大閉路に接続する大閉路以外の小閉路(第二の閉路)とを選択する。 In the method (C), first, the Ising model generation unit 53 generates a large cycle (first cycle) including the largest number of nodes among a plurality of cycles, and small cycles other than the large cycle connected to the large cycle (second two cycles) and .

次に、イジングモデル生成部53は、大閉路に含まれるエッジが有する二つのノードを小閉路に接続させるか否かを表すスピン(変数:第一のスピン)と、小閉路に含まれるエッジが有する二つのノードを大閉路に接続させるか否かを表すスピン(変数:第二のスピン)とを設定したイジングモデル(第一のイジングモデル)又はQUBOを生成する。 Next, the Ising model generation unit 53 generates a spin (variable: first spin) representing whether or not to connect two nodes of the edge included in the major cycle to the minor cycle, and the edge included in the minor cycle. An Ising model (first Ising model) or QUBO, which is set with a spin (variable: second spin) indicating whether or not to connect two nodes having a large cycle, is generated.

具体的には、イジングモデル生成部53は、数3に示すようなイジングモデルを生成する。なお、イジングモデルは手動で生成してもよい。 Specifically, the Ising model generation unit 53 generates an Ising model as shown in Equation (3). Note that the Ising model may be generated manually.

Figure 2022167230000004
Figure 2022167230000004

求解部54は、生成したイジングモデルに基づいて、量子アニーリングマシン10に求解させる。 The solving unit 54 causes the quantum annealing machine 10 to solve based on the generated Ising model.

具体的には、まず、求解部54は、イジングモデル生成部53から数3に示したイジングモデルを取得する。次に、求解部54は、取得したイジングモデルに基づいて、量子アニーリングマシン10の量子処理部11を制御するための制御情報を生成する。その後、求解部54は、制御情報を含む制御信号を、制御部12に送信する。 Specifically, first, the solution obtaining unit 54 acquires the Ising model shown in Equation 3 from the Ising model generating unit 53 . Next, the solution finding unit 54 generates control information for controlling the quantum processing unit 11 of the quantum annealing machine 10 based on the acquired Ising model. After that, the solution seeking unit 54 transmits a control signal including control information to the control unit 12 .

量子処理部11が超電導量子回路である場合、制御部12は、受信した制御信号に基づいて、量子処理部11に印加する局所磁場を制御する。 When the quantum processing unit 11 is a superconducting quantum circuit, the control unit 12 controls the local magnetic field applied to the quantum processing unit 11 based on the received control signal.

詳細には、求解部54は、まず、数3に示したイジングモデルに基づいて、量子アニーリングマシン10の量子処理部11に構成されている量子ビットトポロジーに対してマイナー埋め込みをするための指示を、量子アニーリングマシン10の制御部12にする。 Specifically, the solution-finding unit 54 first issues an instruction for minor embedding to the quantum bit topology configured in the quantum processing unit 11 of the quantum annealing machine 10 based on the Ising model shown in Equation 3. , to the controller 12 of the quantum annealing machine 10 .

求解部54は、量子アニーリングマシン10に指示するため、数3のハミルトニアンの式を展開し、展開後得られた各項のうち、一次項又は同じスピンから成る二次項の係数をスピンに係るバイアス、別々のスピンから成る二次項の係数をスピン間の相互作用とする。このとき、ハミルトニアンがQUBOであればイジングモデルへの変換を行い、量子アニーリングマシンに対してパラメータを設定する。 In order to instruct the quantum annealing machine 10, the solving unit 54 expands the Hamiltonian equation of Equation 3, and among the terms obtained after expansion, the coefficients of the first-order term or the second-order term consisting of the same spin are set to the bias related to the spin. , the coefficient of the quadratic term consisting of separate spins is the interaction between the spins. At this time, if the Hamiltonian is QUBO, conversion to the Ising model is performed, and parameters are set for the quantum annealing machine.

次に、求解部54は、制御部12に対して、量子処理部11に局所磁場を印加させる指示をし、その後、局所磁場を時間かけて弱めていくように指示をする。その結果、最終的に、数2のハミルトニアンHは最小の状態に収束する。 Next, the solution-seeking unit 54 instructs the control unit 12 to apply a local magnetic field to the quantum processing unit 11, and then instructs the control unit 12 to weaken the local magnetic field over time. As a result, the Hamiltonian H of Equation 2 finally converges to the minimum state.

次に、経路生成部55は、量子ビットの状態を表す状態情報を用いて閉路を生成する。具体的には、まず、経路生成部55は、量子アニーリングマシンの読取部13から状態情報を取得する。次に、経路生成部55は、状態情報に基づいて、閉路を表す閉路情報を生成する。 Next, the path generation unit 55 generates a closed path using the state information representing the state of the quantum bit. Specifically, first, the path generation unit 55 acquires state information from the reading unit 13 of the quantum annealing machine. Next, the route generator 55 generates closed path information representing closed paths based on the state information.

図9、図10を用いて閉路の生成について説明する。図9、図10は、複数の閉路を一つにする量子アニーリングを説明するための図である。 Generation of a closed path will be described with reference to FIGS. 9 and 10. FIG. 9 and 10 are diagrams for explaining quantum annealing for making a plurality of cycles into one.

まず、図9に示した三つの閉路が生成されたものとする。図9の例では、三つの閉路の中から最も多くノードを含む大閉路と、大閉路以外の二つの小閉路が生成されたものとする。 First, it is assumed that the three cycles shown in FIG. 9 are generated. In the example of FIG. 9, it is assumed that a major cycle including the largest number of nodes and two minor cycles other than the major cycle are generated from among the three cycles.

大閉路は、10個のノード(ノード1からノード10)を有し、10個のエッジを有する。小閉路1(i=1)は、3個のノード(ノード1からノード3)を有し、3個のエッジを有する。小閉路2(i=2)は、4個のノード(ノード1からノード4)を有し、4個のエッジを有する。また、大閉路と小閉路のノードとエッジは、図9のテーブル91に示すように表される。 A great cycle has 10 nodes (node 1 to node 10) and 10 edges. Small cycle 1 (i=1) has 3 nodes (node 1 to node 3) and 3 edges. Small cycle 2 (i=2) has 4 nodes (node 1 to node 4) and 4 edges. Also, the nodes and edges of the major cycle and minor cycle are expressed as shown in the table 91 of FIG.

次に、求解部54は、図9に示した大閉路と小閉路1、2を一つの閉路にするために、数3に示したイジングモデルに基づいて、量子アニーリングマシン10に求解させる。すると、図10に示すような結果が得られる。 Next, the solving unit 54 causes the quantum annealing machine 10 to solve based on the Ising model shown in Equation 3 in order to make the major cycle and minor cycles 1 and 2 shown in FIG. 9 into one cycle. Then, the result as shown in FIG. 10 is obtained.

すなわち、図10のテーブル101に示すように、大閉路のエッジ6-7と小閉路1を接続させ、大閉路のエッジ1-2と小閉路2を接続させる結果が得られる。また、図10のテーブル102に示すように、小閉路1のエッジ1-2と大閉路を接続させる結果が得られる。また、図10のテーブル103に示すように、小閉路2のエッジ4-1と大閉路を接続させる結果が得られる。 That is, as shown in the table 101 of FIG. 10, the results of connecting the edge 6-7 of the major cycle and the minor cycle 1 and connecting the edge 1-2 of the major cycle and the minor cycle 2 are obtained. Also, as shown in the table 102 of FIG. 10, the result of connecting the edge 1-2 of the minor cycle 1 and the major cycle is obtained. Also, as shown in the table 103 of FIG. 10, the result of connecting the edge 4-1 of the minor cycle 2 and the major cycle is obtained.

次に、経路生成部55は、上述した結果に基づいて、大閉路と二つの小閉路1、2を接続する。その結果、図7Cに示すような閉回路が生成される。 Next, the path generator 55 connects the major cycle and the two minor cycles 1 and 2 based on the above results. As a result, a closed circuit is generated as shown in FIG. 7C.

ところが、上述した量子アニーリングにより閉路を生成した場合、生成した閉路が最短経路でないことがある。そこで、さらに精度を上げるために、経路生成部55は2―opt法を用いた補助処理を実行して、閉路をより近似解となる経路にする。 However, when a cycle is generated by the quantum annealing described above, the generated cycle may not be the shortest path. Therefore, in order to further improve the accuracy, the route generation unit 55 executes auxiliary processing using the 2-opt method to make the closed route a more approximate solution route.

このように、量子アニーリングを行うためには、オーバーヘッド(付加的な処理)が必要であるため、全探索の方が短時間に最適な接続ノードを探索できる可能性があるが、ノード数が多い場合には、(B)の方法より短時間で大閉路を生成することができる。 In this way, quantum annealing requires overhead (additional processing), so exhaustive search may be able to search for the optimal connection node in a short time, but the number of nodes is large. In this case, the large cycle can be generated in a shorter time than the method (B).

[装置動作]
次に、実施形態における閉路生成装置の動作について図11、図12を用いて説明する。図11、図12は、閉路生成装置の動作の一例を説明するための図である。以下の説明においては、適宜図面を参酌する。また、実施形態では、閉路生成装置を動作させることによって、閉路生成方法が実施される。よって、実施形態における閉路生成方法の説明は、以下の閉路生成装置の動作説明に代える。
[Device operation]
Next, the operation of the circuit generation device according to the embodiment will be described with reference to FIGS. 11 and 12. FIG. 11 and 12 are diagrams for explaining an example of the operation of the circuit generator. In the following description, the drawings will be referred to as appropriate. Also, in the embodiment, the cycle generation method is implemented by operating the cycle generation device. Therefore, the description of the cycle generation method in the embodiment is replaced with the description of the operation of the cycle generation device below.

まず、図11を用いて(B)で説明した方法を採用した閉路生成装置の動作について説明する。取得部51は、まず、TSPにより与えられたグラフを表すグラフ情報を取得する(ステップA1)。 First, with reference to FIG. 11, the operation of the cycle generator employing the method described in (B) will be described. The acquiring unit 51 first acquires graph information representing a graph provided by the TSP (step A1).

次に、抽出部52は、TSPにおいて与えられたグラフに含まれるノードを順次選択し、選択したノードごとに、選択したノードとそれ以外のノードで表されたエッジに関連付けられたコストを参照し、あらかじめ設定された順位以下のコストに対応するエッジを抽出する(ステップA2)。 Next, the extraction unit 52 sequentially selects nodes included in the graph given in the TSP, and refers to the cost associated with the edge represented by the selected node and other nodes for each selected node. , edges corresponding to costs below a preset rank are extracted (step A2).

次に、イジングモデル生成部53は、抽出したエッジをスピン(変数)としたイジングモデル又はQUBOを生成する(ステップA3)。具体的には、イジングモデル生成部53は、数2に示すようなイジングモデル(第二のイジングモデル)を生成する。なお、イジングモデルは手動で生成してもよい。 Next, the Ising model generator 53 generates an Ising model or QUBO with the extracted edge as a spin (variable) (step A3). Specifically, the Ising model generation unit 53 generates an Ising model (second Ising model) as shown in Equation 2. Note that the Ising model may be generated manually.

次に、求解部54は、生成したイジングモデルに基づいて、量子アニーリングマシン10に求解させる(ステップA4)。量子アニーリングマシン10が求解できた場合(ステップA5:Yes)、経路生成部55は、量子ビットの状態を表す状態情報を用いて閉路を生成する(ステップA6)。 Next, the solving unit 54 causes the quantum annealing machine 10 to solve based on the generated Ising model (step A4). If the quantum annealing machine 10 can find the solution (step A5: Yes), the path generation unit 55 generates a closed path using the state information representing the state of the quantum bit (step A6).

また、量子アニーリングマシン10が求解できない場合(ステップA5:No)、抽出部52は、順位が最大であるかを判定する(ステップA7)。順位が最大である場合(ステップA7:Yes)、抽出部52は、量子アニーリングマシン10が求解できないものとして処理を終了する。順位が最大とは、例えば、ノードがn個である場合に、1/n*100[%]の増加ができない状態などである。 Moreover, when the quantum annealing machine 10 cannot solve (step A5: No), the extraction unit 52 determines whether the rank is the highest (step A7). If the order is the highest (step A7: Yes), the extraction unit 52 terminates the processing assuming that the quantum annealing machine 10 cannot solve. The maximum rank is, for example, a state in which an increase of 1/n*100[%] is not possible when there are n nodes.

順位が最大でない場合(ステップA7:No)、抽出部52は、あらかじめ設定された順位を変更する(ステップA8)。具体的には、ステップA8において、抽出部52は、求解部54から求解できなかったことを表すエラー情報を取得する。次に、ステップA8において、抽出部52は、抽出するエッジの数が多くなるように、順位を変更する。例えば、ノードがn個である場合、最低でも、1/n*100[%]は増加させる。 If the ranking is not the highest (step A7: No), the extraction unit 52 changes the preset ranking (step A8). Specifically, in step A8, the extracting unit 52 acquires error information from the solution obtaining unit 54 indicating that the solution could not be obtained. Next, at step A8, the extraction unit 52 changes the order so that the number of edges to be extracted increases. For example, if the number of nodes is n, at least 1/n*100[%] is increased.

次に、ステップA8において、抽出部52が順位を変更した後、ステップA2の処理に移行して、再度エッジを抽出する。そして、ステップA3において、イジングモデル生成部53は、新たに抽出したエッジをスピンとして、新たにイジングモデルを生成する。その後、ステップA4において、求解部54は、生成した新たなイジングモデルに基づいて、量子アニーリングマシン10に求解させる。 Next, in step A8, after the extraction unit 52 changes the order, the process proceeds to step A2 to extract edges again. Then, in step A3, the Ising model generating unit 53 generates a new Ising model using the newly extracted edge as a spin. After that, in step A4, the solution finding unit 54 causes the quantum annealing machine 10 to find a solution based on the generated new Ising model.

経路生成部55は、複数の閉路が生成された場合(ステップA9:Yes)、複数の閉路のうち最も多くノードを含む閉路(大閉路)に、大閉路以外の小閉路を順次接続させる(ステップA10)。閉路が一つの場合(ステップA9:No)には処理を終了する。なお、閉路が一つの場合でも補助処理をしてもよい。 When a plurality of cycles are generated (step A9: Yes), the path generation unit 55 sequentially connects minor cycles other than the major cycle to the cycle (major cycle) containing the most nodes among the plurality of cycles (step A10). If there is one closed path (step A9: No), the process is terminated. It should be noted that auxiliary processing may be performed even when there is only one closed path.

具体的には、ステップA10において、経路生成部55は、小閉路を選択し、選択した小閉路のノードごとに、大閉路のノードそれぞれとの距離を求める。次に、ステップA10において、経路生成部55は、求めた距離に基づいてノード同士を接続する。 Specifically, in step A10, the path generation unit 55 selects a minor cycle, and obtains the distance between each node of the selected minor cycle and each node of the major cycle. Next, in step A10, the route generator 55 connects the nodes based on the obtained distance.

経路生成部55は、補助処理を実行する(ステップA11)。補助処理は、例えば、2―opt法などの処理である。二つの経路を順次選択し、選択した二つの経路(エッジ)の接続をつなぎ直し、大閉路が短くなるなら、つなぎ直した閉路を採用する。 The route generator 55 executes auxiliary processing (step A11). Auxiliary processing is, for example, processing such as the 2-opt method. Two paths are selected in sequence, the connections of the two selected paths (edges) are reconnected, and if the great cycle becomes shorter, the reconnected cycle is adopted.

また、補助処理の終了は、つなぎ直しても、大閉路が短くならない場合に補助処理を終了する。 Further, the auxiliary processing is ended when the great cycle is not shortened even by reconnecting.

次に、図12を用いて(C)で説明した方法を採用した閉路生成装置の動作について説明する。ステップA1からA11の処理については既に説明をしたので、ステップA1からA11の処理について説明を省略する。 Next, using FIG. 12, the operation of the circuit generation device employing the method described in (C) will be described. Since the processing of steps A1 to A11 has already been explained, the explanation of the processing of steps A1 to A11 will be omitted.

ステップB1において、イジングモデル生成部53は、複数の閉路の中から最も多くノードを含む大閉路(第一の閉路)と、大閉路に接続する大閉路以外の小閉路(第二の閉路)とを選択する。 In step B1, the Ising model generation unit 53 generates a large cycle (first cycle) including the largest number of nodes among a plurality of cycles, and a small cycle other than the large cycle connected to the large cycle (second cycle). to select.

次に、ステップB1において、イジングモデル生成部53は、大閉路に含まれるエッジが有する二つのノードを小閉路に接続させるか否かを表すスピン(変数:第一のスピン)と、小閉路に含まれるエッジが有する二つのノードを大閉路に接続させるか否かを表すスピン(変数:第二のスピン)とを設定したイジングモデル(第一のイジングモデル)又はQUBOを生成する。 Next, in step B1, the Ising model generation unit 53 generates a spin (variable: first spin) representing whether or not to connect two nodes of an edge included in the major cycle to the minor cycle, and An Ising model (first Ising model) or QUBO is generated in which a spin (variable: second spin) representing whether or not to connect two nodes of included edges to a great cycle is set.

具体的には、イジングモデル生成部53は、数3に示すようなイジングモデルを生成する。なお、イジングモデルは手動で生成してもよい。 Specifically, the Ising model generation unit 53 generates an Ising model as shown in Equation (3). Note that the Ising model may be generated manually.

ステップB2において、求解部54は、生成したイジングモデルに基づいて、量子アニーリングマシン10に求解させる。 At step B2, the solution finding unit 54 causes the quantum annealing machine 10 to find a solution based on the generated Ising model.

具体的には、ステップB2において、まず、求解部54は、イジングモデル生成部53から数3に示したイジングモデルを取得する。次に、ステップB2において、求解部54は、取得したイジングモデルに基づいて、量子アニーリングマシン10の量子処理部11を制御するための制御情報を生成する。その後、求解部54は、制御情報を含む制御信号を、制御部12に送信する。 Specifically, in step B<b>2 , first, the solution obtaining unit 54 acquires the Ising model shown in Equation 3 from the Ising model generating unit 53 . Next, in step B2, the solution-finding unit 54 generates control information for controlling the quantum processing unit 11 of the quantum annealing machine 10 based on the acquired Ising model. After that, the solution seeking unit 54 transmits a control signal including control information to the control unit 12 .

次に、ステップB2において、求解部54は、制御部12に対して、量子処理部11に局所磁場を印加させる指示をし、その後、局所磁場を時間かけて弱めていくように指示をする。その結果、最終的に、数2のハミルトニアンHは最小の状態に収束する。 Next, in step B2, the solution-seeking section 54 instructs the control section 12 to apply a local magnetic field to the quantum processing section 11, and then to weaken the local magnetic field over time. As a result, the Hamiltonian H of Equation 2 finally converges to the minimum state.

ステップB3において、経路生成部55は、量子ビットの状態を表す状態情報を用いて閉路を生成する。具体的には、ステップB3において、まず、経路生成部55は、量子アニーリングマシンの読取部13から状態情報を取得する。次に、ステップB3において、経路生成部55は、状態情報に基づいて、閉路を表す閉路情報を生成する。 At step B3, the path generator 55 generates a closed path using state information representing the state of the quantum bit. Specifically, in step B3, first, the path generation unit 55 acquires state information from the reading unit 13 of the quantum annealing machine. Next, in step B3, the route generator 55 generates closed path information representing closed paths based on the state information.

ところが、量子アニーリングにより大閉路を生成した場合、最短経路でないことがある。そこで、さらに精度を上げるために、ステップB3において、経路生成部55は2―opt法を用いた補助処理を実行する。 However, when a great cycle is generated by quantum annealing, it may not be the shortest path. Therefore, in order to further improve the accuracy, in step B3, the route generation unit 55 executes auxiliary processing using the 2-opt method.

[本実施形態の効果]
以上のように実施形態によれば、巡回セールスマン問題において、あらかじめ不要な経路を除外してから、量子アニーリングマシン10に量子アニーリングを実行させるので、閉路を生成する求解時間を短縮できる。
[Effect of this embodiment]
As described above, according to the embodiment, in the traveling salesman problem, the quantum annealing machine 10 is caused to execute quantum annealing after excluding unnecessary paths in advance, so that the solution-finding time for generating a cycle can be shortened.

また、複数の閉路が生成された場合でも、複数の閉路を一つの閉路にして、更に、補助処理を実行するので、より近似解となる閉路を生成することができる。 Also, even when a plurality of cycles are generated, the plurality of cycles are combined into one cycle, and auxiliary processing is further executed, so that a cycle with a more approximate solution can be generated.

さらに、ノード数が多い場合には、量子アニーリングを用いて最適な接続点(ノード)を求解することで、(B)の方法より短時間で大閉路を生成することができる。 Furthermore, when the number of nodes is large, it is possible to generate a large cycle in a shorter time than the method (B) by solving the optimum connection points (nodes) using quantum annealing.

なお、実施形態では、量子アニーリングの結果に基づいて生成された閉路が複数ある場合に、(C)の方法を適用した。しかし、量子アニーリング以外の方法に基づいて生成された複数の閉路に対して、(C)の方法を適用してもよい。 In the embodiment, the method (C) is applied when there are a plurality of cycles generated based on the result of quantum annealing. However, the method (C) may be applied to a plurality of cycles generated based on methods other than quantum annealing.

[プログラム]
実施形態におけるプログラムは、コンピュータに、図11、図12に示すステップA1からA11、B1からB3を実行させるプログラムであればよい。このプログラムをコンピュータにインストールし、実行することによって、実施形態における閉路生成装置と閉路生成方法とを実現することができる。この場合、コンピュータのプロセッサは、取得部51、抽出部52、イジングモデル生成部53、求解部54、経路生成部55として機能し、処理を行なう。
[program]
The program in the embodiment may be any program that causes a computer to execute steps A1 to A11 and B1 to B3 shown in FIGS. 11 and 12 . By installing this program in a computer and executing it, the circuit generation device and the circuit generation method in the embodiments can be realized. In this case, the processor of the computer functions as an acquisition unit 51, an extraction unit 52, an Ising model generation unit 53, a solution determination unit 54, and a route generation unit 55, and performs processing.

また、実施形態におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されてもよい。この場合は、例えば、各コンピュータが、それぞれ、取得部51、抽出部52、イジングモデル生成部53、求解部54、経路生成部55のいずれかとして機能してもよい。 Also, the programs in the embodiments may be executed by a computer system constructed by a plurality of computers. In this case, for example, each computer may function as one of the acquiring unit 51, the extracting unit 52, the Ising model generating unit 53, the solution obtaining unit 54, and the route generating unit 55, respectively.

[物理構成]
ここで、実施形態におけるプログラムを実行することによって、閉路生成装置を実現するコンピュータについて図13を用いて説明する。図13は、実施形態における閉路生成装置を実現するコンピュータ(例えば、情報処理装置20、端末装置30など)の一例を示すブロック図である。
[Physical configuration]
Here, a computer that implements the circuit generation device by executing the program in the embodiment will be described with reference to FIG. 13 . FIG. 13 is a block diagram showing an example of a computer (for example, the information processing device 20, the terminal device 30, etc.) that implements the circuit generation device in the embodiment.

図13に示すように、コンピュータ110は、CPU(Central Processing Unit)111と、メインメモリ112と、記憶装置113と、入力インターフェイス114と、表示コントローラ115と、データリーダ/ライタ116と、通信インターフェイス117とを備える。これらの各部は、バス121を介して、互いにデータ通信可能に接続される。なお、コンピュータ110は、CPU111に加えて、又はCPU111に代えて、GPU、又はFPGAを備えていてもよい。 As shown in FIG. 13, a computer 110 includes a CPU (Central Processing Unit) 111, a main memory 112, a storage device 113, an input interface 114, a display controller 115, a data reader/writer 116, and a communication interface 117. and These units are connected to each other via a bus 121 so as to be able to communicate with each other. Note that the computer 110 may include a GPU or FPGA in addition to or instead of the CPU 111 .

CPU111は、記憶装置113に格納された、本実施形態におけるプログラム(コード)をメインメモリ112に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ112は、典型的には、DRAM(Dynamic Random Access Memory)等の揮発性の記憶装置である。また、本実施形態におけるプログラムは、コンピュータ読み取り可能な記録媒体120に格納された状態で提供される。なお、本実施形態におけるプログラムは、通信インターフェイス117を介して接続されたインターネット上で流通するものであってもよい。なお、記録媒体120は、不揮発性記録媒体である。 The CPU 111 expands the programs (codes) in the present embodiment stored in the storage device 113 into the main memory 112 and executes them in a predetermined order to perform various calculations. The main memory 112 is typically a volatile storage device such as a DRAM (Dynamic Random Access Memory). Also, the program in this embodiment is provided in a state stored in a computer-readable recording medium 120 . Note that the program in this embodiment may be distributed on the Internet connected via the communication interface 117 . Note that the recording medium 120 is a non-volatile recording medium.

また、記憶装置113の具体例としては、ハードディスクドライブの他、フラッシュメモリ等の半導体記憶装置があげられる。入力インターフェイス114は、CPU111と、キーボード及びマウスといった入力機器118との間のデータ伝送を仲介する。表示コントローラ115は、ディスプレイ装置119と接続され、ディスプレイ装置119での表示を制御する。 Further, as a specific example of the storage device 113, in addition to a hard disk drive, a semiconductor storage device such as a flash memory can be mentioned. Input interface 114 mediates data transmission between CPU 111 and input devices 118 such as a keyboard and mouse. The display controller 115 is connected to the display device 119 and controls display on the display device 119 .

データリーダ/ライタ116は、CPU111と記録媒体120との間のデータ伝送を仲介し、記録媒体120からのプログラムの読み出し、及びコンピュータ110における処理結果の記録媒体120への書き込みを実行する。通信インターフェイス117は、CPU111と、他のコンピュータとの間のデータ伝送を仲介する。 Data reader/writer 116 mediates data transmission between CPU 111 and recording medium 120 , reads programs from recording medium 120 , and writes processing results in computer 110 to recording medium 120 . Communication interface 117 mediates data transmission between CPU 111 and other computers.

また、記録媒体120の具体例としては、CF(Compact Flash(登録商標))及びSD(Secure Digital)等の汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)等の磁気記録媒体、又はCD-ROM(Compact Disk Read Only Memory)などの光学記録媒体があげられる。 Specific examples of the recording medium 120 include general-purpose semiconductor storage devices such as CF (Compact Flash (registered trademark)) and SD (Secure Digital); magnetic recording media such as flexible disks; An optical recording medium such as a ROM (Compact Disk Read Only Memory) can be mentioned.

なお、実施形態における閉路生成装置は、プログラムがインストールされたコンピュータではなく、各部に対応したハードウェアを用いることによっても実現可能である。更に、閉路生成装置は、一部がプログラムで実現され、残りの部分がハードウェアで実現されていてもよい。 It should be noted that the circuit generation device in the embodiment can also be realized by using hardware corresponding to each part instead of a computer in which a program is installed. Furthermore, the circuit generator may be partly implemented by a program and the rest by hardware.

[付記]
以上の実施形態に関し、更に以下の付記を開示する。上述した実施形態の一部又は全部は、以下に記載する(付記1)から(付記9)により表現することができるが、以下の記載に限定されるものではない。
[Appendix]
The following additional remarks are disclosed regarding the above embodiments. Some or all of the embodiments described above can be expressed by the following (Appendix 1) to (Appendix 9), but are not limited to the following description.

(付記1)
複数の閉路の中から第一の閉路と前記第一の閉路に接続する第二の閉路とを選択し、前記第一の閉路に含まれるエッジが有する二つのノードを前記第二の閉路に接続させるかを表す第一のスピンと、前記第二の閉路に含まれるエッジが有する二つのノードを前記第一の閉路に接続させるかを表す第二のスピンとを設定した第一のイジングモデルに基づいて、量子アニーリングマシンに求解させる、求解部
を有する閉路生成装置。
(Appendix 1)
A first cycle and a second cycle connected to the first cycle are selected from among a plurality of cycles, and two nodes of edges included in the first cycle are connected to the second cycle. and a second spin representing whether to connect the two nodes of the edge included in the second cycle to the first cycle. A circuit generation device having a solution-producing unit for causing a quantum annealing machine to solve the problem based on the basis.

(付記2)
付記1に記載の閉路生成装置であって、
巡回セールスマン問題において与えられたグラフに含まれるノードを順次選択し、選択したノードごとに、選択したノードとそれ以外のノードで表されたエッジに関連付けられたコストを参照し、あらかじめ設定された順位以下のコストに対応するエッジを抽出する、抽出部を有し、
前記求解部は、抽出したエッジをスピンに設定した第二のイジングモデルに基づいて、前記量子アニーリングマシンに求解させる、
閉路生成装置。
(Appendix 2)
The circuit generation device according to Appendix 1,
In the traveling salesman problem, nodes included in a given graph are sequentially selected, and for each selected node, the cost associated with the edge represented by the selected node and other nodes is referred to, and the preset having an extraction unit that extracts edges corresponding to costs below the rank;
The solving unit causes the quantum annealing machine to solve based on a second Ising model in which the extracted edge is set to the spin,
Cycle generator.

(付記3)
付記2に記載の閉路生成装置であって、
前記抽出部は、前記求解ができない場合、前記順位を変更し、変更した前記順位に基づいて新たにエッジを抽出する、
前記求解部は、新たに前記抽出されたエッジをスピンとした前記第二のイジングモデルに基づいて、前記量子アニーリングマシンに求解させる
を有する閉路生成装置。
(Appendix 3)
The circuit generation device according to appendix 2,
If the solution cannot be obtained, the extraction unit changes the order and extracts a new edge based on the changed order.
The solution-finding unit causes the quantum annealing machine to solve based on the second Ising model in which the newly extracted edge is the spin.

(付記4)
複数の閉路の中から第一の閉路と前記第一の閉路に接続する第二の閉路とを選択し、前記第一の閉路に含まれるエッジが有する二つのノードを前記第二の閉路に接続させるかを表す第一のスピンと、前記第二の閉路に含まれるエッジが有する二つのノードを前記第一の閉路に接続させるかを表す第二のスピンとを設定した第一のイジングモデルに基づいて、量子アニーリングマシンに求解させる、求解ステップ、
を有する閉路生成方法。
(Appendix 4)
A first cycle and a second cycle connected to the first cycle are selected from among a plurality of cycles, and two nodes of edges included in the first cycle are connected to the second cycle. and a second spin representing whether to connect the two nodes of the edge included in the second cycle to the first cycle. a solution step that causes a quantum annealing machine to solve based on
A cycle generation method with

(付記5)
付記4に記載の閉路生成方法であって、
巡回セールスマン問題において与えられたグラフに含まれるノードを順次選択し、選択したノードごとに、選択したノードとそれ以外のノードで表されたエッジに関連付けられたコストを参照し、あらかじめ設定された順位以下のコストに対応するエッジを抽出する、抽出ステップを有し、
前記求解ステップにおいて、抽出したエッジをスピンに設定した第二のイジングモデルに基づいて、前記量子アニーリングマシンに求解させる、
閉路生成方法。
(Appendix 5)
The cycle generating method according to appendix 4,
In the traveling salesman problem, nodes included in a given graph are sequentially selected, and for each selected node, the cost associated with the edge represented by the selected node and other nodes is referred to, and the preset an extraction step of extracting edges corresponding to costs below the rank;
In the solution-finding step, the quantum annealing machine solves based on a second Ising model in which the extracted edge is set to the spin,
Cycle generation method.

(付記6)
付記5に記載の閉路生成方法であって、
前記抽出ステップにおいて、前記求解ができない場合、前記順位を変更し、変更した前記順位に基づいて新たにエッジを抽出し、
前記求解ステップにおいて、新たに前記抽出されたエッジをスピンとしたイジングモデルに基づいて、前記量子アニーリングマシンに求解させる
閉路生成方法。
(Appendix 6)
The cycle generation method according to appendix 5,
In the extracting step, if the solution cannot be obtained, changing the order and extracting a new edge based on the changed order;
In the solution finding step, the quantum annealing machine is caused to find a solution based on an Ising model in which the newly extracted edge is a spin.

(付記7)
コンピュータに、
複数の閉路の中から第一の閉路と前記第一の閉路に接続する第二の閉路とを選択し、前記第一の閉路に含まれるエッジが有する二つのノードを前記第二の閉路に接続させるかを表す第一のスピンと、前記第二の閉路に含まれるエッジが有する二つのノードを前記第一の閉路に接続させるかを表す第二のスピンとを設定した第一のイジングモデルに基づいて、量子アニーリングマシンに求解させる、求解ステップ、
を実行させる命令を含むプログラム。
(Appendix 7)
to the computer,
A first cycle and a second cycle connected to the first cycle are selected from among a plurality of cycles, and two nodes of edges included in the first cycle are connected to the second cycle. and a second spin representing whether to connect the two nodes of the edge included in the second cycle to the first cycle. a solution step that causes a quantum annealing machine to solve based on
A program containing instructions that causes a

(付記8)
付記7に記載のプログラムであって、
前記プログラムが、前記コンピュータに、
巡回セールスマン問題において与えられたグラフに含まれるノードを順次選択し、選択したノードごとに、選択したノードとそれ以外のノードで表されたエッジに関連付けられたコストを参照し、あらかじめ設定された順位以下のコストに対応するエッジを抽出する、抽出ステップを実行させる命令を含み、
前記求解ステップにおいて、抽出したエッジをスピンに設定した第二のイジングモデルに基づいて、前記量子アニーリングマシンに求解させる、
命令を含むプログラム。
(Appendix 8)
The program according to Supplementary Note 7,
The program causes the computer to:
In the traveling salesman problem, nodes included in a given graph are sequentially selected, and for each selected node, the cost associated with the edge represented by the selected node and other nodes is referred to, and the preset including instructions to perform an extraction step of extracting edges corresponding to costs below rank;
In the solution-finding step, the quantum annealing machine solves based on a second Ising model in which the extracted edge is set to the spin,
A program containing instructions.

(付記9)
付記8に記載のプログラムであって、
前記抽出ステップにおいて、前記求解ができない場合、前記順位を変更し、変更した前記順位に基づいて新たにエッジを抽出し、
前記求解ステップにおいて、新たに前記抽出されたエッジをスピンとしたイジングモデルに基づいて、前記量子アニーリングマシンに求解させる
命令を含むプログラム。
(Appendix 9)
The program according to Appendix 8,
In the extracting step, if the solution cannot be obtained, changing the order and extracting a new edge based on the changed order;
A program comprising instructions for causing the quantum annealing machine to solve based on the Ising model in which the newly extracted edges are spins in the solution-finding step.

以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。 Although the present invention has been described with reference to the embodiments, the present invention is not limited to the above embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.

以上のように本発明によれば、閉路を生成する時間を短縮できる。本発明は、巡回セールスマン問題を量子アニーリングにより閉路を生成する分野において有用である。 As described above, according to the present invention, it is possible to shorten the time required to generate a closed path. INDUSTRIAL APPLICABILITY The present invention is useful in the field of generating a cycle by quantum annealing the traveling salesman problem.

1 システム
10 量子アニーリングマシン
11 量子処理部
12 制御部
13 読取部
20 情報処理装置
30 端末装置
40 ネットワーク
50 閉路生成装置
51 取得部
52 抽出部
53 イジングモデル生成部
54 求解部
55 経路生成部
110 コンピュータ
111 CPU
112 メインメモリ
113 記憶装置
114 入力インターフェイス
115 表示コントローラ
116 データリーダ/ライタ
117 通信インターフェイス
118 入力機器
119 ディスプレイ装置
120 記録媒体
121 バス
1 System 10 Quantum Annealing Machine 11 Quantum Processing Unit 12 Control Unit 13 Reading Unit 20 Information Processing Device 30 Terminal Device 40 Network 50 Circuit Generation Device 51 Acquisition Unit 52 Extraction Unit 53 Ising Model Generation Unit 54 Solving Unit 55 Path Generation Unit 110 Computer 111 CPU
112 Main memory 113 Storage device 114 Input interface 115 Display controller 116 Data reader/writer 117 Communication interface 118 Input device 119 Display device 120 Recording medium 121 Bus

Claims (9)

複数の閉路の中から第一の閉路と前記第一の閉路に接続する第二の閉路とを選択し、前記第一の閉路に含まれるエッジが有する二つのノードを前記第二の閉路に接続させるかを表す第一のスピンと、前記第二の閉路に含まれるエッジが有する二つのノードを前記第一の閉路に接続させるかを表す第二のスピンとを設定した第一のイジングモデルに基づいて、量子アニーリングマシンに求解させる、求解手段
を有する閉路生成装置。
A first cycle and a second cycle connected to the first cycle are selected from among a plurality of cycles, and two nodes of edges included in the first cycle are connected to the second cycle. and a second spin representing whether to connect the two nodes of the edge included in the second cycle to the first cycle. A cycle generating device having a solution-producing means for causing a quantum annealing machine to solve a solution based on the basis.
請求項1に記載の閉路生成装置であって、
巡回セールスマン問題において与えられたグラフに含まれるノードを順次選択し、選択したノードごとに、選択したノードとそれ以外のノードで表されたエッジに関連付けられたコストを参照し、あらかじめ設定された順位以下のコストに対応するエッジを抽出する、抽出手段を有し、
前記求解手段は、抽出したエッジをスピンに設定した第二のイジングモデルに基づいて、前記量子アニーリングマシンに求解させる、
閉路生成装置。
The circuit generation device according to claim 1,
In the traveling salesman problem, nodes included in a given graph are sequentially selected, and for each selected node, the cost associated with the edge represented by the selected node and other nodes is referred to, and the preset having extraction means for extracting edges corresponding to costs below rank;
The solution-finding means causes the quantum annealing machine to solve based on a second Ising model in which the extracted edges are set to spins.
Cycle generator.
請求項2に記載の閉路生成装置であって、
前記抽出手段は、前記求解ができない場合、前記順位を変更し、変更した前記順位に基づいて新たにエッジを抽出する、
前記求解手段は、新たに前記抽出されたエッジをスピンとした前記第二のイジングモデルに基づいて、前記量子アニーリングマシンに求解させる
閉路生成装置。
The circuit generation device according to claim 2,
When the solution cannot be obtained, the extraction means changes the order and extracts a new edge based on the changed order.
The solution finding means causes the quantum annealing machine to find a solution based on the second Ising model in which the newly extracted edge is the spin.
複数の閉路の中から第一の閉路と前記第一の閉路に接続する第二の閉路とを選択し、前記第一の閉路に含まれるエッジが有する二つのノードを前記第二の閉路に接続させるかを表す第一のスピンと、前記第二の閉路に含まれるエッジが有する二つのノードを前記第一の閉路に接続させるかを表す第二のスピンとを設定した第一のイジングモデルに基づいて、量子アニーリングマシンに求解させる、
閉路生成方法。
A first cycle and a second cycle connected to the first cycle are selected from among a plurality of cycles, and two nodes of edges included in the first cycle are connected to the second cycle. and a second spin representing whether to connect the two nodes of the edge included in the second cycle to the first cycle. Let the quantum annealing machine solve based on
Cycle generation method.
請求項4に記載の閉路生成方法であって、
巡回セールスマン問題において与えられたグラフに含まれるノードを順次選択し、選択したノードごとに、選択したノードとそれ以外のノードで表されたエッジに関連付けられたコストを参照し、あらかじめ設定された順位以下のコストに対応するエッジを抽出し、
抽出したエッジをスピンに設定した第二のイジングモデルに基づいて、前記量子アニーリングマシンに求解させる、
閉路生成方法。
A cycle generation method according to claim 4,
In the traveling salesman problem, nodes included in a given graph are sequentially selected, and for each selected node, the cost associated with the edge represented by the selected node and other nodes is referred to, and the preset Extract edges corresponding to costs below rank,
Let the quantum annealing machine solve based on a second Ising model in which the extracted edge is set to spin,
Cycle generation method.
請求項5に記載の閉路生成方法であって、
前記抽出において、前記求解ができない場合、前記順位を変更し、変更した前記順位に基づいて新たにエッジを抽出し、
前記求解において、新たに前記抽出されたエッジをスピンとしたイジングモデルに基づいて、前記量子アニーリングマシンに求解させる
閉路生成方法。
A cycle generation method according to claim 5,
In the extraction, if the solution cannot be obtained, the order is changed, and a new edge is extracted based on the changed order;
The method of generating a cycle in which the quantum annealing machine is caused to solve based on an Ising model in which the newly extracted edges are spins in the solving.
コンピュータに、
複数の閉路の中から第一の閉路と前記第一の閉路に接続する第二の閉路とを選択し、前記第一の閉路に含まれるエッジが有する二つのノードを前記第二の閉路に接続させるかを表す第一のスピンと、前記第二の閉路に含まれるエッジが有する二つのノードを前記第一の閉路に接続させるかを表す第二のスピンとを設定した第一のイジングモデルに基づいて、量子アニーリングマシンに求解させる、
命令を含むプログラム。
to the computer,
A first cycle and a second cycle connected to the first cycle are selected from among a plurality of cycles, and two nodes of edges included in the first cycle are connected to the second cycle. and a second spin representing whether to connect the two nodes of the edge included in the second cycle to the first cycle. Let the quantum annealing machine solve based on
A program containing instructions.
請求項7に記載のプログラムであって、
前記プログラムが、前記コンピュータに、
巡回セールスマン問題において与えられたグラフに含まれるノードを順次選択し、選択したノードごとに、選択したノードとそれ以外のノードで表されたエッジに関連付けられたコストを参照し、あらかじめ設定された順位以下のコストに対応するエッジを抽出させ、
抽出したエッジをスピンに設定した第二のイジングモデルに基づいて、前記量子アニーリングマシンに求解させる、
命令を含むプログラム。
The program according to claim 7,
The program causes the computer to:
In the traveling salesman problem, nodes included in a given graph are sequentially selected, and for each selected node, the cost associated with the edge represented by the selected node and other nodes is referred to, and the preset Extract the edge corresponding to the cost below the rank,
Let the quantum annealing machine solve based on a second Ising model in which the extracted edge is set to spin,
A program containing instructions.
請求項8に記載のプログラムであって、
前記抽出において、前記求解ができない場合、前記順位を変更し、変更した前記順位に基づいて新たにエッジを抽出させ、
前記求解において、新たに前記抽出されたエッジをスピンとしたイジングモデルに基づいて、前記量子アニーリングマシンに求解させる
命令を含むプログラム。
The program according to claim 8,
In the extraction, if the solution cannot be obtained, the order is changed, and a new edge is extracted based on the changed order;
A program comprising instructions for causing said quantum annealing machine to solve based on an Ising model in which said newly extracted edges are spins in said solving.
JP2021072896A 2021-04-22 2021-04-22 Closed path generation apparatus, closed path generation method, and program Pending JP2022167230A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021072896A JP2022167230A (en) 2021-04-22 2021-04-22 Closed path generation apparatus, closed path generation method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021072896A JP2022167230A (en) 2021-04-22 2021-04-22 Closed path generation apparatus, closed path generation method, and program

Publications (1)

Publication Number Publication Date
JP2022167230A true JP2022167230A (en) 2022-11-04

Family

ID=83852601

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021072896A Pending JP2022167230A (en) 2021-04-22 2021-04-22 Closed path generation apparatus, closed path generation method, and program

Country Status (1)

Country Link
JP (1) JP2022167230A (en)

Similar Documents

Publication Publication Date Title
CN109858628B (en) Method, apparatus, device and computer readable storage medium for compiling quantum circuit
US11593707B2 (en) Compressed unsupervised quantum state preparation with quantum autoencoders
JP7493526B2 (en) Adaptive Error Correction in Quantum Computing
JP7163500B2 (en) A classical optimizer for quantum chemical circuit synthesis
CN109376867B (en) Processing method and device of two-quantum-bit logic gate
CN114861576B (en) Simulation method and device for superconducting quantum chip layout, electronic equipment and medium
Chen et al. Edge intelligent networking optimization for internet of things in smart city
CN113537502A (en) Quantum circuit processing method and device, electronic device and storage medium
JP2017219948A (en) Information processing device, ising device and information processing device control method
CN114897173B (en) Method and device for determining PageRank based on variable component sub-line
JP2007528538A (en) Generative programming system and method using focused grammar
JP2020123270A (en) Arithmetic unit
JP2022527534A (en) Adiabatic progression with intermediate reoptimization to solve difficult variational quantum problems in quantum computing
US20210150356A1 (en) Optimization device, method for controlling optimization device, and computer-readable recording medium recording program for controlling optimization device
JP2019139323A (en) Optimization system, optimization apparatus, and optimization system control method
CN114037082A (en) Quantum computing task processing method and system and computer equipment
US20240061724A1 (en) Quantum computing task execution method and apparatus, and quantum computer operating system
US20210182723A1 (en) Apparatus and method for quantum circuit synthesis using hardware-specific constraints
JP6325762B1 (en) Information processing apparatus, information processing method, and information processing program
JP2022167230A (en) Closed path generation apparatus, closed path generation method, and program
JP2022167229A (en) Closed path generation apparatus, closed path generation method, and program
JP2023523109A (en) Quantum operation execution method and device, quantum operation control waveform generation method and device, quantum operation chip, computer device and program
CN116932988B (en) Method and device for solving combined optimization problem, storage medium and electronic equipment
CN116151381B (en) Quantum circuit processing method and device and electronic equipment
CN115310614B (en) Quantum circuit construction method and device and quantum computer operating system