(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-18
(45)【発行日】2023-12-26
(54)【発明の名称】組合せ最適化問題情報送信装置および組合せ最適化問題求解装置
(51)【国際特許分類】
G06N 99/00 20190101AFI20231219BHJP
【FI】
G06N99/00 180
(21)【出願番号】P 2022543222
(86)(22)【出願日】2020-08-20
(86)【国際出願番号】 JP2020031450
(87)【国際公開番号】W WO2022038743
(87)【国際公開日】2022-02-24
【審査請求日】2022-12-22
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100103090
【氏名又は名称】岩壁 冬樹
(74)【代理人】
【識別番号】100124501
【氏名又は名称】塩川 誠人
(72)【発明者】
【氏名】鈴木 基己
(72)【発明者】
【氏名】井上 浩明
(72)【発明者】
【氏名】荒木 拓也
(72)【発明者】
【氏名】鷹野 芙美代
(72)【発明者】
【氏名】小林 悠記
(72)【発明者】
【氏名】千嶋 博
(72)【発明者】
【氏名】西村 考弘
(72)【発明者】
【氏名】矢田部 彰宏
【審査官】小太刀 慶明
(56)【参考文献】
【文献】特開2016-197389(JP,A)
【文献】米国特許出願公開第2012/0130928(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 99/00
(57)【特許請求の範囲】
【請求項1】
前回、解を求めた組合せ最適化問題を表す第1の行列と、最新の組合せ最適化問題を表す第2の行列との差分となる差分行列を算出する差分行列算出手段と、
前記差分行列を圧縮する差分行列圧縮手段と、
前記組合せ最適化問題の解を求める組合せ最適化問題求解装置に対して、圧縮後の差分行列を送信する送信手段とを備える
ことを特徴とする組合せ最適化問題情報送信装置。
【請求項2】
前記差分行列圧縮手段は、
CSR(Compressed Sparse Row )方式で、差分行列を圧縮する
請求項1に記載の組合せ最適化問題情報送信装置。
【請求項3】
前記差分行列圧縮手段は、
COO(COOdinate )方式で、差分行列を圧縮する
請求項1に記載の組合せ最適化問題情報送信装置。
【請求項4】
組合せ最適化問題は、前記第1の行列と前記第2の行列とを比較した場合に、ある行およびその行に対応する列の要素が異なり、他の要素が共通であるという性質を有する組合せ最適化問題であり、
前記差分行列圧縮手段は、
前記第1の行列と前記第2の行列とで要素が異なっている行に対応する差分行列の行および当該行のインデックス、または、前記第1の行列と前記第2の行列とで要素が異なっている列に対応する差分行列の列および当該列のインデックスを、差分行列の圧縮結果として定める
請求項1に記載の組合せ最適化問題情報送信装置。
【請求項5】
前回、解を求めた組合せ最適化問題を表す第1の行列を記憶する行列記憶手段と、
組合せ最適化問題に関する情報を送信する組合せ最適化問題情報送信装置から、前記第1の行列と、最新の組合せ最適化問題を表す第2の行列との差分となる差分行列の圧縮結果を受信する受信手段と、
前記圧縮結果から前記差分行列を復元する差分行列復元手段と、
復元された差分行列と、前記第1の行列とに基づいて、前記第2の行列を導出する行列導出手段と、
導出された前記第2の行列を用いて、前記組合せ最適化問題の解を求める求解手段と、
前記解を、前記組合せ最適化問題情報送信装置に送信する解送信手段とを備える
ことを特徴とする組合せ最適化問題求解装置。
【請求項6】
組合せ最適化問題に関する情報を送信する組合せ最適化問題情報送信装置と、
前記組合せ最適化問題の解を求める組合せ最適化問題求解装置とを備え、
前記組合せ最適化問題情報送信装置は、
前回、解を求めた組合せ最適化問題を表す第1の行列と、最新の組合せ最適化問題を表す第2の行列との差分となる差分行列を算出する差分行列算出手段と、
前記差分行列を圧縮する差分行列圧縮手段と、
前記組合せ最適化問題求解装置に対して、圧縮後の差分行列を送信する送信手段とを有し、
前記組合せ最適化問題求解装置は、
前記第1の行列を記憶する行列記憶手段と、
前記組合せ最適化問題情報送信装置の前記送信手段から、前記圧縮後の差分行列を受信する受信手段と、
前記圧縮後の差分行列から前記差分行列を復元する差分行列復元手段と、
復元された差分行列と、前記第1の行列とに基づいて、前記第2の行列を導出する行列導出手段と、
導出された前記第2の行列を用いて、前記組合せ最適化問題の解を求める求解手段と、
前記解を、前記組合せ最適化問題情報送信装置に送信する解送信手段とを有する
ことを特徴とする求解システム。
【請求項7】
コンピュータが、
前回、解を求めた組合せ最適化問題を表す第1の行列と、最新の組合せ最適化問題を表す第2の行列との差分となる差分行列を算出し、
前記差分行列を圧縮し、
前記組合せ最適化問題の解を求める組合せ最適化問題求解装置に対して、圧縮後の差分行列を送信する
ことを特徴とする組合せ最適化問題情報送信方法。
【請求項8】
コンピュータが、
前回、解を求めた組合せ最適化問題を表す第1の行列を記憶し、
組合せ最適化問題に関する情報を送信する組合せ最適化問題情報送信装置から、前記第1の行列と、最新の組合せ最適化問題を表す第2の行列との差分となる差分行列の圧縮結果を受信し、
前記圧縮結果から前記差分行列を復元し、
復元された差分行列と、前記第1の行列とに基づいて、前記第2の行列を導出し、
導出された前記第2の行列を用いて、前記組合せ最適化問題の解を求め、
前記解を、前記組合せ最適化問題情報送信装置に送信する
ことを特徴とする組合せ最適化問題求解方法。
【請求項9】
コンピュータに、
前回、解を求めた組合せ最適化問題を表す第1の行列と、最新の組合せ最適化問題を表す第2の行列との差分となる差分行列を算出する差分行列算出処理、
前記差分行列を圧縮する差分行列圧縮処理、および、
前記組合せ最適化問題の解を求める組合せ最適化問題求解装置に対して、圧縮後の差分行列を送信する送信処理
を実行させるための組合せ最適化問題情報送信プログラ
ム。
【請求項10】
コンピュータに、
前回、解を求めた組合せ最適化問題を表す第1の行列を記憶する行列記憶処理、
組合せ最適化問題に関する情報を送信する組合せ最適化問題情報送信装置から、前記第1の行列と、最新の組合せ最適化問題を表す第2の行列との差分となる差分行列の圧縮結果を受信する受信処理、
前記圧縮結果から前記差分行列を復元する差分行列復元処理、
復元された差分行列と、前記第1の行列とに基づいて、前記第2の行列を導出する行列導出処理、
導出された前記第2の行列を用いて、前記組合せ最適化問題の解を求める求解処理、および、
前記解を、前記組合せ最適化問題情報送信装置に送信する解送信処理
を実行させるための組合せ最適化問題求解プログラ
ム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、組合せ最適化問題に関する情報を送信する組合せ最適化問題情報送信装置、組合せ最適化問題の解を求める組合せ最適化問題求解装置、組合せ最適化問題情報送信装置と組合せ最適化問題求解装置とを含む求解システム、組合せ最適化問題情報送信方法、組合せ最適化問題求解方法、組合せ最適化問題情報送信プログラム、および、組合せ最適化問題求解プログラムに関する。
【背景技術】
【0002】
組合せ最適化問題を解く際に、イジングモデルのエネルギー関数が利用されている。なお、組合せ最適化問題の例として、勤務シフト最適化問題、巡回セールスマン問題、ナップサック問題等が挙げられる。ただし、組合せ最適化問題は、これらの問題に限らない。
【0003】
イジングモデルは、個々のスピンによって磁性体の振る舞いを表す統計力学上のモデルであるが、組合せ最適化問題の求解にも適用可能である。イジングモデルでは、個々のスピンの状態は、“1”または“-1”で表される。
【0004】
イジングモデルにおける“1”を第1の値と称することができる。また、イジングモデルにおける“-1”を第2の値と称することができる。
【0005】
組合せ最適化問題を解く場合、まず、組合せ最適化問題におけるエネルギーを表す式を作成する。例えば、巡回セールスマン問題を解く場合には、巡回セールスマン問題におけるエネルギーを表す式を作成する。そして、組合せ最適化問題におけるエネルギーを表す式を、イジングモデルにおけるエネルギー関数に変換する。この変換方法は、公知である。
【0006】
イジングモデルにおけるエネルギー関数は、以下の式(1)のように表される。
【0007】
【0008】
式(1)におけるi,jは、いずれもスピンを表す変数である。また、式(1)におけるsiは、スピンiの状態を表す変数であり、sjは、スピンjの状態を表す変数である。式(1)におけるhiは、スピンiに対応する定数である。iの取り得る値毎に、hiは定数として定められる。式(1)におけるJijは、スピンiおよびスピンjの組合せに対応する定数である。iの取り得る値とjの取り得る値の組合せ毎に、Jijは定数として定められる。
【0009】
式(1)における定数Jijは、スピンの数をK個としたときに、K2個存在する。そして、定数Jijの集合は、K行K列の行列で表される。すなわち、2つのスピンの組合せに対応する定数Jijは、K行K列の行列の要素である。以下、このK行K列の行列を符号αで表す。行列αは、対称行列である。
【0010】
また、式(1)における定数hiは、スピンの数をK個としたときに、K個存在する。そして、定数hiの集合は、K個の要素を持つベクトルで表される。各スピンに対応する各定数hiは、このベクトルの要素である。以下、このベクトルを符号βで表す。
【0011】
行列αおよびベクトルβは、組合せ最適化問題を表していると言える。また、式(1)のエネルギー関数が与えられれば、行列αおよびベクトルβも与えられることになる。
【0012】
ただし、組合せ最適化問題の種類によっては、式(1)に示すエネルギー関数において、右辺の第2項が存在しない場合もある(換言すれば、ベクトルβが存在しない場合もある)。
【0013】
式(1)に示すエネルギー関数が与えられた場合、最適な個々のスピンの状態(1または-1)を求める。最適な個々のスピンの状態は、そのエネルギー関数が示すエネルギーができるだけ小さくなるような個々のスピンの状態、または、そのエネルギー関数が示すエネルギーができるだけ大きくなるような個々のスピンの状態である。最適な個々のスピンの状態として、エネルギー関数が示すエネルギーができるだけ小さくなるような個々のスピンの状態を求めるか、エネルギー関数が示すエネルギーができるだけ大きくなるような個々のスピンの状態を求めるかは、例えば、外部から指定される。そのように得られた最適な個々のスピンの状態は、組合せ最適化問題の解を表している。
【0014】
また、特許文献1には、最新データと前回送信済みデータの差分情報を扱うシステムが記載されている。
【先行技術文献】
【特許文献】
【0015】
【発明の概要】
【発明が解決しようとする課題】
【0016】
組合せ最適化問題の解を求めるシステムとして、端末とサーバとを備えるシステムが考えられる。すなわち、端末には、組合せ最適化問題を表す行列αおよびベクトルβが入力され、その端末が行列αおよびベクトルβをサーバに送信し、サーバが、行列αおよびベクトルβを用いて組合せ最適化問題の解を求め、その解を端末に返す構成が考えられる。
【0017】
また、同種の組合せ最適化問題を繰り返し解く場合もある。この場合、組合せ最適化問題の解を求めようとする毎に端末が行列αおよびベクトルβをサーバに送信すると、行列αのデータ量は多いため、通信量が多くなってしまう。従って、行列αの通信コストが高くなり、端末からサーバへの行列αの送信が処理全体におけるボトルネックになってしまう。
【0018】
そこで、本発明は、ある装置から別の装置に、組合せ最適化問題に関する情報を送信し、その情報を受信した装置が組合せ最適化問題の解を求める場合において、情報の通信量を抑えることができるようにすることを目的とする。
【課題を解決するための手段】
【0019】
本発明による組合せ最適化問題情報送信装置は、前回、解を求めた組合せ最適化問題を表す第1の行列と、最新の組合せ最適化問題を表す第2の行列との差分となる差分行列を算出する差分行列算出手段と、差分行列を圧縮する差分行列圧縮手段と、組合せ最適化問題の解を求める組合せ最適化問題求解装置に対して、圧縮後の差分行列を送信する送信手段とを備えることを特徴とする。
【0020】
本発明による組合せ最適化問題求解装置は、前回、解を求めた組合せ最適化問題を表す第1の行列を記憶する行列記憶手段と、組合せ最適化問題に関する情報を送信する組合せ最適化問題情報送信装置から、第1の行列と、最新の組合せ最適化問題を表す第2の行列との差分となる差分行列の圧縮結果を受信する受信手段と、圧縮結果から差分行列を復元する差分行列復元手段と、復元された差分行列と、第1の行列とに基づいて、第2の行列を導出する行列導出手段と、導出された第2の行列を用いて、組合せ最適化問題の解を求める求解手段と、その解を、組合せ最適化問題情報送信装置に送信する解送信手段とを備えることを特徴とする。
【0021】
本発明による求解システムは、組合せ最適化問題に関する情報を送信する組合せ最適化問題情報送信装置と、組合せ最適化問題の解を求める組合せ最適化問題求解装置とを備え、組合せ最適化問題情報送信装置が、前回、解を求めた組合せ最適化問題を表す第1の行列と、最新の組合せ最適化問題を表す第2の行列との差分となる差分行列を算出する差分行列算出手段と、差分行列を圧縮する差分行列圧縮手段と、組合せ最適化問題求解装置に対して、圧縮後の差分行列を送信する送信手段とを有し、組合せ最適化問題求解装置が、第1の行列を記憶する行列記憶手段と、組合せ最適化問題情報送信装置の送信手段から、圧縮後の差分行列を受信する受信手段と、圧縮後の差分行列から差分行列を復元する差分行列復元手段と、復元された差分行列と、第1の行列とに基づいて、第2の行列を導出する行列導出手段と、導出された第2の行列を用いて、組合せ最適化問題の解を求める求解手段と、その解を、組合せ最適化問題情報送信装置に送信する解送信手段とを有することを特徴とする。
【0022】
本発明による組合せ最適化問題情報送信方法は、コンピュータが、前回、解を求めた組合せ最適化問題を表す第1の行列と、最新の組合せ最適化問題を表す第2の行列との差分となる差分行列を算出し、差分行列を圧縮し、組合せ最適化問題の解を求める組合せ最適化問題求解装置に対して、圧縮後の差分行列を送信することを特徴とする。
【0023】
本発明による組合せ最適化問題求解方法は、コンピュータが、前回、解を求めた組合せ最適化問題を表す第1の行列を記憶し、組合せ最適化問題に関する情報を送信する組合せ最適化問題情報送信装置から、第1の行列と、最新の組合せ最適化問題を表す第2の行列との差分となる差分行列の圧縮結果を受信し、圧縮結果から差分行列を復元し、復元された差分行列と、第1の行列とに基づいて、第2の行列を導出し、導出された第2の行列を用いて、組合せ最適化問題の解を求め、その解を、組合せ最適化問題情報送信装置に送信することを特徴とする。
【0024】
本発明による組合せ最適化問題情報送信プログラムは、コンピュータに、前回、解を求めた組合せ最適化問題を表す第1の行列と、最新の組合せ最適化問題を表す第2の行列との差分となる差分行列を算出する差分行列算出処理、差分行列を圧縮する差分行列圧縮処理、および、組合せ最適化問題の解を求める組合せ最適化問題求解装置に対して、圧縮後の差分行列を送信する送信処理を実行させる。
【0025】
本発明による組合せ最適化問題求解プログラムは、コンピュータに、前回、解を求めた組合せ最適化問題を表す第1の行列を記憶する行列記憶処理、組合せ最適化問題に関する情報を送信する組合せ最適化問題情報送信装置から、第1の行列と、最新の組合せ最適化問題を表す第2の行列との差分となる差分行列の圧縮結果を受信する受信処理、圧縮結果から差分行列を復元する差分行列復元処理、復元された差分行列と、第1の行列とに基づいて、第2の行列を導出する行列導出処理、導出された第2の行列を用いて、組合せ最適化問題の解を求める求解処理、および、その解を、組合せ最適化問題情報送信装置に送信する解送信処理を実行させる。
【発明の効果】
【0026】
本発明によれば、ある装置から別の装置に、組合せ最適化問題に関する情報を送信し、その情報を受信した装置が組合せ最適化問題の解を求める場合において、情報の通信量を抑えることができる。
【図面の簡単な説明】
【0027】
【
図1】本発明の実施形態の求解システムの構成例を示すブロック図である。
【
図2】前回行列と最新行列とで、第2行および第2列の要素が異なり、他の要素が共通である場合における差分行列の例を示す模式図である。
【
図3】頂点が2つのグループに分けられたグラフの例を示す模式図である。
【
図4】1回目に最新行列および最新ベクトルが端末に入力される場合の処理経過の例を示すシーケンス図である。
【
図5】2回目以降に最新行列および最新ベクトルが端末に入力される場合の処理経過の例を示すシーケンス図である。
【
図6】2回目以降に最新行列および最新ベクトルが端末に入力される場合の処理経過の例を示すシーケンス図である。
【
図7】組合せ最適化問題情報送信装置や組合せ最適化問題求解装置を実現するためのコンピュータの構成例を示すブロック図である。
【
図8】本発明の組合せ最適化問題情報送信装置の概要を示すブロック図である。
【
図9】本発明の組合せ最適化問題求解装置の概要を示すブロック図である。
【発明を実施するための形態】
【0028】
以下、本発明の実施形態を図面を参照して説明する。
【0029】
以下の説明では、イジングモデルにおけるエネルギー関数が与えられることにより、組合せ最適化問題を表す行列αおよびベクトルβが与えられる場合を例にして説明する。
【0030】
組合せ最適化問題を繰り返し解く際に、組合せ最適化問題を表す行列αの多くの要素は前回から変化せず、行列αの一部の要素のみが前回から変化する場合がある。本発明は、このような行列によって表される組合せ最適化問題の求解に適している。
【0031】
解を繰り返し求める際に、組合せ最適化問題を表す行列αの多くの要素は前回から変化せず、行列αの一部の要素のみが前回から変化するような組合せ最適化問題の一例として、株取引における動的ポートフォリオ最適化問題が挙げられる。この問題は、定められた資金をどの株にどれだけ配分すれば最適といえるかを特定する問題であり、ある所定期間毎に、動的ポートフォリオ最適化問題の解を求めることが考えられる。ここで、動的ポートフォリオ最適化問題を表す行列αの要素は、各株の収益率や期待収益率等によって影響を受ける。しかし、所定期間が経過しただけでは、各株の収益率や期待収益率等の変化は小さく、その結果、前回に動的ポートフォリオ最適化問題の解を求めたときの行列αと、最新の動的ポートフォリオ最適化問題の解を求めるときの行列αとを比較した場合、行列の多くの要素は前回から変化せず、行列の一部の要素のみが前回から変化する。
【0032】
また、組合せ最適化問題を表す行列αの多くの要素は前回から変化せず、行列αの一部の要素のみが前回から変化する場合というのは、上記のように時間経過に伴って組合せ最適化問題を繰り返し解く場合に限られない。
【0033】
例えば、組合せ最適化問題を表す行列αの要素が、ルールによって大きく影響を受けるパズルを繰り返し解く場合にも、組合せ最適化問題(本例では、パズル)を表す行列αの多くの要素は前回から変化せず、行列αの一部の要素のみが前回から変化する。
【0034】
また、例えば、1年分の勤務シフト最適化問題を1カ月毎の勤務シフト最適化問題に分け、12個の勤務シフト最適化問題の解をそれぞれ求める場合にも、組合せ最適化問題(本例では、勤務シフト最適化問題)を表す行列αの多くの要素は前回から変化せず、行列αの一部の要素のみが前回から変化する。
【0035】
前述のように、本発明は、このような行列によって表される組合せ最適化問題の求解に適している。
【0036】
図1は、本発明の実施形態の求解システムの構成例を示すブロック図である。
図1に示す求解システムは、組合せ最適化問題に関する情報を送信する組合せ最適化問題情報送信装置1と、その組合せ最適化問題の解を求める組合せ最適化問題求解装置2とを備える。
【0037】
組合せ最適化問題情報送信装置1は、例えば、端末によって実現される。以下、組合せ最適化問題情報送信装置1が端末によって実現される場合を例にして説明し、組合せ最適化問題情報送信装置1を端末1と記す。
【0038】
組合せ最適化問題求解装置2は、例えば、クラウドサーバ等のサーバによって実現される。以下、組合せ最適化問題求解装置2がサーバによって実現される場合を例にして説明し、組合せ最適化問題求解装置2をサーバ2と記す。
【0039】
端末1およびサーバ2は、通信ネットワーク(図示略)を介して、通信可能に接続されている。
【0040】
繰り返し組合せ最適化問題の解を求める場合において、最新の組合せ最適化問題を表す行列αおよびベクトルβを最新行列および最新ベクトルと記す。また、前回に解を求めた組合せ最適化問題を表す行列αを前回行列と記す。前回行列と最新行列とを比較した場合、多くの要素は共通であり、一部の要素のみが異なっている。
【0041】
端末1は、前回行列記憶部11と、差分行列算出部12と、差分行列圧縮部13と、問題送信部14と、解受信部15とを備える。
【0042】
端末1には、最新の組合せ最適化問題を表す最新行列および最新ベクトルが入力される。差分行列算出部12は、その最新行列を受け取り、問題送信部14は、その最新ベクトルを受け取る。
【0043】
ただし、1回目に最新行列および最新ベクトルが入力された場合、問題送信部14が、その最新行列および最新ベクトルを受け取り、問題送信部14は、その最新行列を前回行列記憶部11に記憶させ、さらに、その最新行列および最新ベクトルをサーバ2に送信する。
【0044】
なお、既に説明したように、組合せ最適化問題を表すベクトルβが存在しない場合もある。すなわち、式(1)に示すエネルギー関数において、右辺の第2項が存在しない場合もある。
【0045】
前回行列記憶部11は、前回、解を求めた組合せ最適化問題を表す行列α(前回行列)を記憶する記憶装置である。前回行列が存在している状態で、最新行列および最新ベクトルが入力されたとする。この場合、前回行列を第1の行列と称し、最新行列を第2の行列と称してもよい。
【0046】
以下の説明では、既に前回行列記憶部11に前回行列が記憶されている状態で、最新行列および最新ベクトルが入力され、差分行列算出部12が、その最新行列を受け取り、問題送信部14が、その最新ベクトルを受け取った場合について述べる。
【0047】
差分行列算出部12は、入力された最新行列と、前回行列記憶部11に記憶されている前回行列との差分となる差分行列を算出する。具体的には、差分行列算出部12は、最新行列から前回行列を減算することによって、差分行列を算出する。
【0048】
前述のように、前回行列と最新行列とを比較した場合、多くの要素は共通であり、一部の要素のみが異なっている。従って、差分行列は、疎行列となる。
【0049】
また、最新行列および前回行列は、いずれも組合せ最適化問題を表す行列であるので、対称行列である。従って、差分行列も対称行列である。
【0050】
差分行列算出部12は、差分行列を算出した後、前回行列記憶部11に記憶されている前回行列を最新行列で更新する。前回行列記憶部11に記憶された最新行列は、次回、最新行列が入力されたときに、前回行列として扱われる。
【0051】
差分行列圧縮部13は、差分行列算出部12によって算出された差分行列を圧縮する。上記のように、差分行列は疎行列である。よって、差分行列を圧縮することができる。
【0052】
差分行列圧縮部13は、CSR(Compressed Sparse Row )方式で、差分行列を圧縮してもよい。
【0053】
また、差分行列圧縮部13は、COO(COOdinate )方式で、差分行列を圧縮してもよい。
【0054】
また、前回行列と最新行列とを比較した場合、ある行およびその行に対応する列(例えば、行が第p行である場合における第p列)の要素が異なり、他の要素は変化しない(換言すれば、共通である)という性質を有する組合せ最適化問題がある。このような組合せ最適化問題の例として、Maxcut問題が挙げられる。Maxcut問題については、後述する。
【0055】
上記の性質を有する組合せ最適化問題において、前回行列と最新行列とを比較し場合に、ある行(本例では第2行とする。)およびその行に対応する第2列の要素が異なり、他の要素が共通であるとする。この場合の差分行列を模式的に、
図2に示す。
図2に示す差分行列において、第2行および第2列以外の要素は全て0になる。なお、第2行や第2列の要素の中に0となる要素が存在していてもよい。差分行列も対称行列であるであるので、第2行全体を抽出しても、第2列全体を抽出しても、同様の要素群が得られる(
図2参照)。
【0056】
本例では、前回行列と最新行列とで要素群が異なっている行は、第2行であり、差分行列圧縮部13は、その第2行に対応する差分行列の第2行、および、その行のインデックス“2”を、差分行列の圧縮結果として定めてもよい。また、本例では、前回行列と最新行列とで要素群が異なっている列は、第2列であり、差分行列圧縮部13は、その第2列に対応する差分行列の第2列、および、その列のインデックス“2”を、差分行列の圧縮結果として定めてもよい。
【0057】
前回行列と最新行列とで要素群が異なっている行および列が、第2行および第2列以外であっても、同様に、差分行列の圧縮結果を定めればよい。
【0058】
上記の圧縮方式を、便宜的に、第3の圧縮方式と記す。第3の圧縮方式は、上記の性質を有する組合せ最適化問題の解を求める場合に適用可能である。すなわち、上記の性質を有する組合せ最適化問題を繰り返し解く場合には、差分行列圧縮部13は、第3の圧縮方式で差分行列を圧縮してもよい。
【0059】
上記の性質を有するMaxcut問題について説明する。頂点が辺で繋がれた任意のグラフを考える。そして、頂点を2つのグループに分けるものとする。このように、頂点が2つのグループに分けられたグラフの例を
図3に示す。
図3に示すグラフにおいて、黒色で示した頂点が同じグループに属し、白色で示した頂点が同じグループに属している。また、
図3では、同じグループに属する頂点を繋ぐ辺を細線で示し、異なるグループに属する頂点を繋ぐ辺を太線で示している。また、各辺には、重みが定められている。Maxcut問題は、異なるグループに属する頂点を繋ぐ辺の重みの和が最大になるように、頂点群を2つのグループに分けるという組合せ最適化問題である。
【0060】
Maxcut問題におけるイジングモデルのエネルギー関数は、以下に示す式(2)のように表される。
【0061】
【0062】
式(1)と比較すると、式(2)では、式(1)の右辺の第2項がない。従って、Maxcut問題では、ベクトルβは存在しない。このようにベクトルβが存在しない場合、本実施形態におけるベクトルに関する処理は行わなくてよい。
【0063】
2つのグループをG1,G2とする。式(2)において、i,jは、頂点を表す変数である。siは、頂点iがグループG1に属する場合に“-1”を取り、頂点iがグループG2に属する場合に“1”を取る変数である。同様に、sjは、頂点jがグループG1に属する場合に“-1”を取り、頂点jがグループG2に属する場合に“1”を取る変数である。また、定数Jijは、頂点iと頂点jとを繋ぐ辺の重みである。また、ここでは、頂点iと頂点jとを繋ぐ辺の重みは、頂点iと頂点jとの距離であるものとする。
【0064】
1つの頂点の位置のみを毎回変えながら、Maxcut問題の解を繰り返し求めるとする。この場合、Maxcut問題を表す行列αにおいて、その頂点に対応する行および列の要素のみが変化し、他の要素は変化しない。よって、このようなMaxcut問題の解を繰り返し求める場合、差分行列の圧縮方式として、上記の第3の圧縮方式を用いることが好ましい。
【0065】
本実施形態では、差分行列の圧縮方式として、CSR方式、COO方式、および、第3の圧縮方式を挙げた。どの圧縮方式を採用するのかは、例えば、求解システムのユーザによって指定される。
【0066】
問題送信部14は、圧縮後の差分行列および最新ベクトルを、サーバ2に送信する。
【0067】
また、既に説明したように、1回目に最新行列および最新ベクトルが入力された場合には、問題送信部14は、その最新行列および最新ベクトルを、サーバ2に送信する。
【0068】
解受信部15は、サーバ2から、組合せ最適化問題の解を受信する。
【0069】
問題送信部14および解受信部15は、例えば、組合せ最適化問題情報送信プログラムに従って動作するコンピュータのCPU(Central Processing Unit )、および、そのコンピュータの通信インタフェースによって実現される。この場合、CPUが、コンピュータのプログラム記憶装置等のプログラム記録媒体から組合せ最適化問題情報送信プログラムを読み込み、そのプログラムに従って、通信インタフェースを用いて、問題送信部14および解受信部15として動作すればよい。
【0070】
また、差分行列算出部12および差分行列圧縮部13は、例えば、組合せ最適化問題情報送信プログラムに従って動作するコンピュータのCPUによって実現される。この場合、CPUが、上記のように、コンピュータのプログラム記憶装置等のプログラム記録媒体から組合せ最適化問題情報送信プログラムを読み込み、そのプログラムに従って、差分行列算出部12および差分行列圧縮部13として動作すればよい。
【0071】
前回行列記憶部11は、コンピュータが備える記憶装置によって実現される。
【0072】
サーバ2は、前回行列記憶部21と、問題受信部22と、差分行列復元部23と、最新行列導出部24と、求解部25と、解送信部26とを備える。
【0073】
サーバ2の前回行列記憶部21は、端末1の前回行列記憶部11と同様に、前回、解を求めた組合せ最適化問題を表す行列α(前回行列)を記憶する記憶装置である。
【0074】
問題受信部22は、問題送信部14から送信された圧縮後の差分行列および最新ベクトルを受信する。そして、問題送信部14は、圧縮後の差分行列を差分行列復元部23に入力し、最新ベクトルを求解部25に入力する。
【0075】
なお、端末1に、1回目に最新行列および最新ベクトルが端末1に入力された場合、前回行列記憶部21には前回行列は記憶されていない。このとき、問題受信部22は、問題送信部14から最新行列および最新ベクトルを受信すると、その最新行列および最新ベクトルを求解部25に入力するとともに、その最新行列を前回行列記憶部21に記憶させる。前回行列記憶部21に記憶された最新行列は、次に、問題受信部22が圧縮後の差分行列および最新ベクトルを受信したときに、前回行列として扱われる。
【0076】
差分行列復元部23は、圧縮後の差分行列(換言すれば、差分行列の圧縮結果)から、差分行列を復元する。
【0077】
差分行列圧縮部13において差分行列がCSR方式で圧縮される場合、差分行列復元部23は、CSR方式に対応する方法で、差分行列を復元すればよい。
【0078】
差分行列圧縮部13において差分行列がCOO方式で圧縮される場合、差分行列復元部23は、COO方式に対応する方法で、差分行列を復元すればよい。
【0079】
差分行列圧縮部13において差分行列が第3の圧縮方式で圧縮される場合、差分行列復元部23は、1行分の要素およびその行のインデックス、または、1列分の要素およびその列のインデックスを受け取る。ここでは、差分行列復元部23が1行分の要素およびその行のインデックスを受け取る場合を例にして説明する。この場合、差分行列復元部23は、そのインデックスが示す行、および、その行に対応する列に、その1行分の要素を格納し、他の要素には0を格納した対称行列を生成することによって、差分行列を復元する。例えば、差分行列復元部23が、
図2に示す第2行の各要素およびその行のインデックス“2”を受け取ったとする。この場合、差分行列復元部23は、第2行、および、第2列に、その1行分の要素を格納し、他の要素には0を格納した対称行列を生成することによって、
図2に示す差分行列を復元する。
【0080】
差分行列復元部23は、復元した差分行列を最新行列導出部24に入力する。
【0081】
最新行列導出部24は、復元された差分行列と、前回行列記憶部21に記憶されている前回行列とに基づいて、最新行列を導出する。具体的には、最新行列導出部24は、復元された差分行列と、前回行列とを加算することによって、最新行列を導出する。導出された最新行列は、端末1に入力された最新行列と同じ行列である。最新行列導出部24は、導出した最新行列を求解部25に入力する。
【0082】
最新行列導出部24は、最新行列を導出し、その最新行列を求解部25に入力した後、前回行列記憶部21に記憶されている前回行列をその最新行列で更新する。前回行列記憶部21に記憶された最新行列は、次に、問題受信部22が圧縮後の差分行列および最新ベクトルを受信したときに、前回行列として扱われる。
【0083】
求解部25は、最新行列導出部24から入力された最新行列と、問題受信部22から入力された最新ベクトルとを用いて、組合せ最適化問題の解(換言すれば、最適な個々のスピンの状態)を求める。求解部25は、例えば、シミュレーテッドアニーリングによって、組合せ最適化問題の解を求めてもよい。
【0084】
また、求解部25は、問題受信部22から最新行列および最新ベクトルが入力された場合には、その最新行列および最新ベクトルを用いて、組合せ最適化問題の解を求める。
【0085】
求解部25は、得られた解(組合せ最適化問題の解)を、解送信部26に入力する。
【0086】
解送信部26は、求解部25から入力された組合せ最適化問題の解を、端末1に送信する。この解は、端末1の解受信部15によって受信される。
【0087】
問題受信部22および解送信部26は、例えば、組合せ最適化問題求解プログラムに従って動作するコンピュータのCPU、および、そのコンピュータの通信インタフェースによって実現される。この場合、CPUが、コンピュータのプログラム記憶装置等のプログラム記録媒体から組合せ最適化問題求解プログラムを読み込み、そのプログラムに従って、通信インタフェースを用いて、問題受信部22および解送信部26として動作すればよい。
【0088】
また、差分行列復元部23、最新行列導出部24および求解部25は、例えば、組合せ最適化問題求解プログラムに従って動作するコンピュータのCPUによって実現される。この場合、CPUが、上記のように、コンピュータのプログラム記憶装置等のプログラム記録媒体から組合せ最適化問題求解プログラムを読み込み、そのプログラムに従って、差分行列復元部23、最新行列導出部24および求解部25として動作すればよい。
【0089】
前回行列記憶部21は、コンピュータが備える記憶装置によって実現される。
【0090】
次に、処理経過について説明する。本実施形態では、求解システムは、組合せ最適化問題を繰り返し解く。そして、組合せ最適化問題毎に、組合せ最適化問題を表す最新行列および最新ベクトルが端末1に入力される。以下の説明では、1回目に最新行列および最新ベクトルが端末1に入力される場合(すなわち、1回目の組合せ最適化問題を解く場合)と、2回目以降に最新行列および最新ベクトルが端末1に入力される場合(すなわち、2回目以降の組合せ最適化問題を解く場合)とを分けて説明する。なお、既に説明した事項については、以下では、適宜、説明を省略する。
【0091】
図4は、1回目に最新行列および最新ベクトルが端末1に入力される場合の処理経過の例を示すシーケンス図である。1回目に最新行列および最新ベクトルが端末1に入力される時点では、端末1の前回行列記憶部11、および、サーバ2の前回行列記憶部21には、組合せ最適化問題を表す行列は記憶されていない。
【0092】
1回目に最新行列および最新ベクトルが端末1に入力されると、端末1の問題送信部14は、入力された最新行列および最新ベクトルを受け取り、その最新行列を、前回行列記憶部11に記憶させる(ステップS1)。ステップS1で前回行列記憶部11に記憶された最新行列は、次回、最新行列および最新ベクトルが端末1に入力されるときに、前回行列として扱われる。
【0093】
ステップS1の後、問題送信部14は、最新行列および最新ベクトルをサーバ2に送信する(ステップS2)。
【0094】
サーバ2の問題受信部22は、その最新行列および最新ベクトルを受信し、その最新行列を前回行列記憶部21に記憶させる(ステップS3)。このとき、問題受信部22は、その最新行列および最新ベクトルを求解部25に入力する。ステップS3で前回行列記憶部21に記憶された最新行列は、次回、問題受信部22が圧縮された差分行列と最新ベクトルとを受信するときに、前回行列として扱われる。
【0095】
求解部25は、最新行列および最新ベクトルを用いて、組合せ最適化問題の解を求める(ステップS4)。
【0096】
次に、解送信部26は、ステップS4で得られた組合せ最適化問題の解を端末1に送信する(ステップS5)。
【0097】
端末1の解受信部15は、その組合せ最適化問題の解を受信する(ステップS6)。
【0098】
次に、2回目以降に最新行列および最新ベクトルが端末1に入力される場合について説明する。この場合、端末1の前回行列記憶部11、および、サーバ2の前回行列記憶部21には、前回行列が記憶されている。
【0099】
図5および
図6は、2回目以降に最新行列および最新ベクトルが端末1に入力される場合の処理経過の例を示すシーケンス図である。
【0100】
最新行列および最新ベクトルが端末1に入力されると、端末1の差分行列算出部12は、その最新行列を受け取り、その最新行列から、前回行列記憶部11に記憶されている前回行列を減算することによって、差分行列を算出する(ステップS11)。なお、このとき、問題送信部14は、入力された最新ベクトルを受け取る。
【0101】
ステップS11の後、差分行列算出部12は、前回行列記憶部11に記憶されている前回行列を最新行列で更新する(ステップS12)。ステップS12で前回行列記憶部11に記憶された最新行列は、次回のステップS11では前回行列として扱われる。
【0102】
次に、差分行列圧縮部13が、ステップS11で算出された差分行列を圧縮する(ステップS13)。
【0103】
次に、問題送信部14が、圧縮後の差分行列(差分行列の圧縮結果)と、最新ベクトルとをサーバ2に送信する(ステップS14)。
【0104】
サーバ2の問題受信部22は、その圧縮後の差分行列と、最新ベクトルとを受信する(ステップS15)。ここで、問題受信部22は、圧縮後の差分行列(差分行列の圧縮結果)を差分行列復元部23に入力し、最新ベクトルを求解部25に入力する。
【0105】
差分行列復元部23は、圧縮後の差分行列から、差分行列を復元する(ステップS16)。
【0106】
次に、最新行列導出部24は、復元された差分行列に、前回行列記憶部21に記憶されている前回行列を加算することによって、最新行列を導出する(ステップS17)。ステップS17で導出された最新行列は、端末1に入力された最新行列と同じ行列である。最新行列導出部24は、導出した最新行列を求解部25に入力する。
【0107】
最新行列導出部24は、前回行列記憶部21に記憶されている前回行列を、ステップS17で導出した最新行列で更新する(ステップS18、
図6参照)。ステップS18で前回行列記憶部21に記憶された最新行列は、次回のステップS17で前回行列として扱われる。
【0108】
また、求解部25は、最新行列および最新ベクトルを用いて、組合せ最適化問題の解を求める(ステップS19)。
【0109】
次に、解送信部26は、ステップS19で得られた組合せ最適化問題の解を端末1に送信する(ステップS20)。
【0110】
端末1の解受信部15は、その組合せ最適化問題の解を受信する(ステップS21)。
【0111】
本実施形態では、端末1において、差分行列算出部12が、最新行列と前回行列の差分となる差分行列を算出する。ここで、前回行列と最新行列とを比較した場合、多くの要素は共通であり、一部の要素のみが異なっている。従って、差分行列は、疎行列となる。そして、差分行列圧縮部13が、その差分行列を圧縮し、問題送信部14が圧縮後の差分行列と、最新ベクトルとをサーバ2に送信する。1回目の組合せ最適化問題を解く場合を除いて、このように、圧縮後の差分行列と、最新ベクトルとが、端末1からサーバ2に送信される。組合せ最適化問題を表す行列αのデータ量が多くても、1回目の組合せ最適化問題を解く場合を除いて、圧縮後の差分行列と、最新ベクトルとが、授受される。従って、端末1からサーバ2に組合せ最適化問題に関する情報を送信し、その情報を受信したサーバ2が組合せ最適化問題の解を求める場合において、端末1からサーバ2への情報の通信量を抑えることができる。
【0112】
なお、最新ベクトルに関しては、圧縮等されずに、端末1に入力された最新ベクトルがそのまま端末1からサーバ2に送信される。ここで、ベクトルのデータ量は少ないので、最新ベクトルがそのまま端末1からサーバ2に送信されても、通信コストにはあまり影響せず、あまり問題にならない。
【0113】
また、サーバ2では、差分行列復元部23が、圧縮後の差分行列から差分行列を復元し、最新行列導出部24が、その差分行列と前回行列とに基づいて、最新行列を導出する。そして、求解部25が、最新行列および最新ベクトルを用いて、組合せ最適化問題の解を求め、解送信部26がその解を端末1に送信する。従って、サーバ2が組合せ最適化問題の解を求め、その解を端末1に返すことができる。
【0114】
次に、本発明の実施形態の変形例について説明する。
【0115】
上記の実施形態では、最新ベクトルがそのまま端末1からサーバ2に送信される場合を説明した。端末1が、ベクトルに関しても、前回の組合せ最適化問題を表すベクトルと、最新ベクトルとの差分となる差分ベクトルを算出し、その差分ベクトルを圧縮してもよい。そして、端末1の問題送信部14は、圧縮後の差分行列および圧縮後の差分ベクトルをサーバ2に送信してもよい。そして、サーバ2は、圧縮後の差分ベクトルから差分ベクトルを復元し、復元された差分ベクトルと、前回の組合せ最適化問題を表すベクトルとに基づいて最新ベクトルを導出すればよい。なお、前述のように、ベクトルのデータ量は少ない。従って、前述の実施形態のように、端末1が最新ベクトルをそのままサーバ2に送信しても、端末1がサーバ2に圧縮後の差分行列を送信すれば、通信量を抑える効果は得られる。
【0116】
また、上記の実施形態では、差分行列の圧縮方式としてCSR方式、COO方式、第3の圧縮方式を示した。求解システムは、複数種類の圧縮方式の中から自動的に圧縮方式を選択してもよい。本変形例においても、組合せ最適化問題を表す行列αおよびベクトルβが繰り返し、端末1に入力される。差分行列圧縮部13は、最初の所定回数分(例えば、5回分)の入力ではそれぞれ、CSR方式、COO方式、第3の圧縮方式の各方式で差分行列を圧縮し、圧縮効率が最も高い圧縮結果を採用する。そして、問題送信部14は、圧縮後の差分行列、最新ベクトル、および、採用した圧縮結果に対応する圧縮方式を示す情報をサーバ2に送信する。サーバ2の差分行列復元部23は、その圧縮方式に対応する復元方法で、差分行列を復元すればよい。そして、最初の所定回数分(例えば、5回分)より後の入力では、最初の所定回数において最も採用回数が多かった圧縮方式で、差分行列を圧縮すればよい。
【0117】
また、上記の実施形態では、イジングモデルにおけるエネルギー関数が与えられることにより、組合せ最適化問題を表す行列αおよびベクトルβが与えられる場合を例にして説明した。組合せ最適化問題を表すことができるエネルギー関数として、QUBO(Quadratic Unconstrained Binary Optimization )におけるエネルギー関数を用いてもよい。
【0118】
QUBOは、個々のスピンの状態を“1”または“0”で表すモデルである。QUBOにおける“1”を、イジングモデルにおける“1”と同様に、第1の値と称することができる。また、QUBOにおける“0”を、イジングモデルにおける“-1”と同様に、第2の値と称することができる。
【0119】
組合せ最適化問題におけるエネルギーを表す式は、QUBOにおけるエネルギー関数に変換することもできる。この変換方法は公知である。また、イジングモデルにおけるエネルギー関数と、QUBOにおけるエネルギー関数とは、相互に変換可能である。
【0120】
QUBOにおけるエネルギー関数は、以下の式(3)のように表される。
【0121】
【0122】
式(3)におけるi,jは、いずれもスピンを表す変数である。また、式(3)におけるxiは、スピンiの状態を表す変数であり、xjは、スピンjの状態を表す変数である。式(3)におけるQijは、スピンiおよびスピンjの組合せに対応する定数である。iの取り得る値とjの取り得る値の組合せ毎に、Qijは定数として定められる。
【0123】
式(3)における定数Qijは、スピンの数をK個としたときに、K2個存在する。そして、定数Qijの集合は、K行K列の行列で表される。すなわち、2つのスピンの組合せに対応する定数Qijは、K行K列の行列の要素である。この行列は、対称行列である。
【0124】
また、この行列は、前述の行列αと同様に、組合せ最適化問題を表す行列であると言える。式(3)のエネルギー関数が与えられれば、上記の行列も与えられることになる。なお、QUBOでは、ベクトルβのようなベクトルは与えられない。
【0125】
前述の実施形態において、K2個の定数Qijを要素とする行列を適用してもよい。なお、この場合、QUBOではベクトルは与えられないので、前述の実施形態で説明したベクトルに関する処理は行わなくてよい。その他の点に関しては、前述の実施形態と同様である。
【0126】
次に、本発明の組合せ最適化問題情報送信装置1や組合せ最適化問題求解装置2を実現するコンピュータの構成例を説明する。組合せ最適化問題情報送信装置1と組合せ最適化問題求解装置2とは、別々のコンピュータによって実現される。しかし、この2つの装置を実現するためのコンピュータの構成は、いずれも
図7に例示するように表すことができる。
図7に例示するコンピュータ1000は、CPU1001と、主記憶装置1002と、補助記憶装置1003と、インタフェース1004と、通信インタフェース1005とを備える。
【0127】
組合せ最適化問題情報送信装置1として動作するコンピュータ1000では、補助記憶装置1003に組合せ最適化問題情報送信プログラムが記憶される。CPU1001は、そのプログラムを補助記憶装置1003から読み出し、そのプログラムを主記憶装置1002に展開し、そのプログラムに従って、上記の実施形態の組合せ最適化問題情報送信装置1の処理を実行する。
【0128】
組合せ最適化問題求解装置2として動作するコンピュータ1000では、補助記憶装置1003に組合せ最適化問題求解プログラムが記憶される。CPU1001は、そのプログラムを補助記憶装置1003から読み出し、そのプログラムを主記憶装置1002に展開し、そのプログラムに従って、上記の実施形態の組合せ最適化問題求解装置2の処理を実行する。
【0129】
補助記憶装置1003は、一時的でない有形の媒体の例である。一時的でない有形の媒体の他の例として、インタフェース1004を介して接続される磁気ディスク、光磁気ディスク、CD-ROM(Compact Disk Read Only Memory )、DVD-ROM(Digital Versatile Disk Read Only Memory )、半導体メモリ等が挙げられる。
【0130】
次に、本発明の概要について説明する。
図8は、本発明の組合せ最適化問題情報送信装置の概要を示すブロック図である。組合せ最適化問題情報送信装置は、差分行列算出手段72と、差分行列圧縮手段73と、送信手段74とを備える。
【0131】
差分行列算出手段72(例えば、差分行列算出部12)は、前回、解を求めた組合せ最適化問題を表す第1の行列(例えば、前回行列)と、最新の組合せ最適化問題を表す第2の行列(例えば、最新行列)との差分となる差分行列を算出する。
【0132】
差分行列圧縮手段73(例えば、差分行列圧縮部13)は、差分行列を圧縮する。
【0133】
送信手段74(例えば、問題送信部14)は、組合せ最適化問題の解を求める組合せ最適化問題求解装置(例えば、サーバ2)に対して、圧縮後の差分行列を送信する。
【0134】
そのような構成によって、組合せ最適化問題情報送信装置から組合せ最適化問題求解装置に送信する情報の通信量を抑えることができる。
【0135】
また、差分行列圧縮手段73は、CSR方式で、差分行列を圧縮してもよい。
【0136】
また、差分行列圧縮手段73は、COO方式で、差分行列を圧縮してもよい。
【0137】
また、組合せ最適化問題は、第1の行列と第2の行列とを比較した場合に、ある行およびその行に対応する列の要素が異なり、他の要素が共通であるという性質を有する組合せ最適化問題であり、差分行列圧縮手段73は、第1の行列と第2の行列とで要素が異なっている行に対応する差分行列の行および当該行のインデックス、または、第1の行列と第2の行列とで要素が異なっている列に対応する差分行列の列および当該列のインデックスを、差分行列の圧縮結果として定めてもよい。
【0138】
図9は、本発明の組合せ最適化問題求解装置の概要を示すブロック図である。組合せ最適化問題求解装置は、行列記憶手段81と、受信手段82と、差分行列復元手段83と、行列導出手段84と、求解手段85と、解送信手段86とを備える。
【0139】
行列記憶手段81(例えば、前回行列記憶部21)は、前回、解を求めた組合せ最適化問題を表す第1の行列(例えば、前回行列)を記憶する。
【0140】
受信手段82(例えば、問題受信部22)は、組合せ最適化問題に関する情報を送信する組合せ最適化問題情報送信装置(例えば、端末1)から、第1の行列と、最新の組合せ最適化問題を表す第2の行列(例えば、最新行列)との差分となる差分行列の圧縮結果を受信する。
【0141】
差分行列復元手段83(例えば、差分行列復元部23)は、その圧縮結果から差分行列を復元する。
【0142】
行列導出手段84(例えば、最新行列導出部24)は、復元された差分行列と、第1の行列とに基づいて、第2の行列を導出する。
【0143】
求解手段85(例えば、求解部25)は、導出された第2の行列を用いて、組合せ最適化問題の解を求める。
【0144】
解送信手段86(例えば、解送信部26)は、その解を、組合せ最適化問題情報送信装置に送信する。
【0145】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記の実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【産業上の利用の可能性】
【0146】
本発明は、組合せ最適化問題情報送信装置が組合せ最適化問題に関する情報を組合せ最適化問題求解装置に送信し、組合せ最適化問題求解装置が組合せ最適化問題の解を求める求解システムに好適に適用される。
【符号の説明】
【0147】
1 端末(組合せ最適化問題情報送信装置)
2 サーバ(組合せ最適化問題求解装置)
11 前回行列記憶部
12 差分行列算出部
13 差分行列圧縮部
14 問題送信部
15 解受信部
21 前回行列記憶部
22 問題受信部
23 差分行列復元部
24 最新行列導出部
25 求解部
26 解送信部