JP2022167230A - Closed path generation apparatus, closed path generation method, and program - Google Patents
Closed path generation apparatus, closed path generation method, and program Download PDFInfo
- 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
Links
Images
Landscapes
- Logic Circuits (AREA)
Abstract
Description
本発明は、閉路を生成する閉路生成装置、閉路生成方法、及びプログラムに関する。 The present invention relates to a circuit generation device, a circuit generation method, and a program for generating a circuit.
組み合わせ最適化問題の一つである巡回セールスマン問題(以降、TSPと記載することがある)を、量子アニーリングを用いて解く場合、良く知られているような、都市数と到達順を変数(スピン)と定義する方法では、都市数n(=1以上の整数)に対してn2個の変数(スピン)が必要になるため求解に時間がかかる。 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
しかしながら、特許文献1の技術を用いた場合でも、一つの閉路が求まるまで繰り返し求解をするため、巡回セールスマン問題において与えられたグラフによっては求解に時間がかかる。
However, even when the technique of
一つの側面として、閉路を生成する時間を短縮する、閉路生成装置、閉路生成方法、及びプログラムを提供することを目的とする。 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.
はじめに、実施形態の理解を容易にするために、量子アニーリングマシンについて概要を説明する。 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
量子アニーリングマシン10は、量子処理部11(QPU:Quantum processing Unit)、制御部12、読取部13などを有するハードウェアである。
The
量子処理部11は、複数の量子ビットが相互接続された回路である。量子処理部11の回路(又は機器)は、例えば、所定数の量子ビットを接続して構成された複数のユニット・セルと、異なるユニット・セル間の量子ビットを接続するためのカプラとを用いて構築された超電導量子回路などが考えられる。
The
制御部12は、量子処理部11を制御する回路(又は機器)である。量子処理部11が超電導量子回路である場合、制御部12は、情報処理装置20から送信された制御信号に基づいて、量子処理部11に印加する局所磁場の制御をする。局所磁場は、例えば、マイクロ波を用いて制御する。
The
読取部13は、量子処理部11の量子ビットの状態(スピン)を読み取る回路(又は機器)である。読取部13は、量子アニーリングが終了するたびに量子ビットの状態を読み取り、量子ビットの状態を表す状態情報を情報処理装置20に送信する。
The
情報処理装置20は、ネットワーク40を介して端末装置30と接続されている。また、情報処理装置20は、量子アニーリングマシン10と接続されている。
The
具体的には、情報処理装置20は、局所磁場を制御するための制御信号を、制御部12へ送信する。情報処理装置20は、量子ビットの状態を表す状態情報を、読取部13から受信する。
Specifically, the
なお、図1では、利用者が端末装置30を用いて、ネットワーク40を介し、情報処理装置20を操作する構成が示されているが、利用者が情報処理装置20を直接操作してもよい。
Note that FIG. 1 shows a configuration in which the user operates the
情報処理装置20は、例えば、CPU(Central Processing Unit)、又はFPGA(Field-Programmable Gate Array)などのプログラマブルなデバイス、又はGPU(Graphics Processing Unit)、又はそれらのうちのいずれか一つ以上を搭載した回路、又はサーバコンピュータなどである。
The
端末装置30は、ネットワーク40を介して情報処理装置20と接続されている。端末装置30は、例えば、CPU、又はFPGAなどのプログラマブルなデバイス、又はGPU、又はそれらのうちのいずれか一つ以上を搭載した回路、又はパーソナルコンピュータ、又はモバイル端末などの情報処理装置である。
The
ネットワーク40は、例えば、インターネット、LAN(Local Area Network)、専用回線、電話回線、企業内ネットワーク、移動体通信網、ブルートゥース(登録商標)、WiFi(Wireless Fidelity)などの通信回線を用いて構築された一般的なネットワークである。
The
次に、量子アニーリングマシンにより組み合わせ最適化問題を解く方法について説明する。量子アニーリングマシンにより組み合わせ最適化問題を解くには、まず、対象とする組み合わせ最適化問題をイジングモデル、又は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
Jijは、隣接する量子ビット間の結合強度を表す。結合強度は、例えば、隣接する量子ビットを結合している結合器に外部から磁束を印可することにより制御される。 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.
hiは、量子ビットに外部から印可される局所磁場を表す。局所磁場の印可は、例えば、外部からマイクロ波を注入することにより実現する。 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
次に、量子アニーリングマシンは量子アニーリングを開始する。具体的には、量子アニーリングマシンの制御部12が、量子処理部11に局所磁場を印加した後、局所磁場を時間をかけて弱めていく。その結果、最終的に、ハミルトニアンが最小の状態に収束する。
The quantum annealing machine then begins quantum annealing. Specifically, the
次に、量子アニーリングマシンの読取部13は、量子処理部11の量子ビットの状態を読み取る。
Next, the
ただし、ハミルトニアンが最小の状態に収束しないこともあるので、上述したアニーリングを複数回繰り返して解を取得することが好適である。なお、ハミルトニアンが最小の状態に収束しない理由は、量子処理部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
次に、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 (
(1)ある都市をどの順番に訪れるかという問題において、スピン(変数)を都市それぞれと定義する。その場合、ある都市にある順番で訪れたときを1、それ以外を0とするので、都市数がn個である場合、スピン数はn2個となる。したがって、図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個である場合にはスピン数はnC2個となる。したがって、図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
実施形態について図面を参照して説明する。なお、以下で説明する図面において、同一の機能又は対応する機能を有する要素には同一の符号を付し、その繰り返しの説明は省略することもある。 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
閉路生成装置50は、図3に示すように、取得部51と、抽出部52と、イジングモデル生成部53と、求解部54と、経路生成部55とを有する。図3は、閉路生成装置の一例を説明するための図である。
The
取得部51は、TSPにより与えられたグラフを表すグラフ情報を取得する。グラフ情報(グラフ)は、都市(地点)を表すノード情報(ノード)と、二つのノード間の経路を表すエッジ情報(エッジ)と、経路それぞれに付与されたコスト情報(コスト)とが関連付けられた情報である。
The
コスト情報は、二つのノード間の移動コストを表す情報である。移動コストは、例えば、距離などである。ただし、移動コストは距離に限定されない。 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
具体的には、まず、抽出部52は、取得部51からグラフを取得する。次に、抽出部52は、取得したグラフに含まれるノードを選択する。次に、抽出部52は、選択したノードと、選択したノード以外のノードで表されたエッジを抽出する。
Specifically, first, the
次に、抽出部52は、抽出したエッジのうち、エッジに関連付けられたコストがあらかじめ設定された順位以下のエッジを抽出する。すなわち、抽出部52は、コストの値が小さいエッジを、所定数抽出する。
Next, the extracting
抽出部52は、上述した処理を、グラフに含まれるすべてのノードについて実行して、ノードごとに、所定数のエッジを抽出する。
The
なお、順位は、実験、シミュレーションにより決定する。順位は、例えば、下位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
イジングモデル生成部53は、抽出したエッジをスピン(変数)としたイジングモデル(第二のイジングモデル)又はQUBOを生成する。具体的には、イジングモデル生成部53は、数2に示すようなイジングモデルを生成する。なお、イジングモデルは手動で生成してもよい。
The Ising
求解部54は、生成したイジングモデルに基づいて、量子アニーリングマシン10に求解させる。
The solving
具体的には、まず、求解部54は、イジングモデル生成部53から数2に示したイジングモデルを取得する。次に、求解部54は、取得したイジングモデルに基づいて、量子アニーリングマシン10の量子処理部11を制御するための制御情報を生成する。その後、求解部54は、制御情報を含む制御信号を、制御部12に送信する。
Specifically, first, the
量子処理部11が超電導量子回路である場合、制御部12は、受信した制御信号に基づいて、量子処理部11に印加する局所磁場を制御する。
When the
詳細には、求解部54は、まず、数2に示したイジングモデルに基づいて、量子アニーリングマシン10の量子処理部11に構成されている量子ビットトポロジーに対してマイナー埋め込みをするための指示を、量子アニーリングマシン10の制御部12にする。
Specifically, the solution-finding
求解部54は、量子アニーリングマシン10に指示するため、数2のハミルトニアンの式を展開し、展開後得られた各項のうち、一次項又は同じスピンから成る二次項の係数をスピンに係るバイアス、別々のスピンから成る二次項の係数をスピン間の相互作用とする。このとき、ハミルトニアンがQUBOであればイジングモデルへの変換を行い、量子アニーリングマシンに対してパラメータを設定する。なお、QUBOからイジングモデルへの変換が可能であることは証明されている。
In order to instruct the
次に、求解部54は、制御部12に対して、量子処理部11に局所磁場を印加させる指示をし、その後、局所磁場を時間かけて弱めていくように指示をする。その結果、最終的に、数2のハミルトニアンHは最小の状態に収束する。
Next, the solution-seeking
経路生成部55は、量子ビットの状態を表す状態情報を用いて閉路を生成する。具体的には、まず、経路生成部55は、量子アニーリングマシンの読取部13から状態情報を取得する。次に、経路生成部55は、状態情報に基づいて、閉路を表す閉路情報を生成する。
The
例えば、経路生成部55は、図5に示すような閉路を生成する。図5は、閉路を説明するための図である。図5の例は、17個の都市(ノード)を最短距離で巡回する閉路を表している。
For example, the
閉路情報は、閉路に含まれる都市間の接続状態を表す情報である。図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
上述したように、実施形態においては、あらかじめコストの小さいエッジを抽出し、抽出したエッジをスピンとして定義し、量子アニーリングマシン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
言い換えれば、不要と推定されたエッジを除外して、スピンの数を削減するので、求解時間を短縮することができる。 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
そこで、抽出部52は、求解できない場合、あらかじめ設定された順位を変更する。具体的には、まず、抽出部52は、求解部54から求解できなかったことを表すエラー情報を取得する。次に、抽出部52は、抽出するエッジの数が多くなるように、順位を変更する。例えば、ノードがn個である場合、最低でも、1/n*100[%]は増加させる。
Therefore, the
次に、抽出部52は、順位を変更した後、ノードごとに、再度エッジを抽出する。次に、イジングモデル生成部53は、新たに抽出したエッジをスピンとして、新たにイジングモデルを生成する。その後、求解部54は、生成した新たなイジングモデルに基づいて、量子アニーリングマシン10に求解させる。
Next, after changing the ranking, the
(B)数2に示したハミルトニアンHには、閉路が一つになるようなエッジの組み合わせを求める制約式が含まれていないため、複数の閉路が求解されることがある。例えば、図6に示すように複数の閉路が生成されることがある。図6は、複数の閉路を説明するための図である。
(B) Since the Hamiltonian H shown in
そこで、経路生成部55は、複数の閉路が求められた場合、複数の閉路を用いて、コストの合計が最小となる一つの閉路を生成する。具体的には、経路生成部55は、複数の閉路のうち最も多くノードを含む閉路(大閉路)に、大閉路以外の小閉路を順次接続させる。例えば、経路生成部55は、図6に示した複数の閉路を、図5に示した一つの閉路にする。
Therefore, when a plurality of closed paths are obtained, the
まず、経路生成部55は、小閉路を選択し、選択した小閉路のノードごとに、大閉路のノードそれぞれとの距離を求める。次に、経路生成部55は、求めた距離に基づいてノード同士を接続する。
First, the
図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
例えば、経路生成部55は、小閉路の都市10、11、12それぞれについて、大閉路の都市5から都市9及び都市13から都市17との距離を求める。その結果、経路生成部55は、都市10と都市9の距離、及び、都市12と都市13の距離が、他に求めた距離より短いので、図7Bに示すように、都市10と都市9、都市12と都市13を接続して、新たに大閉路を生成する。
For example, the
次に、経路生成部55は、都市1、2、3、4を有する小閉路を選択し、選択した小閉路と、都市5から都市17を有する大閉路とを一つの閉路にする。
Next, the
例えば、経路生成部55は、小閉路の都市1、2、3、4それぞれについて、大閉路の都市5から都市17との距離を求める。その結果、経路生成部55は、都市1と都市17の距離、及び、都市4と都市5の距離が、他に求めた距離より短いので、図7Cに示すよ
うに、都市1と都市17、都市4と都市5を接続して、新たに大閉路を生成する。
For example, the
ただし、都市3と都市5の距離は、都市1と都市17の距離より短いが、都市5は既に選ばれているので、都市3と都市5は選択されない。
However, although the distance between
なお、すでに数2に示したハミルトニアンHの制約により、経路生成部55でコストが最小となるような閉路を求めており、各閉路内では順序を入れ替える必要はない。よって、小閉路を大閉路に接続させる際に追加となるコストが最小となる組み合わせを求める問題に帰着させることで、上述した複数の閉路を一つの閉路にする処理にかかる計算量は少なく、短時間で求めることができる。
Note that the
ところが、上述した方法により大閉路を生成した場合、最短経路でないことがある。そこで、さらに精度を上げるために、経路生成部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
また、補助処理の終了は、つなぎ直しても、大閉路が短くならない場合に補助処理を終了する。 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
この入れ替えの結果、大閉路が短くなるなら、入れ替えた大閉路を採用する。このように上述した入れ替え処理を繰り返し、大閉路が短くならない場合(改善がなくなった場合)に補助処理を停止する。その結果、図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
次に、イジングモデル生成部53は、大閉路に含まれるエッジが有する二つのノードを小閉路に接続させるか否かを表すスピン(変数:第一のスピン)と、小閉路に含まれるエッジが有する二つのノードを大閉路に接続させるか否かを表すスピン(変数:第二のスピン)とを設定したイジングモデル(第一のイジングモデル)又はQUBOを生成する。
Next, the Ising
具体的には、イジングモデル生成部53は、数3に示すようなイジングモデルを生成する。なお、イジングモデルは手動で生成してもよい。
Specifically, the Ising
求解部54は、生成したイジングモデルに基づいて、量子アニーリングマシン10に求解させる。
The solving
具体的には、まず、求解部54は、イジングモデル生成部53から数3に示したイジングモデルを取得する。次に、求解部54は、取得したイジングモデルに基づいて、量子アニーリングマシン10の量子処理部11を制御するための制御情報を生成する。その後、求解部54は、制御情報を含む制御信号を、制御部12に送信する。
Specifically, first, the
量子処理部11が超電導量子回路である場合、制御部12は、受信した制御信号に基づいて、量子処理部11に印加する局所磁場を制御する。
When the
詳細には、求解部54は、まず、数3に示したイジングモデルに基づいて、量子アニーリングマシン10の量子処理部11に構成されている量子ビットトポロジーに対してマイナー埋め込みをするための指示を、量子アニーリングマシン10の制御部12にする。
Specifically, the solution-finding
求解部54は、量子アニーリングマシン10に指示するため、数3のハミルトニアンの式を展開し、展開後得られた各項のうち、一次項又は同じスピンから成る二次項の係数をスピンに係るバイアス、別々のスピンから成る二次項の係数をスピン間の相互作用とする。このとき、ハミルトニアンがQUBOであればイジングモデルへの変換を行い、量子アニーリングマシンに対してパラメータを設定する。
In order to instruct the
次に、求解部54は、制御部12に対して、量子処理部11に局所磁場を印加させる指示をし、その後、局所磁場を時間かけて弱めていくように指示をする。その結果、最終的に、数2のハミルトニアンHは最小の状態に収束する。
Next, the solution-seeking
次に、経路生成部55は、量子ビットの状態を表す状態情報を用いて閉路を生成する。具体的には、まず、経路生成部55は、量子アニーリングマシンの読取部13から状態情報を取得する。次に、経路生成部55は、状態情報に基づいて、閉路を表す閉路情報を生成する。
Next, the
図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 (
次に、求解部54は、図9に示した大閉路と小閉路1、2を一つの閉路にするために、数3に示したイジングモデルに基づいて、量子アニーリングマシン10に求解させる。すると、図10に示すような結果が得られる。
Next, the solving
すなわち、図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
次に、経路生成部55は、上述した結果に基づいて、大閉路と二つの小閉路1、2を接続する。その結果、図7Cに示すような閉回路が生成される。
Next, the
ところが、上述した量子アニーリングにより閉路を生成した場合、生成した閉路が最短経路でないことがある。そこで、さらに精度を上げるために、経路生成部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
このように、量子アニーリングを行うためには、オーバーヘッド(付加的な処理)が必要であるため、全探索の方が短時間に最適な接続ノードを探索できる可能性があるが、ノード数が多い場合には、(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
次に、抽出部52は、TSPにおいて与えられたグラフに含まれるノードを順次選択し、選択したノードごとに、選択したノードとそれ以外のノードで表されたエッジに関連付けられたコストを参照し、あらかじめ設定された順位以下のコストに対応するエッジを抽出する(ステップA2)。
Next, the
次に、イジングモデル生成部53は、抽出したエッジをスピン(変数)としたイジングモデル又はQUBOを生成する(ステップA3)。具体的には、イジングモデル生成部53は、数2に示すようなイジングモデル(第二のイジングモデル)を生成する。なお、イジングモデルは手動で生成してもよい。
Next, the
次に、求解部54は、生成したイジングモデルに基づいて、量子アニーリングマシン10に求解させる(ステップA4)。量子アニーリングマシン10が求解できた場合(ステップA5:Yes)、経路生成部55は、量子ビットの状態を表す状態情報を用いて閉路を生成する(ステップA6)。
Next, the solving
また、量子アニーリングマシン10が求解できない場合(ステップA5:No)、抽出部52は、順位が最大であるかを判定する(ステップA7)。順位が最大である場合(ステップA7:Yes)、抽出部52は、量子アニーリングマシン10が求解できないものとして処理を終了する。順位が最大とは、例えば、ノードがn個である場合に、1/n*100[%]の増加ができない状態などである。
Moreover, when the
順位が最大でない場合(ステップA7:No)、抽出部52は、あらかじめ設定された順位を変更する(ステップA8)。具体的には、ステップA8において、抽出部52は、求解部54から求解できなかったことを表すエラー情報を取得する。次に、ステップA8において、抽出部52は、抽出するエッジの数が多くなるように、順位を変更する。例えば、ノードがn個である場合、最低でも、1/n*100[%]は増加させる。
If the ranking is not the highest (step A7: No), the
次に、ステップA8において、抽出部52が順位を変更した後、ステップA2の処理に移行して、再度エッジを抽出する。そして、ステップA3において、イジングモデル生成部53は、新たに抽出したエッジをスピンとして、新たにイジングモデルを生成する。その後、ステップA4において、求解部54は、生成した新たなイジングモデルに基づいて、量子アニーリングマシン10に求解させる。
Next, in step A8, after the
経路生成部55は、複数の閉路が生成された場合(ステップA9:Yes)、複数の閉路のうち最も多くノードを含む閉路(大閉路)に、大閉路以外の小閉路を順次接続させる(ステップA10)。閉路が一つの場合(ステップA9:No)には処理を終了する。なお、閉路が一つの場合でも補助処理をしてもよい。
When a plurality of cycles are generated (step A9: Yes), the
具体的には、ステップA10において、経路生成部55は、小閉路を選択し、選択した小閉路のノードごとに、大閉路のノードそれぞれとの距離を求める。次に、ステップA10において、経路生成部55は、求めた距離に基づいてノード同士を接続する。
Specifically, in step A10, the
経路生成部55は、補助処理を実行する(ステップA11)。補助処理は、例えば、2―opt法などの処理である。二つの経路を順次選択し、選択した二つの経路(エッジ)の接続をつなぎ直し、大閉路が短くなるなら、つなぎ直した閉路を採用する。
The
また、補助処理の終了は、つなぎ直しても、大閉路が短くならない場合に補助処理を終了する。 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
次に、ステップB1において、イジングモデル生成部53は、大閉路に含まれるエッジが有する二つのノードを小閉路に接続させるか否かを表すスピン(変数:第一のスピン)と、小閉路に含まれるエッジが有する二つのノードを大閉路に接続させるか否かを表すスピン(変数:第二のスピン)とを設定したイジングモデル(第一のイジングモデル)又はQUBOを生成する。
Next, in step B1, the Ising
具体的には、イジングモデル生成部53は、数3に示すようなイジングモデルを生成する。なお、イジングモデルは手動で生成してもよい。
Specifically, the Ising
ステップB2において、求解部54は、生成したイジングモデルに基づいて、量子アニーリングマシン10に求解させる。
At step B2, the
具体的には、ステップB2において、まず、求解部54は、イジングモデル生成部53から数3に示したイジングモデルを取得する。次に、ステップB2において、求解部54は、取得したイジングモデルに基づいて、量子アニーリングマシン10の量子処理部11を制御するための制御情報を生成する。その後、求解部54は、制御情報を含む制御信号を、制御部12に送信する。
Specifically, in step B<b>2 , first, the
次に、ステップB2において、求解部54は、制御部12に対して、量子処理部11に局所磁場を印加させる指示をし、その後、局所磁場を時間かけて弱めていくように指示をする。その結果、最終的に、数2のハミルトニアンHは最小の状態に収束する。
Next, in step B2, the solution-seeking
ステップB3において、経路生成部55は、量子ビットの状態を表す状態情報を用いて閉路を生成する。具体的には、ステップB3において、まず、経路生成部55は、量子アニーリングマシンの読取部13から状態情報を取得する。次に、ステップB3において、経路生成部55は、状態情報に基づいて、閉路を表す閉路情報を生成する。
At step B3, the
ところが、量子アニーリングにより大閉路を生成した場合、最短経路でないことがある。そこで、さらに精度を上げるために、ステップ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
[本実施形態の効果]
以上のように実施形態によれば、巡回セールスマン問題において、あらかじめ不要な経路を除外してから、量子アニーリングマシン10に量子アニーリングを実行させるので、閉路を生成する求解時間を短縮できる。
[Effect of this embodiment]
As described above, according to the embodiment, in the traveling salesman problem, the
また、複数の閉路が生成された場合でも、複数の閉路を一つの閉路にして、更に、補助処理を実行するので、より近似解となる閉路を生成することができる。 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
また、実施形態におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されてもよい。この場合は、例えば、各コンピュータが、それぞれ、取得部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
[物理構成]
ここで、実施形態におけるプログラムを実行することによって、閉路生成装置を実現するコンピュータについて図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
図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
CPU111は、記憶装置113に格納された、本実施形態におけるプログラム(コード)をメインメモリ112に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ112は、典型的には、DRAM(Dynamic Random Access Memory)等の揮発性の記憶装置である。また、本実施形態におけるプログラムは、コンピュータ読み取り可能な記録媒体120に格納された状態で提供される。なお、本実施形態におけるプログラムは、通信インターフェイス117を介して接続されたインターネット上で流通するものであってもよい。なお、記録媒体120は、不揮発性記録媒体である。
The
また、記憶装置113の具体例としては、ハードディスクドライブの他、フラッシュメモリ等の半導体記憶装置があげられる。入力インターフェイス114は、CPU111と、キーボード及びマウスといった入力機器118との間のデータ伝送を仲介する。表示コントローラ115は、ディスプレイ装置119と接続され、ディスプレイ装置119での表示を制御する。
Further, as a specific example of the
データリーダ/ライタ116は、CPU111と記録媒体120との間のデータ伝送を仲介し、記録媒体120からのプログラムの読み出し、及びコンピュータ110における処理結果の記録媒体120への書き込みを実行する。通信インターフェイス117は、CPU111と、他のコンピュータとの間のデータ伝送を仲介する。
Data reader/
また、記録媒体120の具体例としては、CF(Compact Flash(登録商標))及びSD(Secure Digital)等の汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)等の磁気記録媒体、又はCD-ROM(Compact Disk Read Only Memory)などの光学記録媒体があげられる。
Specific examples of the
なお、実施形態における閉路生成装置は、プログラムがインストールされたコンピュータではなく、各部に対応したハードウェアを用いることによっても実現可能である。更に、閉路生成装置は、一部がプログラムで実現され、残りの部分がハードウェアで実現されていてもよい。 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
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
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
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
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
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
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
112
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.
巡回セールスマン問題において与えられたグラフに含まれるノードを順次選択し、選択したノードごとに、選択したノードとそれ以外のノードで表されたエッジに関連付けられたコストを参照し、あらかじめ設定された順位以下のコストに対応するエッジを抽出する、抽出手段を有し、
前記求解手段は、抽出したエッジをスピンに設定した第二のイジングモデルに基づいて、前記量子アニーリングマシンに求解させる、
閉路生成装置。 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.
前記抽出手段は、前記求解ができない場合、前記順位を変更し、変更した前記順位に基づいて新たにエッジを抽出する、
前記求解手段は、新たに前記抽出されたエッジをスピンとした前記第二のイジングモデルに基づいて、前記量子アニーリングマシンに求解させる
閉路生成装置。 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.
巡回セールスマン問題において与えられたグラフに含まれるノードを順次選択し、選択したノードごとに、選択したノードとそれ以外のノードで表されたエッジに関連付けられたコストを参照し、あらかじめ設定された順位以下のコストに対応するエッジを抽出し、
抽出したエッジをスピンに設定した第二のイジングモデルに基づいて、前記量子アニーリングマシンに求解させる、
閉路生成方法。 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.
前記抽出において、前記求解ができない場合、前記順位を変更し、変更した前記順位に基づいて新たにエッジを抽出し、
前記求解において、新たに前記抽出されたエッジをスピンとしたイジングモデルに基づいて、前記量子アニーリングマシンに求解させる
閉路生成方法。 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.
前記プログラムが、前記コンピュータに、
巡回セールスマン問題において与えられたグラフに含まれるノードを順次選択し、選択したノードごとに、選択したノードとそれ以外のノードで表されたエッジに関連付けられたコストを参照し、あらかじめ設定された順位以下のコストに対応するエッジを抽出させ、
抽出したエッジをスピンに設定した第二のイジングモデルに基づいて、前記量子アニーリングマシンに求解させる、
命令を含むプログラム。 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.
前記抽出において、前記求解ができない場合、前記順位を変更し、変更した前記順位に基づいて新たにエッジを抽出させ、
前記求解において、新たに前記抽出されたエッジをスピンとしたイジングモデルに基づいて、前記量子アニーリングマシンに求解させる
命令を含むプログラム。 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.
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) |
-
2021
- 2021-04-22 JP JP2021072896A patent/JP2022167230A/en active Pending
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 |