JP6618454B2 - 計算装置、方法、及びプログラム - Google Patents
計算装置、方法、及びプログラム Download PDFInfo
- Publication number
- JP6618454B2 JP6618454B2 JP2016228651A JP2016228651A JP6618454B2 JP 6618454 B2 JP6618454 B2 JP 6618454B2 JP 2016228651 A JP2016228651 A JP 2016228651A JP 2016228651 A JP2016228651 A JP 2016228651A JP 6618454 B2 JP6618454 B2 JP 6618454B2
- Authority
- JP
- Japan
- Prior art keywords
- unit
- zdd
- calculation
- approximate solution
- zero
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Complex Calculations (AREA)
Description
図8において、ロボットに積める燃料は限られているため、移動可能な距離は制限されているものとする。この問題は,与えられたグラフ上でロボットが移動するパス(経路)を探す問題として表現できる(例えば、非特許文献1を参照)。
図1は、第1の実施形態に係る計算装置10の機能的な構成の一例を示すブロック図である。
図1に示すように、計算装置10は、入力部12と、ZDD構築部14と、近似解計算部16と、出力部18と、を備えている。なお、ZDDとは、Zero-suppressed Binary Decision Diagramの略であり、ゼロサプレス型二分決定グラフを意味する。
の入力を受け付ける。無向グラフGは、頂点集合Vと辺集合Eとにより定義され、無向グラフGにおける辺はエッジともいう。すなわち、無向グラフGは、(V、E)で表される。
は、無向グラフGにおける予め定められた制約を満たす部分グラフの集合として示される。
を保持するZDDを構築する。ZDDは、有向グラフZとして定義される。有向グラフZ、すなわち、ZDDは、ノード集合Nと枝集合Aとによって定義される。これらN、Aの要素はそれぞれ「ノード」、「枝」と呼ぶことにし、無向グラフG=(V、E)における「頂点」、「辺」と区別する。この場合、ZDDは、(N、A)で表される。ノード集合Nは、1つの根ノード及び2つの終端ノードを含む。ノード集合Nのうち2つの終端ノード以外の各ノードが頂点集合Vの頂点又は辺集合Eの辺でラベル付けされている。このZDDの構築方法については後述する。
が与えられた場合、計算装置10は、次のような劣モジュラ関数fの最大化問題(以下、問題(1)という。)に対する近似解を計算する。
は、制約を満たす部分グラフの全体からなる実行可能集合を表す。なお、2Eは辺集合Eの冪集合を表す。
は、無向グラフG上の長さ「4」以下の頂点sから頂点tへのパス全体の集合として示される。
は、無向グラフG上の部分グラフからなる任意の集合を表すことができる。このため、既存技術では扱うことのできない、パス制約よりも複雑な制約を満たす集合を扱うことができる。
本第1の実施形態に係る計算装置10は、操作者の操作により計算処理の実行が指示されると、CPUがROMに記憶されている計算プログラムを読み出して実行する。
の各々の入力を受け付ける。但し、実行可能集合
は、部分グラフの集合の全体を直接与える必要はなく、後述のZDDの構築に必要な情報(例えば、無向グラフG上の長さ「4」以下のs-tパスの集合)を与えればよい。
の全体を保持するZDDを構築する。このZDDは、例えば、参考文献(鈴木浩史,湊真一,ZDDを用いたグラフ列挙索引化における頂点インデックスの追加(特集「人工知能・機械学習技術の他分野への応用」および一般),人工知能基本問題研究会, 101:41-46, 2016.)に記載の方法を適用して構築することができる。
図4は、本実施形態に係るZDDの一例を示す模式図である。
図4に示すZDDは、図3に示す無向グラフGに対して構築したZDDの一例である。
を、図3に示す無向グラフG上の頂点v1から頂点v3へのパス全体(すなわち、
)とした場合に、実行可能集合
を保持するために構築されたものである。
とする。なお、2Aは枝集合Aの冪集合である。この場合、各パス
について定義されるER及びVRは、各X∈
及びV(X)⊆Vと1対1で対応する。
を、根ノードrから終端ノード1へのパス全体の集合
として保持する。
の中で、f(VR)の値を近似的に最大化するパス
を計算する。簡単のために、任意のZDD上のパスR⊆Aについて、f(VR)をf(R)と記載する。この場合、以下のZDD上のパス制約の下で劣モジュラ関数fの最大化問題(以下、問題(2)という。)を近似的に解くことになる。
本実施形態においては、図5に示すアルゴリズムに基づいて、近似解計算部16が上記の問題(2)に対する近似解を計算する。
を最大化する親ノードn’を選択し、根ノードrから親ノードn’までのパス
に、親ノードn’からノードnまでの枝(n’,n)を加えて、根ノードrからノードnまでのパス
とし、集合Uから、ノードnを削除する。そして、最終的に得られた根ノードrから終端ノード1までのパス
を解
として出力する。得られた解
は、上記問題(2)に対する(1-c)-近似解となる。但し、c∈[0,1]は、以下の式で定義される単調な劣モジュラ関数fの曲率である。
に対して、辺集合
を計算し、計算した辺集合
を、出力部18を介して出力する。この辺集合
は、上記問題(1)に対する(1-c)-近似解となることが保証される。
の情報をすべて保持することができる。このため、同一の制約下で異なる劣モジュラ関数fを繰り返し最大化する場合には、一度構築したZDDを再利用し、ZDD上での探索を行うだけで近似解を計算することが可能となる。
は変化しない。一方で、各頂点をセンシングすることによって得られる情報量は時間帯等によって変わり得るため、最大化する劣モジュラ関数fは変化し得る。このような状況下において、計算装置10は、計算毎に、劣モジュラ関数fの入力を受け付けるが、1回目の経路計算の際に構築したZDDを2回目以降の計算で再利用できるため、効率的に計算することができる。
上記の第1の実施形態では、単一の解を持つ問題の近似解を計算する計算装置10について説明したが、本第2の実施形態では、複数の解を持つ問題の近似解を計算する計算装置20について説明する。この問題は、一例として、複数のロボットの移動経路を計算する問題として示される。
図6に示すように、本第2の実施形態に係る計算装置20は、入力部22と、ZDD構築部24と、近似解計算部26と、暫定解処理部28と、出力部30と、を備えている。
はi番目の解の実行可能集合を表す。
は、総移動距離Li以下の頂点siから頂点tiへのパス全体を表す集合となる。以下、本第2の実施形態に係る計算装置20が備える各部について説明する。
の入力を受け付ける。つまり、入力部22は、予め定められた複数の制約の各々に対する、制約を満たす部分グラフの集合を示す実行可能集合
の各々の入力を受け付ける。
の各々に対してZDDを構築する。以下、実行可能集合
を保持するためのZDDを
という。
の各々に対して、ZDD構築部24により構築された
にて劣モジュラ関数fを最大化する部分グラフを近似解として計算する。近似解計算部26では、i=1,…,Mの順に、図5に示すアルゴリズムを用いて、
上での近似解を計算する。但し、i番目の回の計算の際に、既に得られた1番目からi-1番目までの解の情報を、後述の手順で利用する必要がある。そのための処理を暫定解処理部28により行う。
本第2の実施形態に係る計算装置20は、操作者の操作により計算処理の実行が指示されると、CPUがROMに記憶されている計算プログラムを読み出して実行する。
の各々の入力を受け付ける。
に対して、ZDDとしての
を、上述のステップ102で説明した手順と同様の手順で構築する。このとき、
となる組が存在する場合、
となるため、
の一方のみを構築すれば良い。特に、M台のロボットが全て頂点sからスタートして頂点tに移動する場合等では、各ロボットの移動距離の制約が同一であれば、
となるため、構築するZDDは1つだけでよい。
に基づいて、i=1,…,Mの順に、図5に示すアルゴリズムを用いて、
上での近似解を計算する。以下では、この近似解を
と記載する。
を計算する段階では、既に
は確定しているため、
は必ず最終的な解に含まれる。このことを考慮して、
を計算する際には、下記に示す任意のS⊆Vについて定義される単調な劣モジュラ関数
を最大化することを考える。
但し、
及び
に対して、図5に示すアルゴリズムを適用し、近似解
を計算する。
を計算する際に必要となる、
についての情報の処理を行う。すなわち、暫定解処理部28は、上記の
に対応する
(但し、i=1の場合は空集合)を計算し、計算結果を近似解計算部26に渡す。近似解計算部26は、暫定解処理部28から受け取った
に基づいて、
を計算する。また、暫定解処理部28は、近似解計算部26において新たな
が計算される度に、
に対する
を計算し、
を保持する。
から
を計算し、計算した
を、出力部30を介して出力する。最終的に得られる解
は、上記問題(3)に対する(1−c)/(2−c)-近似解となることが保証される。また、
が成り立つ場合は、この近似比の保証はさらに改善され、(1−e−1+c)-近似解となることが保証される。
12、22 入力部
14、24 ZDD構築部
16、26 近似解計算部
18、30 出力部
28 暫定解処理部
Claims (6)
- 頂点集合と辺集合とにより定義される無向グラフ、前記頂点集合上で定義される劣モジュラ関数、及び前記無向グラフにおける予め定められた制約を満たす部分グラフの集合を示す実行可能集合の入力を受け付ける入力部と、
前記入力部により入力を受け付けた実行可能集合を保持するゼロサプレス型二分決定グラフ(Zero-suppressed Binary Decision Diagram)であって、1つの根ノード及び2つの終端ノードを含むノード集合、並びに、枝集合により有向グラフとして定義されるゼロサプレス型二分決定グラフを構築するZDD構築部と、
前記ZDD構築部により構築されたゼロサプレス型二分決定グラフにて前記劣モジュラ関数を最大化する前記部分グラフを近似解として計算する近似解計算部と、
を備えた計算装置。 - 前記近似解計算部は、前記根ノードに近いノードから順に、前記劣モジュラ関数を最大化する前記根ノードから当該ノードまでのパスであって、前記パスが表す前記無向グラフの各頂点に対応する前記劣モジュラ関数を最大化するパスを確定させることにより、前記近似解を計算する請求項1に記載の計算装置。
- 前記入力部は、前記実行可能集合として、予め定められた複数の制約の各々に対する、前記制約を満たす部分グラフの集合を示す実行可能集合の各々の入力を受け付け、
前記ZDD構築部は、前記実行可能集合の各々に対して、前記ゼロサプレス型二分決定グラフを構築し、
前記近似解計算部は、前記実行可能集合の各々に対して、近似解を計算する請求項1又は2に記載の計算装置。 - 前記ZDD構築部は、同一の実行可能集合に対して、同一の前記ゼロサプレス型二分決定グラフを構築する請求項3に記載の計算装置。
- 入力部と、ZDD構築部と、近似解計算部と、を備えた計算装置における計算方法であって、
前記入力部が、頂点集合と辺集合とにより定義される無向グラフ、前記頂点集合上で定義される劣モジュラ関数、及び前記無向グラフにおける予め定められた制約を満たす部分グラフの集合を示す実行可能集合の入力を受け付けるステップと、
前記ZDD構築部が、前記入力部により入力を受け付けた実行可能集合を保持するゼロサプレス型二分決定グラフ(Zero-suppressed Binary Decision Diagram)であって、1つの根ノード及び2つの終端ノードを含むノード集合、並びに、枝集合により有向グラフとして定義されるゼロサプレス型二分決定グラフを構築するステップと、
前記近似解計算部が、前記ZDD構築部により構築されたゼロサプレス型二分決定グラフにて前記劣モジュラ関数を最大化する前記部分グラフを近似解として計算するステップと、
を含む計算方法。 - コンピュータを、請求項1〜4のいずれか1項に記載の計算装置の各部として機能させるための計算プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016228651A JP6618454B2 (ja) | 2016-11-25 | 2016-11-25 | 計算装置、方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016228651A JP6618454B2 (ja) | 2016-11-25 | 2016-11-25 | 計算装置、方法、及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018085017A JP2018085017A (ja) | 2018-05-31 |
JP6618454B2 true JP6618454B2 (ja) | 2019-12-11 |
Family
ID=62238458
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016228651A Active JP6618454B2 (ja) | 2016-11-25 | 2016-11-25 | 計算装置、方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6618454B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7093972B2 (ja) * | 2019-06-06 | 2022-07-01 | 日本電信電話株式会社 | 近似zdd構築方法、近似zdd構築装置及びプログラム |
-
2016
- 2016-11-25 JP JP2016228651A patent/JP6618454B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018085017A (ja) | 2018-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Pisinger et al. | Large neighborhood search | |
Luo et al. | Branch-and-price-and-cut for the multiple traveling repairman problem with distance constraints | |
Ma et al. | Multi-robot informative and adaptive planning for persistent environmental monitoring | |
CN103364004A (zh) | 路径搜索方法和路径搜索装置 | |
Pauwels et al. | Incremental predictive process monitoring: The next activity case | |
Eppstein | $ k $-best enumeration | |
Prodhon et al. | Metaheuristics for vehicle routing problems | |
Veerapen et al. | Tunnelling crossover networks for the asymmetric TSP | |
JP6806376B2 (ja) | 量子情報処理システム、量子情報処理方法、プログラム、及び記録媒体 | |
Zöller et al. | Incremental search space construction for machine learning pipeline synthesis | |
Turpin et al. | An approximation algorithm for time optimal multi-robot routing | |
JP6618454B2 (ja) | 計算装置、方法、及びプログラム | |
D’Angelo et al. | Distance queries in large-scale fully dynamic complex networks | |
Caballero-Morales et al. | An evolutive tabu-search metaheuristic approach for the capacitated vehicle routing problem | |
Almoustafa | Distance-constrained vehicle routing problem: exact and approximate solution (mathematical programming) | |
Holló-Szabó et al. | Bacterial memetic algorithm for asymmetric capacitated vehicle-routing problem | |
JP2020119108A (ja) | データ処理装置、データ処理方法、データ処理プログラム | |
Guo et al. | Bayesian network structure learning algorithms of optimizing fault sample set | |
Varol et al. | Neural network estimators for optimal tour lengths of TSP instances with arbitrary node distributions | |
López-Santana et al. | A hybrid scatter search algorithm to solve the capacitated arc routing problem with refill points | |
KR20150050603A (ko) | 경로 탐색 방법 및 그 장치 | |
van de Ven et al. | Boosting Local Search Using Machine Learning: A Study on Improving Local Search by Graph Classification in Determining Capacity of Shunting Yards | |
Paulsen et al. | Heuristic Approaches to minimize tour duration for the TSP with multiple time windows | |
Domala et al. | A survey on state-of-the-art applications of variable length chromosome (vlc) based ga | |
Gadliauskas et al. | Machine learning algorithm application in trip planning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20181210 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20191024 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20191105 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20191112 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6618454 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |