JP2021005363A - 二値空間において高次多項式から二次多項式に変換する発見的方法 - Google Patents

二値空間において高次多項式から二次多項式に変換する発見的方法 Download PDF

Info

Publication number
JP2021005363A
JP2021005363A JP2020051530A JP2020051530A JP2021005363A JP 2021005363 A JP2021005363 A JP 2021005363A JP 2020051530 A JP2020051530 A JP 2020051530A JP 2020051530 A JP2020051530 A JP 2020051530A JP 2021005363 A JP2021005363 A JP 2021005363A
Authority
JP
Japan
Prior art keywords
hobo
key
quadratic
space
auxiliary variable
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.)
Withdrawn
Application number
JP2020051530A
Other languages
English (en)
Inventor
マンダル・アブラディップ
Avradip Mandal
ロイ・アーナブ
Arnab Roy
ウパデアーエ・サルバギア
Upadhyay Sarvagya
隼人 牛島
Hayato Ushijima
隼人 牛島
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JP2021005363A publication Critical patent/JP2021005363A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/11Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/15Correlation function computation including computation of convolution operations
    • G06F17/156Correlation function computation including computation of convolution operations using a domain transform, e.g. Fourier transform, polynomial transform, number theoretic transform
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Algebra (AREA)
  • Computational Linguistics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Operations Research (AREA)
  • Complex Calculations (AREA)

Abstract

【課題】HOBO問題をQUBO問題に変換する方法を提供する。【解決手段】本方法は、HOBO問題の変数の複数のインデックスをソートすることによって、キー‐値対のデータ構造を作成することを含み、各キー‐値対におけるキーは、HOBO問題に現われる二次項の組み合わせに対応し、値は、関連付けられたキーを含む少なくとも三次のすべての項に対応する。前記データ構造の各キーについて二次化プロセスが実行される。二次化プロセスは、最も多数の関連付けられた値をもつキーを識別し、識別されたキーを補助変数で置き換え、前記補助変数の置き換えに対応するように、前記データ構造を更新し、前記補助変数と、前記補助変数が置き換えた二次項とをデータ・マップにおける対として記憶することを含む。本方法は、前記データ・マップ内の各対について二次多項式を構築することも含んでいてもよい。【選択図】図1

Description

本開示において議論される実施形態は、二値空間において高次多項式を二次多項式に変換する発見的方法に関する。
高次二値変数最適化(higher order binary optimization、HOBO)は、制約なし二次二値変数最適化(quadratic unconstrained binary optimization、QUBO)問題の一般化であり、項の総次数は2より大きくてもよい。近年、QUBO問題は、多様な異なる応用に適用できることで関心を集めている。より具体的には、QUBOモデルは、部分的には物理学におけるイジング問題とのその関連のために、量子アニーリングとして知られる量子計算分野の基盤として台頭し、パターンマッチングおよび神経形態学的〔ニューロモーフィック〕コンピューティングを含む多様な異なる応用における研究の対象となっている。QUBOモデルの可能性ならびに伝統的なモデル化および解決方法論の代替としてのその有効性については広範な研究が行なわれてきたが、HOBOモデルはそれほど広範には研究されておらず、そのような問題の解法に向けたアプローチはほとんどない。
本開示において請求される主題は、何らかの欠点を解決する、または上記のような環境においてのみ動作する実施形態に限定されない。むしろ、この背景は、本開示に記載されるいくつかの実施形態が実施されうる一つの例示的な技術分野を示すために与えられているだけである。
ある実施形態のある態様によれば、高次二値変数最適化(HOBO)問題を制約なし二次二値変数最適化(QUBO)問題に変換する方法が記述される。この方法は、HOBO問題の変数の複数のインデックスをソートすることによって、キー‐値対のデータ構造を作成することを含み、キー‐値対の各対におけるキーは、HOBO問題に現われる二次項のあらゆる可能な組み合わせに対応し、キー‐値対の各対における値は、関連付けられたキーを含む少なくとも三次のすべての項に対応する。この方法は、前記データ構造の各キーについて、前記キー‐値対のうち、最も多数の関連付けられた値をもつキーを識別し、識別されたキーを補助変数で置き換え、前記補助変数の置き換えに対応するように、前記データ構造のキー‐値対のキーおよび値を更新し、前記データ構造からHOBOにおける識別されたキーを含んでいたすべての三次項を削除することを含む、二次化プロセスを実行することを含んでいてもよい。二次化プロセスは、識別されたキーのすべての値が削除されたことを判別すると、該識別されたキーを前記データ構造から削除し、前記補助変数と、前記補助変数が置き換えた識別されたキーの二次項とをデータ・マップにおける対として記憶することをも含んでいてもよい。さらに、この方法は、前記データ・マップ内の各対について二次多項式を構築することも含んでいてもよい。
実施形態の目的および利点は、少なくとも、特許請求の範囲において特に指摘される要素、特徴、および組み合わせによって実現され、達成される。
上述の一般的説明および下記の詳細な説明はいずれも、例として与えられており、説明するものであって、特許請求の範囲に記載された本発明を制約するものではない。
例示的実施形態が、添付の図面を使用することにより、さらなる具体性および詳細を伴って記述され、説明される。
高次二値変数最適化問題(HOBO)を制約なし二次二値変数最適化問題(QUBO)に変換することに関連する例示的な環境を表わす図である。
例示的な動作フローを示す図である。
別の例示的な動作フローを示す図である。
HOBO問題からQUBO問題への変換を実行する際に支援するように構成されうる例示的なコンピューティング・システムを示す図である。
HOBO問題からQUBO問題への変換を実行するための例示的な方法のフローチャートである。
HOBO問題からQUBO問題への変換を実行するための例示的な方法の別のフローチャートである。
高次二値変数最適化(HOBO)は、二値変数の多項式を最小化することを目的とした離散最適化問題である。そのような二値変数最適化問題は、イジング空間(変数は{−1,+1}の集合における値)またはブール空間(変数は{0,1}の集合における値)のいずれかで考えられる。しかしながら、両空間は、線形変換および制約条件の追加を用いて相互に変換できるという点で、等化と考えられる。
よって、HOBO問題は次のように表現できる。
Figure 2021005363
ここで、ブール空間で考えるときはx∈{0,1}n、あるいはイジング空間で考えるときはx∈{−1,+1}nのいずれかである。
HOBO問題は、組合せ最適化、機械学習、数学的プログラミング、および多様な他の応用においていたるところに現われる。これらは、実際的な問題をモデル化するのに特に有用である。たとえば、ブール充足可能性は、ブール空間におけるHOBO問題としてモデル化できる。さらに、ブール空間における連立線形方程式を解くことは、イジング空間におけるHOBOとしてモデル化できる。しかしながら、HOBO問題モデル化の難しさは、一般性を失うことなく、解が満たさねばならない制約条件や条件がないと仮定できることである。よって、QUBO問題はHOBO問題の特殊なケースであるので、計算的には、そのような問題のクラスは、手に負えないまたは解くことができない。
HOBO問題を解くための一つの技法は、最適化が二値変数上で行なわれるという面を利用することであり、それは任意のHOBO問題を、補助変数を加えてQUBO問題に変換することを許容する。しかしながら、そのような解決策の一つの難点は、典型的には、補助変数の数がもとの変数の数とともに指数関数的に増加することである。
HOBO問題とは対照的に、QUBO問題は、目的関数の任意の項が一次または二次のいずれかである場合の二値変数最適化問題である。
Figure 2021005363
ここで、すべてのi∈{1,2,…,n}について、ブール空間で考えるときはx∈{0,1}n、あるいはイジング空間で考えるときはx∈{−1,+1}nのいずれかである。
現在、いくつかの困難な組合せ最適化問題がQUBO問題によってモデル化されている。たとえば、非特許文献1は、二次多項式を最適化することによって表現できる3つのNP困難な最適化問題を論じている。そのウェブサイトに記載されている具体的な一つの方法は、多項式最適化問題として、マックスカットを、あるいは任意のグラフについて、可能な限り多くのエッジをカットする頂点集合の二分割を、定式化する能力を含む。
https://www.sumofsquares.org/public/lec02-1_maxcut.html
HOBO問題をQUBO問題に変換する以前の試みがあるが、このプロセスは変換を困難にするさまざまな課題を有する。より具体的には、この変換は、一般的な多項式を最小化または最大化することを必要とするのだが、それは、容易に利用できる特性がないこと、最適化を視覚化することの困難、および最後に、コンパクトな集合においてさえ、最適化問題が手に負えないまたは解けないことがありうることを含む、多様な課題に直面する。
しかしながら、本明細書に記載されているように、二値変数上では、HOBO問題からQUBO問題への変換は、現在知られており、当技術分野で使用されている方法およびシステムに対して改善されたモデリング技術を提供する。より具体的には、二値変数を同じ範囲内の実数に制約することによって、モデリングを実行するための多様なオプションが利用可能となる。さらに、近似戦略、改善された発見的技術が改善され、問題は幾何学的により容易に視覚化される。さらに、線形代数からの技法が使用可能であり、より扱いやすい最適化戦略があり、近最適解を保証する丸めまたは近似が利用可能である状況がある。
しかしながら、HOBO問題からQUBO問題への変換を実行する際の主な困難は、いくつかの事例では、変換プロセスの間に補助変数の数が指数関数的に増加することである。よって、いくつかの事例では、変数の数がふくれあがる、あるいは簡単に解くには大きすぎるほどになるという問題があることがある。しかしながら、改善されたコンピューティング装置とともにますます容易に利用可能になりつつある改善された処理能力により、この困難さは、これらの変換に対する不可能な障害ではないかもしれない。
二値変数最適化問題はイジング空間およびブール空間の両方で表現でき、次のアフィン変換を用いて互いに交換可能である:
y=1−2x
ここで、x∈{0,1}、y∈{−1,+1}である。
ブール空間においてHOBO問題をQUBO問題に変換するプロセスは広範に研究されてきたが、これまでイジング空間におけるHOBO問題からQUBO問題への変換は無視されてきた。それにもかかわらず、イジング空間は、量子化学、量子物理学、計算機科学、組み合わせ論、その他にわたる多くの分野で普遍的になっている。
さらに、イジング空間における疎なHOBO問題は、ブール空間における密なHOBO問題に導くことができ、それは、ブール空間における密なHOBO問題をブール空間におけるQUBO問題に変換するためにより多くの補助変数を必要とする。たとえば、次の式を考える。
Figure 2021005363
与えられた式において、該与えられた式の左辺は、該式の右辺よりもはるかに少ない補助変数を要求する。よって、この特定の式は、イジング空間におけるQUBO問題への変換の可能性により好適である。
ブール空間上のHOBO問題からQUBO問題への変換
ブール空間における次のHOBO問題について:
Figure 2021005363
第一段階として、y1=x1x2およびy2=x3x4がHOBO問題に代入されてもよく、HOBO問題を制約付き二次二値変数最適化(QCBO)問題にすることができる。よって、結果として得られる式は次のようになる。
Figure 2021005363
QCBO問題への還元に続いて、多項式を使って目的関数において、制約条件y1=x1x2およびy2=x3x4が強制される。制約条件が満たされれば目的関数への寄与がゼロとなる。逆に、制約が満たされない場合、目的関数への寄与は正である。この段階を用いて、導入された多項式は、定数、線形または二次項を有する。
解として、ローゼンバーグ(Rosenberg)多項式を適用することができる。これは、ターゲット補助変数がx1x2に等しい場合にのみ最小値を達成する二次多項式である。ローゼンバーグ多項式は次のようなものである:
Figure 2021005363
イジング空間上のHOBO問題からQUBO問題への変換
イジング空間における次のHOBO問題について:
Figure 2021005363
第一段階として、y1=x1x2およびy2=x3x4がHOBO問題に代入されてもよく、HOBO問題を制約付き二次二値変数最適化(QCBO)問題にすることができる。よって、結果として得られる式は次のようになる。
Figure 2021005363
QCBO問題への還元に続いて、多項式を使って目的関数において、制約条件y1=x1x2およびy2=x3x4が強制される。制約条件が満たされれば目的関数への寄与がゼロとなる。逆に、制約が満たされない場合、目的関数への寄与は正である。この段階を用いて、導入された多項式は、定数、線形または二次項を有する。
本発明のいくつかの実施形態の目的の一つは、ターゲット補助変数がy1=x1x2であるときにのみイジング空間において最小値を達成する二次多項式を提供することである。本明細書に記載されているところでは、単にyを補助変数として表わすのでは、実行不可能な連立不等式につながる。
より具体的には、目的は、
Figure 2021005363
となるような二次多項式pを構築することである:
Figure 2021005363
とする。相等条件の集合は次のようになる:
Figure 2021005363
よって、Aは、Eの右カーネルにあり、次の諸基底ベクトルによって与えられる:
Figure 2021005363
結果として得られる不等式条件は次のようになる:
Figure 2021005363
FKDの4つの項目の和がゼロであることがわかる。よって、すべてが1以上であることはできない。よって、実行可能解はない。
それにもかかわらず、本明細書に記載される実施形態の一つの利点は、実行可能解を提供する二次多項式pの構築である。より具体的には、解を見出すために追加の「ダミー」変数dを加えることができる。そのために、次の二つの条件が表現される:
1:y1=x1x2であるときは、dの一部の選択について、多項式は0に等しいべきである。
2:y1≠x1x2であるときは、dのすべての選択について、多項式は正になるべきである。
Figure 2021005363
となるように二次多項式pを構築するために:
x1およびx2の関数としてのdの各選択について、記載された制約条件は連立線形不等式を生じさせる。実行可能解の16とおりの選択肢のうちから、オープンソースの数学ソフトウェア・システムであるSageMathは、次の系が解であると述べられる。
Figure 2021005363
本明細書に記載されるシステムおよび方法は、HOBO問題をQUBO問題に変換する発見的アプローチを提供し、イジング空間およびブール空間の両方における実施形態を提供する。当業者に理解されうるように、本明細書におけるシステムおよび方法は、基礎となるHOBO問題が高次項において疎である場合、特に有益である。
本開示の実施形態は、添付の図面を参照して説明される。
図1は、本開示に記載される少なくとも一つの実施形態に従って構成された、HOBO問題のQUBO問題への発見的変換の実行に関連する例示的環境100を表わす図である。図1に示されるように、本明細書の実施形態は、変換モジュール120によって実行できる方法およびシステムに向けられる。変換モジュールは、HOBO問題110からなる入力を受領し、HOBO問題110をQUBO問題130に変換することができる。当業者によって理解されうるように、この変換または転換を実行することによって、変換モジュール130Fは、独立して、またはQUBO問題を解くために特別に構成された多様な異なるコンピューティング・アプリケーションとの関連で、使用されうる。よって、そのような変換を実行する能力は、HOBO問題に対する能力を拡大する。HOBO問題は、既存のシステムを使って、または処理電力における過度な追加なしに解決されるべき、物理学、計算機科学、量子化学、量子物理学、組合わせ論、およびその他といった、多様な分野において今日広く見られる。
図2は、本開示の少なくとも一つの実施形態による、例示的な動作フロー200を示す。動作フロー200は、本発明の第1の実施形態による、HOBO問題をQUBO問題に変換するための動作フローを示しうる。たとえば、動作フロー200は、変換モジュール120においてHOBO問題110の入力を受け取り、手に負えないものではないQUBO問題130の出力を生成することを示していてもよい。
容易に理解されうるように、環境100は単一の変換モジュール120を含むものとして示されているが、環境100は、多様な異なる応用において、特にHOBO問題110およびQUBO問題130の両方を利用するように構成された他のシステムとの関連で使用されてもよいことを理解しておくべきである。このように、環境100は、たとえば物理学、計算機科学、量子化学、量子物理学、組合わせ論、またはその他のさまざまな分野を表わすデータを受け取り、解を見出すために、そのデータをHOBO問題および/またはQUBO問題として分析するよう特別に設計された機械学習環境または他のコンピューティング環境に関連して、またはそれらの一部として、使用されてもよい。このように、変換モジュール120は、図4に関してより下記でより十全に述べる装置のような、単一のスタンドアローンのコンピューティング装置から構成されてもよく、変換モジュール120は、HOBO問題および/またはQUBO問題として分析されるべき入力データを受信する、感知する、またはさもなくば生成するように構成された別のコンピューティング装置のコンポーネントまたはサブモジュールとして存在してもよい。
よって、本開示の範囲から逸脱することなく、図1に修正、追加、または省略を行なってもよい。たとえば、環境100は、本開示において図示されかつ説明されたものよりも多くの、または少ない要素を含んでいてもよい。
図4は、本開示の少なくとも一つの実施形態による、HOBO問題をQUBO問題に変換するのを支援するように構成されうる例示的なコンピューティング・システム402のブロック図を示す。コンピューティング・システム402は、変換モジュール(たとえば、図1の変換モジュール120)および/または実行環境(たとえば、図1の実行環境130)に関連する一つまたは複数の動作を実装するまたは指示するように構成されてもよい。コンピューティング・システム402は、プロセッサ450、メモリ452、およびデータ記憶装置454を含んでいてもよい。プロセッサ450、メモリ452、およびデータ記憶装置454は、通信的に結合されてもよい。
一般に、プロセッサ450は、さまざまなコンピュータハードウェアまたはソフトウェアモジュールを含む、任意の好適な特殊目的または汎用コンピュータ、計算エンティティ、または処理装置を含むことができ、任意の適用可能なコンピュータ読み取り可能記憶媒体に記憶された命令を実行するように構成することができる。たとえば、プロセッサ450は、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、またはプログラム命令を解釈および/または実行するおよび/またはデータを処理するように構成された任意の他のデジタルまたはアナログ回路を含んでいてもよい。図4では単一のプロセッサとして示されているが、プロセッサ450は、個別にまたは集合的に、本開示に記載された任意の数の動作を実行するまたは該実行を指揮するように構成された任意の数のプロセッサを含んでいてもよい。さらに、一つまたは複数のプロセッサが、一つまたは複数の異なる電子デバイス、たとえば、異なるサーバー上に存在してもよい。
いくつかの実施形態において、プロセッサ450は、メモリ452、データ記憶装置454、またはメモリ452およびデータ記憶装置454に記憶されたプログラム命令を解釈および/または実行する、および/またはデータを処理するように構成されてもよい。いくつかの実施形態では、プロセッサ450は、データ記憶装置454からプログラム命令をフェッチし、該プログラム命令をメモリ452にロードしてもよい。プログラム命令がメモリ452にロードされた後、プロセッサ450は、プログラム命令を実行してもよい。
メモリ452およびデータ記憶装置454は、コンピュータ実行可能な命令またはデータ構造を担持するまたは記憶するためのコンピュータ読取可能な記憶媒体を含んでいてもよい。そのようなコンピュータ読取可能な記憶媒体は、プロセッサ350のような汎用または専用コンピュータによってアクセスされうる任意の利用可能な非一時的媒体を含んでいてもよい。限定ではなく例として、そのようなコンピュータ読取可能記憶媒体は、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、電気的に消去可能なプログラマブル読み出し専用メモリ(EEPROM)、コンパクトディスク読み出し専用メモリ(CD-ROM)または他の光ディスク記憶、磁気ディスク記憶または他の磁気記憶デバイス、フラッシュメモリデバイス(たとえば、ソリッドステートメモリデバイス)、またはコンピュータ実行可能命令またはデータ構造の形で特定のプログラムコードを担持または記憶するために使用されてもよく、汎用または特殊目的のコンピュータによってアクセスされうる任意の他の非一時的記憶媒体を含む、有形または非一時的なコンピュータ読取可能記憶媒体を含んでいてもよい。これらおよび他の実施形態において、本開示で説明される「非一時的」という用語は、In re Nuijten, 500 F.3d 1346の連邦巡回控訴裁判所の決定(Fed. Cir. 4007)において特許可能な主題の範囲外であると認定された型の一時的媒体のみを除外すると解釈されるべきである。上記の組み合わせも、コンピュータ読取可能媒体の範囲内に含まれうる。
上記の組み合わせも、コンピュータ読取可能媒体の範囲内に含まれうる。コンピュータ実行可能命令は、たとえば、プロセッサ450にある動作または動作群を実行させるように構成された命令およびデータを含んでいてもよい。
本開示の範囲から逸脱することなく、コンピューティング・システム402に修正、追加、または省略を行なってもよい。たとえば、いくつかの実施形態では、コンピューティング・システム402は、明示的に図示または説明されていなくてもよい、任意の数の他の構成要素を含んでいてもよい。
図2〜図3を戻ると、図2は、本開示に記載された少なくとも一つの実施形態による、HOBO問題をQUBO問題に変換する発見的プロセスを提供する例示的方法200のフローチャートである。方法200は、任意の好適なシステム、装置、またはデバイスによって実行されうる。たとえば、方法200の一つまたは複数の動作は、図1の環境100の一つまたは複数の要素によって、または図4のコンピューティング・システム402または図4のコンピューティング・システム402複数によって実行されてもよい。離散的なブロックで示されているが、方法200のブロックの一つまたは複数に関連するステップおよび動作は、具体的な実装に依存して、追加的なブロックに分割されてもよく、より少数のブロックに組み合わされてもよく、あるいはなくされてもよい。
方法200は、ブロック210で始まってもよく、ここで、HOBO問題の変数の複数のインデックスのそれぞれがソートされ、キー‐値対のデータ構造が作成される。各キー‐値対について、キーは、HOBO問題内に現われる二次項のあらゆる可能な組み合わせで構成される。各キーに関連付けられた値は、関連付けられたキーを含む少なくとも3次のすべての項で構成される。
ブロック212では、データ構造内に格納されたキー‐値対のキーであって、最大数の関連付けられた値を有するものが識別される。最も多くの関連付けられた値を持つキーを識別すると、ブロック214では、識別されたキーは補助変数で置き換えられる。
ブロック216では、前記補助変数の置き換えに基づいて前記データ構造が更新され、前記補助変数に応答して、新しいキーおよび関連付けられた値が追加される。さらに、ステップ218において、識別されたキーを含むすべての3次項が削除される。ステップ220では、識別されたキーのすべての値が削除されたと判定された場合、識別されたキーはデータ構造から削除される。
ステップ222では、前記補助変数と、前記識別されたキーの二次項とが、データ・マップ内にペアとして格納される。ブロック212〜222は、本明細書では集団的二次化プロセス223と称され、ステップ224ですべてのキー、またはHOBO問題における二次項の残りの可能な組み合わせが、ステップ210で作成されたデータ構造から削除されたと判断されるまで繰り返される。ステップ226では、データ・マップ内の各対について二次多項式が構築される。
前述したように、本明細書の実施形態は、イジングおよびブール空間の両方において二次多項式を生成することができる。より具体的には、ステップ226において、所望の出力がブール空間用であるかイジング空間用であるかに応じて、本明細書に記載される式(1)または式(2)のいずれかが、データ・マップ内の各対について二次多項式をそれぞれ生成するために適用されてもよい。
本開示の範囲から逸脱することなく、方法200を修正、追加、または省略を行なってもよい。たとえば、方法200の動作は、異なる順序で実施されてもよい。追加的または代替的に、二つ以上の動作が同時に実行されてもよい。さらに、概説された動作およびアクションは、例として与えられているだけであり、かかる動作およびアクションのいくつかは、任意的であってもよく、より少ない動作およびアクションに組み合わされてもよく、または開示される実施形態の本質を損なうことなく、追加的な動作およびアクションに展開されてもよい。たとえば、図5に関して以下により十全に説明されるように、上述の方法200は、枝刈りプロセスに関連して使用されてもよく、または、上述の方法200のステップに加えて、上述の変換のようなアフィン変換を使用する、イジング空間からブール空間へ、またはブール空間からイジング空間への変換を含んでいてもよい。
図3は、本開示に記載される少なくとも一つの実施形態による、HOBO問題をQUBO問題に変換する代替的な発見的アプローチの別の例示的方法300のフローチャートである。方法300は、任意の好適なシステム、装置、またはデバイスによって実行されうる。たとえば、方法300の一つまたは複数の動作は、図1の環境100の一つまたは複数の要素によって、図4のコンピューティング・システム402によって、または図4のコンピューティング・システム402複数によって実行されてもよい。離散的なブロックで示されているが、方法500のブロックの一つまたは複数に関連するステップおよび動作は、具体的な実装に依存して、追加的なブロックに分割されてもよく、より少ないブロックに組み合わされてよく、またはなくされてもよい。
理解されうるように、図2の方法200は、キー‐値対のデータ構造を使用したのに対し、方法300は、HOBO問題をQUBO問題に変換するために二部グラフを使用する。よって、図3は、代替的な発見的な計算機科学システムを用いて、本明細書における方法およびシステムを実行する能力を示す。本発明の意味および範囲から逸脱することなく、多様な異なるグラフ化、モデル化、および/またはデータ構造が使用されてもよく、方法200および300の説明は、特許請求の範囲を限定することを意図していないことを理解しておくべきである。
方法300は、ブロック310で始まってもよく、そこでは、HOBO問題の変数の複数のインデックスのそれぞれがソートされ、重み付けされた二部グラフが作成される。重み付けされた二部グラフでは、HOBO問題に現われる二次項のあらゆる可能な組み合わせが左ノードとして位置されてもよく、HOBO問題におけるあらゆる単項式が右ノードとして位置され、単項式が所与の二次項を含むときに二部グラフにおいてエッジが存在し、エッジ重みは単項式の次数して表現される。
ブロック312では、HOBO問題に現われる二次項のあらゆる可能な組み合わせのうちで、エッジ重みの和が最大であるものが識別される。エッジ重みの和が最大の二次項を識別すると、ブロック314において、識別された二次項が補助変数で置き換えられる。
ブロック316では、識別された二次項に関わっていたすべての三次項が削除される。ブロック320では、すべての二次項が、それに関連するノードから発生するエッジがないという判別に基づいて、削除される。
ブロック322では、新しい変数に対応する新しい二次項を追加し、ブロック316および320で実行される削除プロセスを実行することによって、二部グラフの重みおよびグラフが更新される。
ステップ324では、補助変数およびそれに関連する二次項が、データ・マップ内のペアとして格納される。ブロック312〜322は、本明細書では集団的二次化プロセス318と称され、重み付けされた二部マップが完全に切り離されたという判定がステップ326でなされるまで繰り返される。ステップ328では、データ・マップ内の各対について、二次多項式が構築される。
前述したように、本明細書の実施形態は、イジング空間およびブール空間の両方において二次多項式を生成することができる。より具体的には、ステップ328において、所望の出力がブール空間用であるかイジング空間用であるかに依存して、本明細書に記載の式(1)または式(2)のいずれかが、データ・マップ内の各対について二次多項式を生成するためにそれぞれ適用されうる。
本開示の範囲から逸脱することなく、方法300に修正、追加、または省略を行なってもよい。たとえば、方法300の動作は、異なる順序で実施されてもよい。追加的または代替的に、二つ以上の動作が同時に実行されてもよい。さらに、概説された動作およびアクションは、例として与えられているだけであり、かかる動作およびアクションのいくつかは、開示された実施形態の本質を損なうことなく、任意的であってもよく、より少ない動作およびアクションに組み合わされてもよく、または追加的な動作およびアクションに展開されてもよい。たとえば、図5に関して以下でより十全に説明されるように、上述の方法200は、枝刈りプロセスに関連して使用されてもよく、または、上述の方法300のステップに加えて、上述の変換のようなアフィン変換を使用する、イジング空間からブール空間への、またはブール空間からイジング空間への変換を含んでいてもよい。
上述のように、本開示に記載される実施形態は、以下により詳細に議論されるように、さまざまなコンピュータハードウェアまたはソフトウェアモジュールを含む、特殊目的または汎用コンピュータ(たとえば、図4のプロセッサ450)の使用を含んでいてもよい。さらに、上述のように、本開示に記載の実施形態は、コンピュータ実行可能な命令またはデータ構造を担持または記憶するために、コンピュータ読取可能な媒体(たとえば、図4のメモリ452またはデータ記憶装置454)を使用して実装されてもよい。
本開示において使用されるところでは、用語「モジュール」または「コンポーネント」は、該モジュールまたはコンポーネントの動作を実行するよう構成された特定のハードウェア実装、および/または、コンピューティング・システムの汎用ハードウェア(たとえば、コンピュータ読み取り可能媒体、処理装置など)に記憶および/または実行されうるソフトウェア・オブジェクトもしくはソフトウェア・ルーチンを指すことができる。いくつかの実施形態では、本開示に記載される異なるコンポーネント、モジュール、エンジン、およびサービスは、コンピューティング・システム上で実行されるオブジェクトまたはプロセスとして(たとえば、別個のスレッドとして)実装されてもよい。本開示に記載されるシステムおよび方法のいくつかは、一般に、(汎用ハードウェアに記憶および/または実行される)ソフトウェアで実装されるものとして記載されるが、個別的なハードウェア実装またはソフトウェアと個別的なハードウェア実装との組み合わせも可能であり、考えられている。本稿において、「計算エンティティ」は、本開示において前に定義された任意のコンピューティング・システム、またはコンピューティング・システム上で動作する任意のモジュールまたは小モジュールの組み合わせであってもよい。
上述の実施形態に加えて、追加的なステップまたはプロセスを使用して、HOBO問題からQUBO問題への変換を枝刈りしたり、制約条件を課したりしてもよいことが理解されるべきである。より具体的には、ブール空間では、HOBOを最小化するとき、負の項については、二次化は、一つの変数のみを使用して達成されうる。より具体的には、負の係数をもつ次のような単項式:
Figure 2021005363
該単項式は次によって置き換えられることができる:
Figure 2021005363
正の項については同様の単純化はなく、イジング空間には対応するものがないが、上記の等価性は、ブール空間においてHOBO問題をQUBO問題に変換するために、図2および図3に関して説明した方法と一緒に使用されうる。
理解されうるように、本明細書に記載される利点の一つは、そのような汎用コンピューティング・システムを使用して、本明細書に記載される方法の少なくともいくつかの側面を実行する能力である。より具体的には、本明細書に記載する実施形態は、比較的計算効率の良い仕方で実行されることができ、その結果、当技術分野においてこれまで利用可能であったよりも、解を見出すのに好適な、手に負えないものではないQUBO問題が得られる。
図5Aおよび5Bは、それぞれ、HOBO問題をQUBO問題に変換するためのさらなる実施形態を示すフローチャートであり、これは、結果として生じるQUBO問題の変数および項の数をさらに制限するために、HOBO問題における変数および項の数を減少させるように、枝刈り(pruning)プロセスを含んでいる。さらに、図5Aおよび5Bにそれぞれ示される方法500および550のそれぞれは、本開示に記載される少なくとも一つの実施形態に従って、イジング空間およびブール空間を横断して、HOBO問題をQUBO問題に変換するプロセスのための二つの別々の戦略を示す。
方法500および550は、任意の好適なシステム、装置、またはデバイスによって実行されうる。たとえば、方法300の一つまたは複数の動作は、図1の環境100の一つまたは複数の要素によって、図4のコンピューティング・システム402によって、または図4のコンピューティング・システム402複数によって実行されてもよい。離散的なブロックで示されているが、方法500および550のブロックの一つまたは複数に関連するステップおよび動作は、特定の実装に依存して、追加のブロックに分割されてもよく、より少ないブロックに組み合わされてもよく、またはなくされてもよい。
図5Aの方法500は、ブロック510で始まってもよく、そこでは、イジング空間におけるHOBO問題が入力または受領される。ブロック512では、所与の誤差限界内でHOBO問題の解を見つけるための変数および項の数を減らすために、HOBO問題に対して枝刈りプロセスが実行されてもよい。ブロック512で実行される枝刈りプロセスの例として、またはそれに関連して実行されうる枝刈りプロセスの例は、以下で、より十全に記述される。
ブロック514では、たとえば上述の方法200または300のうちの一つを使用して、たとえばブロック226および/またはブロック328における式(2)を使用して、イジング空間におけるHOBO問題がイジング空間におけるQUBO問題に変換される。ブロック516において、結果として得られたイジング空間におけるQUBO問題は、次に、本明細書に記載されているものを含むいくらでもある技術を用いて、ブール空間におけるQUBO問題に変換される。
図5Bの方法550は、ブロック552で始まってもよく、そこでは、イジング空間におけるHOBO問題が入力または受領される。ブロック552では、所与の誤差限界内でHOBO問題の解を見つけるための変数および項の数を減らすために、HOBO問題に対して枝刈りプロセスが実行される。ブロック552で実行される枝刈りプロセスの例として、またはそれに関連して実行されうる枝刈りプロセスの例は、以下で、より十全に記述される。
ブロック556では、イジング空間におけるHOBO問題が、本明細書に記載されるアフィン変換を含むいくらでもある既知の技術を使用して、ブール空間におけるHOBO問題に変換される。ブロック558では、ブール空間におけるHOBO問題は、たとえば上述した方法200または300のうちの一つを使用して、たとえばブロック226および/またはブロック328における式(1)を使用して、ブール空間におけるQUBO問題に変換される。
枝刈りプロセスに関して、いくらでもある枝刈りプロセスを使用して、HOBO問題の変数、項、または最大次数を制限しうる。一つの枝刈りプロセスでは、HOBO問題およびHOBO問題に対する最適解のパーセンテージとして述べられる所与の誤差限界が、たとえば、図1に示される変換モジュール120に入力されてもよい。
部分的に、最適な最小値が負であるという仮定を用いると、該最小値の下限を見つけることによって、誤差許容値が確立されてもよい。ブール最適化については、すべての負の係数値の和は有効な下限である。イジング最適化については、すべての係数の絶対値の和の符号を変えたものが有効な下限である。
いくつかの実施形態では、HOBOプログラムの最適化問題は、最小値に対する下限を確立するよう連続最適化問題を解くことに緩和されうる。
誤差許容値は、最小値の下限と誤差限界の積を100で除したものに等しく設定できる。
その後、小さな絶対値の係数をもつ項を特定し、除外してもよい。これは、係数の絶対値に従って昇順に項を並べ替え、最小の絶対値をもつ最初の諸項を削除することを、係数の残っている絶対値の和が誤差許容値に達するまで行なうことによる。
さらに、枝刈りプロセスは、トリビアルな変数の消去を含んでいてもよい。ある変数について、線形項に対応するある係数が、その変数が存在する他のすべての項の、ある絶対値よりも大きい場合には、その変数の値はトリビアルに推測することができる。
上述の枝刈りプロセスの結果として、枝刈りされたHOBO問題の最適解は、もとのHOBO問題の最適解の誤差限界以内にあると合理的に推定することができる。よって、上述の枝刈りプロセスは、上記のHOBO問題からQUBO問題への変換に加えて実行されてもよい。それにより、結果として得られるQUBO問題における変数および項の数の膨張またはふくれあがりをもたらし、HOBO問題に対する受け入れ可能な解を可能な限り計算的かつ効率的に見出すことをさらに支援する。
本明細書に記載する実施形態により、HOBO問題が、解を見出すのにより好適なQUBO問題に、容易かつ効率的に変換されることができる。理解されうるように、HOBO問題をより扱いやすい問題に変換できることは、多くの応用を有する。たとえば、計算複雑性理論では、命題充足可能性問題(SAT)および最大充足可能性問題(MAX-SAT)が一般的に知られており、高次ブール最適化問題の例である。他の既知のHOBO問題、特にイジング空間における問題が知られており、複雑な分子における分子相互作用をモデル化するために重要である。よって、本明細書に記載される実施形態およびシステムは、多様な異なる用途を有し、当技術分野において現在利用可能でない恩恵をもたらす。
本開示において、特に添付の特許請求の範囲(たとえば、添付の特許請求の範囲の本文)において使用される用語は、一般に「開放的」な用語として意図されている(たとえば、「含む」という用語は「含むが、これに限定されない」と解釈されるべきであり、「有する」という用語は「少なくとも…を有する」と解釈されるべきであり、「含む」という用語は「含むが、これに限定されない」と解釈されるべきである)。
さらに、特定の数の導入される請求項記載が意図されている場合、そのような意図は請求項に明示的に記載され、そのような記載がない場合、そのような意図は存在しない。たとえば、理解を助けるために、以下の添付の特許請求の範囲は、請求項記載を導入するために「少なくとも一つの」および「一つまたは複数の」という導入句の使用を含むことがある。しかしながら、そのような句の使用は、不定冠詞「a」または「an」による請求項記載の導入が、そのような導入された請求項記載を含むいずれかの特定の請求項を、そのような記載を一つだけ含む実施形態に限定することを含意していると解釈されるべきではない。これはたとえ同じ請求項が導入句「一つまたは複数の」または「少なくとも一つの」および「a」または「an」のような不定冠詞を含んでいるときでも同じである(たとえば、「a」および/または「an」は「少なくとも一つの」または「一つまたは複数の」と解釈されるべきである)。同じことは、請求項記載を導入するために使用される定冠詞の使用にも当てはまる。
さらに、導入される請求項記載の特定の数が明示的に記載されている場合であっても、当業者は、そのような記載は、少なくともその記載された数、を意味するものと解釈されるべきであることを認識するであろう(たとえば、他の修飾語を伴わない「2つの記載」というだけの記載は、少なくとも2つの記載、または2つ以上の記載を意味する)。さらに、「A、B、C等の少なくとも一つ」または「A、B、C等の一つまたは複数」と類似の慣用表現が用いられている場合には、一般に、そのような構文は、Aのみ、Bのみ、Cのみ、AとBが一緒、AとCが一緒、BとCが一緒、またはA、B、Cが一緒等を含むことが意図されている。さらに、「および/または」という用語の使用はこのように解釈されることが意図されている。
さらに、明細書、特許請求の範囲、または図面のいずれに記載されているかを問わず、2つ以上の代替的な用語を提示する任意の離接的な語句は、用語の一方、用語のいずれか、または両方の用語を含む可能性を考えているものと理解されるべきである。たとえば、「AまたはB」という句は、たとえ他所では「および/または」が使われていたとしても、「A」または「B」または「AおよびB」の可能性を含むと理解されるべきである。
本開示に記載されたすべての例および条件付き言辞は、本開示および発明者が当該技術分野の発展に寄与した概念を理解する際に読者を助けるための教育的目的のために意図されており、そのように具体的に記載された例および条件への限定なしに解釈されるべきである。本開示の実施形態を詳細に説明したが、本開示の精神および範囲から逸脱することなく、さまざまな変更、置換、および代替を行なうことができることは理解されるべきである。
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
高次二値変数最適化(HOBO)問題を制約なし二次二値変数最適化(QUBO)問題に変換する方法であって、当該方法は:
前記HOBO問題の変数の複数のインデックスをソートすることによってキー‐値対のデータ構造を作成する段階であって、各キー‐値対のキーは、前記HOBO問題に現われる二次項のすべての可能な組み合わせに対応し、各キー‐値対の値は、関連付けられたキーを含む少なくとも三次のすべての項に対応する、段階と;
前記データ構造の各キーについて二次化プロセスを実行する段階とを含み、前記二次化プロセスは:
最も多くの関連付けられた値をもつ前記キー‐値対のキーの識別し;
識別されたキーを補助変数で置き換え;
前記補助変数に対応するように、前記データ構造の各キー‐値対の各キーおよび値を更新し;
前記HOBO問題における前記識別されたキーを含むすべての三次項を前記データ構造から削除し;
前記識別されたキーのすべての値が削除されたことの判別に際して、前記データ構造から前記識別されたキーを削除し;
前記補助変数と前記識別されたキーの二次項とをペアとしてデータ・マップに格納し;
前記データ・マップにおける前記ペアについての二次多項式を構築することを含む、
方法。
(付記2)
前記HOBO問題がブール空間で表現され、前記二次多項式は次式:
Figure 2021005363
によって得られ、ここで、補助変数y1はx1x2に等しい、付記1に記載の方法:
(付記3)
前記HOBO問題がイジング空間で表現され、前記二次多項式を構築するのに先立ち、前記HOBO問題がブール空間に変換され、前記二次多項式は次式:
Figure 2021005363
によって得られ、ここで、補助変数y1はx1x2に等しい、付記1に記載の方法:
(付記4)
前記HOBO問題がイジング空間で表現され、前記二次多項式もイジング空間で表現され、次式
Figure 2021005363
によって得られ、ここで、補助変数y1はx1x2に等しく、dはダミー変数である、付記1に記載の方法。
(付記5)
イジング空間における前記二次多項式をブール空間における二次多項式に変換する段階をさらに含む、付記4に記載の方法。
(付記6)
前記HOBO問題の変数の数、項の数、または最大次数を減らすために、前記二次化プロセスを実行するのに先立って、前記HOBO問題に対して枝刈りプロセスを実行することをさらに含む、付記1に記載の方法。
(付記7)
高次二値変数最適化(HOBO)問題を制約なし二次二値変数最適化(QUBO)問題に変換する方法であって、当該方法は:
前記HOBO問題の変数の複数のインデックスをソートすることによって重み付けされた二部グラフを作成する段階であって、左ノードまたは右ノードの一方は、前記HOBO問題の二次項のすべての可能な組み合わせを表わし、左ノードまたは右ノードの他方は、単項式を表わし、前記重み付けされた二部グラフのエッジは、単項式が与えられた二次項を含み、エッジ重みが単項式から1を引いたものの度合いである場合に存在する、段階と;
前記重み付けされた二部グラフが分離されるまで、二次化プロセスを繰り返し実行する段階とを含み、前記二次化プロセスは:
エッジ重みの和が最大の二次項を識別し;
識別された二次項を補助変数で置き換え;
前記重み付けされた二部グラフを、前記補助変数に対応するように更新し;
前記識別された二次項を含むすべての三次項を削除し;
前記二次項から発するエッジがないとの判別に際して、前記二次項を削除し;
前記補助変数と識別された二次項とをペアとしてデータ・マップに格納し;
前記データ・マップにおける前記ペアについての二次多項式を構築することを含む、
方法。
(付記8)
前記HOBO問題がブール空間で表現され、前記二次多項式は次式:
Figure 2021005363
によって得られ、ここで、補助変数y1はx1x2に等しい、付記7に記載の方法:
(付記9)
前記HOBO問題がイジング空間で表現され、前記二次多項式を構築するのに先立ち、前記HOBO問題がブール空間に変換され、前記二次多項式は次式:
Figure 2021005363
によって得られ、ここで、補助変数y1はx1x2に等しい、付記7に記載の方法:
(付記10)
前記HOBO問題がイジング空間で表現され、前記二次多項式もイジング空間で表現され、次式
Figure 2021005363
によって得られ、ここで、補助変数y1はx1x2に等しく、dはダミー変数である、付記7に記載の方法。
(付記11)
イジング空間における前記二次多項式をブール空間における二次多項式に変換する段階をさらに含む、付記10に記載の方法。
(付記12)
前記HOBO問題の変数の数、項の数、または最大次数を減らすために、前記二次化プロセスを実行するのに先立って、前記HOBO問題に対して枝刈りプロセスを実行することをさらに含む、付記7に記載の方法。
(付記13)
システムによって実行されるときに、該システムにアクションを実行させる、または該システムがアクションを実行するよう指令する命令を記憶するように構成された一つまたは複数のコンピュータ可読媒体であって、前記アクションは:
前記HOBO問題の変数の複数のインデックスをソートすることによってキー‐値対のデータ構造を作成する段階であって、各キー‐値対のキーは、前記HOBO問題に現われる二次項のすべての可能な組み合わせに対応し、各キー‐値対の値は、関連付けられたキーを含む少なくとも三次のすべての項に対応する、段階と;
前記データ構造の各キーについて二次化プロセスを実行する段階とを含み、前記二次化プロセスは:
最も多くの関連付けられた値をもつ前記キー‐値対のキーの識別し;
識別されたキーを補助変数で置き換え;
前記補助変数に対応するように、前記データ構造の各キー‐値対の各キーおよび値を更新し;
前記HOBO問題における前記識別されたキーを含むすべての三次項を前記データ構造から削除し;
前記識別されたキーのすべての値が削除されたことの判別に際して、前記データ構造から前記識別されたキーを削除し;
前記補助変数と前記識別されたキーの二次項とをペアとしてデータ・マップに格納し;
前記データ・マップにおける前記ペアについての二次多項式を構築することを含む、
一つまたは複数のコンピュータ可読媒体。
(付記14)
前記HOBO問題がブール空間で表現され、前記二次多項式は次式:
Figure 2021005363
によって得られ、ここで、補助変数y1はx1x2に等しい、付記13に記載の一つまたは複数のコンピュータ可読媒体:
(付記15)
前記HOBO問題がイジング空間で表現され、前記二次多項式を構築するのに先立ち、前記HOBO問題がブール空間に変換され、前記二次多項式は次式:
Figure 2021005363
によって得られ、ここで、補助変数y1はx1x2に等しい、付記13に記載の一つまたは複数のコンピュータ可読媒体。
(付記16)
前記HOBO問題がイジング空間で表現され、前記二次多項式もイジング空間で表現され、次式
Figure 2021005363
によって得られ、ここで、補助変数y1はx1x2に等しく、dはダミー変数である、付記13に記載の一つまたは複数のコンピュータ可読媒体。
(付記17)
前記アクションがさらに、イジング空間における前記二次多項式をブール空間における二次多項式に変換する段階をさらに含む、付記16に記載の一つまたは複数のコンピュータ可読媒体。
(付記18)
前記HOBO問題の変数の数、項の数、または最大次数を減らすために、前記二次化プロセスを実行するのに先立って、前記HOBO問題に対して枝刈りプロセスを実行することをさらに含む、付記13に記載の一つまたは複数のコンピュータ可読媒体。
(付記19)
前記枝刈りプロセスが、前記HOBO問題の最小値の下限を見出すことによって誤差許容値を確立することを含む、付記18記載の一つまたは複数のコンピュータ可読媒体。
(付記20)
前記枝刈りプロセスが、前記HOBO問題からの項であって、絶対値が所定の値より小さい係数をもつものを削除することを含む、付記18記載の一つまたは複数のコンピュータ可読媒体。
110 高次二値最適化
120 変換モジュール
130 制約なし二次二値最適化

210 高次二値最適化問題の変数の複数のインデックスのそれぞれをソートして、キー‐値対のデータ構造を作成
212 キー‐値対の、最多数の値に関連付けられているキーを識別
214 識別されたキーを補助変数で置き換え
216 補助変数に対応する複数の更新されたキーおよび値を追加することによってデータ構造を更新
218 識別されたキーを含んでいたすべての三次項を削除
220 キーのすべての値が削除されたと判定されたら、キーをデータ構造から削除
222 補助変数と、補助変数が置き換えた識別されたキーの二次項とをペアとしてデータ・マップに格納
224 データ構造に残っているキーがあるか?
226 データ・マップ中の各ペアについて二次多項式を構築

310 高次二値最適化問題(HOBO)の変数の複数のインデックスのそれぞれをソートして、重み付けされた二部グラフを作成
312 エッジ重みの和が最大の二次項を識別
314 識別された二次項を補助変数で置き換え
316 識別された二次項を含むすべての三次項を削除
320 そこから出ているエッジがない各二次項を削除
322 識別された二次項の置き換えと、識別された二次項を含む三事項およびエッジのない二次項の削除とに基づいて、二部グラフの重みを更新
324 補助変数と、識別されたキーの二次項とをデータ・マップに格納
326 重み付けされた二部マップが完全に分離されたか?
328 データ・マップ中の各補助変数および関連付けられた二次項について二次多項式を構築

402 コンピューティング・システム
450 プロセッサ
452 メモリ
454 データ記憶

510 イジング空間でのHOBO
512 プルーニング・プロセスを実行
514 イジング空間でのHOBOをイジング空間へのQUBOに変換
516 イジング空間でのQUBOをブール空間でのQUBOに変換

552 イジング空間でのHOBO
554 プルーニング・プロセスを実行
556 イジング空間でのHOBOをブール空間でのHOBOに変換
558 ブール空間でのHOBOをブール空間でのQUBOに変換

Claims (20)

  1. 高次二値変数最適化(HOBO)問題を制約なし二次二値変数最適化(QUBO)問題に変換する方法であって、当該方法は:
    前記HOBO問題の変数の複数のインデックスをソートすることによってキー‐値対のデータ構造を作成する段階であって、各キー‐値対のキーは、前記HOBO問題に現われる二次項のすべての可能な組み合わせに対応し、各キー‐値対の値は、関連付けられたキーを含む少なくとも三次のすべての項に対応する、段階と;
    前記データ構造の各キーについて二次化プロセスを実行する段階とを含み、前記二次化プロセスは:
    最も多くの関連付けられた値をもつ前記キー‐値対のキーの識別し;
    識別されたキーを補助変数で置き換え;
    前記補助変数に対応するように、前記データ構造の各キー‐値対の各キーおよび値を更新し;
    前記HOBO問題における前記識別されたキーを含むすべての三次項を前記データ構造から削除し;
    前記識別されたキーのすべての値が削除されたことの判別に際して、前記データ構造から前記識別されたキーを削除し;
    前記補助変数と前記識別されたキーの二次項とをペアとしてデータ・マップに格納し;
    前記データ・マップにおける前記ペアについての二次多項式を構築することを含む、
    方法。
  2. 前記HOBO問題がブール空間で表現され、前記二次多項式は次式:
    Figure 2021005363
    によって得られ、ここで、補助変数y1はx1x2に等しい、請求項1に記載の方法。
  3. 前記HOBO問題がイジング空間で表現され、前記二次多項式を構築するのに先立ち、前記HOBO問題がブール空間に変換され、前記二次多項式は次式:
    Figure 2021005363
    によって得られ、ここで、補助変数y1はx1x2に等しい、請求項1に記載の方法。
  4. 前記HOBO問題がイジング空間で表現され、前記二次多項式もイジング空間で表現され、次式
    Figure 2021005363
    によって得られ、ここで、補助変数y1はx1x2に等しく、dはダミー変数である、請求項1に記載の方法。
  5. イジング空間における前記二次多項式をブール空間における二次多項式に変換する段階をさらに含む、請求項4に記載の方法。
  6. 前記HOBO問題の変数の数、項の数、または最大次数を減らすために、前記二次化プロセスを実行するのに先立って、前記HOBO問題に対して枝刈りプロセスを実行することをさらに含む、請求項1に記載の方法。
  7. 高次二値変数最適化(HOBO)問題を制約なし二次二値変数最適化(QUBO)問題に変換する方法であって、当該方法は:
    前記HOBO問題の変数の複数のインデックスをソートすることによって重み付けされた二部グラフを作成する段階であって、左ノードまたは右ノードの一方は、前記HOBO問題の二次項のすべての可能な組み合わせを表わし、左ノードまたは右ノードの他方は、単項式を表わし、前記重み付けされた二部グラフのエッジは、単項式が与えられた二次項を含み、エッジ重みが単項式から1を引いたものの度合いである場合に存在する、段階と;
    前記重み付けされた二部グラフが分離されるまで、二次化プロセスを繰り返し実行する段階とを含み、前記二次化プロセスは:
    エッジ重みの和が最大の二次項を識別し;
    識別された二次項を補助変数で置き換え;
    前記重み付けされた二部グラフを、前記補助変数に対応するように更新し;
    前記識別された二次項を含むすべての三次項を削除し;
    前記二次項から発するエッジがないとの判別に際して、前記二次項を削除し;
    前記補助変数と識別された二次項とをペアとしてデータ・マップに格納し;
    前記データ・マップにおける前記ペアについての二次多項式を構築することを含む、
    方法。
  8. 前記HOBO問題がブール空間で表現され、前記二次多項式は次式:
    Figure 2021005363
    によって得られ、ここで、補助変数y1はx1x2に等しい、請求項7に記載の方法。
  9. 前記HOBO問題がイジング空間で表現され、前記二次多項式を構築するのに先立ち、前記HOBO問題がブール空間に変換され、前記二次多項式は次式:
    Figure 2021005363
    によって得られ、ここで、補助変数y1はx1x2に等しい、請求項7に記載の方法。
  10. 前記HOBO問題がイジング空間で表現され、前記二次多項式もイジング空間で表現され、次式
    Figure 2021005363
    によって得られ、ここで、補助変数y1はx1x2に等しく、dはダミー変数である、請求項7に記載の方法。
  11. イジング空間における前記二次多項式をブール空間における二次多項式に変換する段階をさらに含む、請求項10に記載の方法。
  12. 前記HOBO問題の変数の数、項の数、または最大次数を減らすために、前記二次化プロセスを実行するのに先立って、前記HOBO問題に対して枝刈りプロセスを実行することをさらに含む、請求項7に記載の方法。
  13. システムによって実行されるときに、該システムにアクションを実行させる、または該システムがアクションを実行するよう指令する命令を記憶するように構成された一つまたは複数のコンピュータ可読媒体であって、前記アクションは:
    前記HOBO問題の変数の複数のインデックスをソートすることによってキー‐値対のデータ構造を作成する段階であって、各キー‐値対のキーは、前記HOBO問題に現われる二次項のすべての可能な組み合わせに対応し、各キー‐値対の値は、関連付けられたキーを含む少なくとも三次のすべての項に対応する、段階と;
    前記データ構造の各キーについて二次化プロセスを実行する段階とを含み、前記二次化プロセスは:
    最も多くの関連付けられた値をもつ前記キー‐値対のキーの識別し;
    識別されたキーを補助変数で置き換え;
    前記補助変数に対応するように、前記データ構造の各キー‐値対の各キーおよび値を更新し;
    前記HOBO問題における前記識別されたキーを含むすべての三次項を前記データ構造から削除し;
    前記識別されたキーのすべての値が削除されたことの判別に際して、前記データ構造から前記識別されたキーを削除し;
    前記補助変数と前記識別されたキーの二次項とをペアとしてデータ・マップに格納し;
    前記データ・マップにおける前記ペアについての二次多項式を構築することを含む、
    一つまたは複数のコンピュータ可読媒体。
  14. 前記HOBO問題がブール空間で表現され、前記二次多項式は次式:
    Figure 2021005363
    によって得られ、ここで、補助変数y1はx1x2に等しい、請求項13に記載の一つまたは複数のコンピュータ可読媒体。
  15. 前記HOBO問題がイジング空間で表現され、前記二次多項式を構築するのに先立ち、前記HOBO問題がブール空間に変換され、前記二次多項式は次式:
    Figure 2021005363
    によって得られ、ここで、補助変数y1はx1x2に等しい、請求項13に記載の一つまたは複数のコンピュータ可読媒体。
  16. 前記HOBO問題がイジング空間で表現され、前記二次多項式もイジング空間で表現され、次式
    Figure 2021005363
  17. 前記アクションがさらに、イジング空間における前記二次多項式をブール空間における二次多項式に変換する段階をさらに含む、請求項16に記載の一つまたは複数のコンピュータ可読媒体。
  18. 前記HOBO問題の変数の数、項の数、または最大次数を減らすために、前記二次化プロセスを実行するのに先立って、前記HOBO問題に対して枝刈りプロセスを実行することをさらに含む、請求項13に記載の一つまたは複数のコンピュータ可読媒体。
  19. 前記枝刈りプロセスが、前記HOBO問題の最小値の下限を見出すことによって誤差許容値を確立することを含む、請求項18記載の一つまたは複数のコンピュータ可読媒体。
  20. 前記枝刈りプロセスが、前記HOBO問題からの項であって、絶対値が所定の値より小さい係数をもつものを削除することを含む、請求項18記載の一つまたは複数のコンピュータ可読媒体。
JP2020051530A 2019-06-25 2020-03-23 二値空間において高次多項式から二次多項式に変換する発見的方法 Withdrawn JP2021005363A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/452342 2019-06-25
US16/452,342 US20200409918A1 (en) 2019-06-25 2019-06-25 Heuristic methods for converting higher order to quadratic polynomials in binary spaces

Publications (1)

Publication Number Publication Date
JP2021005363A true JP2021005363A (ja) 2021-01-14

Family

ID=69157677

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020051530A Withdrawn JP2021005363A (ja) 2019-06-25 2020-03-23 二値空間において高次多項式から二次多項式に変換する発見的方法

Country Status (4)

Country Link
US (1) US20200409918A1 (ja)
EP (1) EP3757907A1 (ja)
JP (1) JP2021005363A (ja)
CN (1) CN112131515A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022219769A1 (ja) * 2021-04-15 2022-10-20 日本電信電話株式会社 多項式変換装置、多項式変換方法、およびプログラム
WO2022219768A1 (ja) * 2021-04-15 2022-10-20 日本電信電話株式会社 関数変換装置、関数変換方法、およびプログラム
WO2022219770A1 (ja) * 2021-04-15 2022-10-20 日本電信電話株式会社 関数変換装置、関数変換方法、およびプログラム
WO2023281742A1 (ja) * 2021-07-09 2023-01-12 日本電信電話株式会社 最適化装置、最適化方法、およびプログラム
WO2024018583A1 (ja) * 2022-07-21 2024-01-25 日本電気株式会社 変換装置
JP7571869B2 (ja) 2021-04-15 2024-10-23 日本電信電話株式会社 関数変換装置、関数変換方法、およびプログラム

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021114117A (ja) * 2020-01-17 2021-08-05 富士通株式会社 情報処理プログラム、情報処理方法および情報処理装置
EP3961516A1 (en) * 2020-08-26 2022-03-02 Fujitsu Limited A framework for automated generation of qubo or higher order formulations from high-level source code
CN113591906B (zh) * 2021-06-21 2024-06-04 北京百度网讯科技有限公司 图的分割方法、装置及电子设备
JP2024044506A (ja) * 2022-09-21 2024-04-02 富士通株式会社 演算プログラム、演算方法、および情報処理装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017145086A1 (en) * 2016-02-23 2017-08-31 1Qb Information Technologies Inc. Method and system for solving the lagrangian dual of a binary polynomially constrained polynomial programming problem using a binary optimizer

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022219769A1 (ja) * 2021-04-15 2022-10-20 日本電信電話株式会社 多項式変換装置、多項式変換方法、およびプログラム
WO2022219768A1 (ja) * 2021-04-15 2022-10-20 日本電信電話株式会社 関数変換装置、関数変換方法、およびプログラム
WO2022219770A1 (ja) * 2021-04-15 2022-10-20 日本電信電話株式会社 関数変換装置、関数変換方法、およびプログラム
JP7571869B2 (ja) 2021-04-15 2024-10-23 日本電信電話株式会社 関数変換装置、関数変換方法、およびプログラム
WO2023281742A1 (ja) * 2021-07-09 2023-01-12 日本電信電話株式会社 最適化装置、最適化方法、およびプログラム
WO2024018583A1 (ja) * 2022-07-21 2024-01-25 日本電気株式会社 変換装置

Also Published As

Publication number Publication date
CN112131515A (zh) 2020-12-25
EP3757907A1 (en) 2020-12-30
US20200409918A1 (en) 2020-12-31

Similar Documents

Publication Publication Date Title
JP2021005363A (ja) 二値空間において高次多項式から二次多項式に変換する発見的方法
Conradie et al. Unified correspondence
Akbarpour et al. MetiTarski: An automatic theorem prover for real-valued special functions
Servedio et al. Attribute-efficient learning andweight-degree tradeoffs for polynomial threshold functions
Sturm Thirty years of virtual substitution: Foundations, techniques, applications
Bastrakov et al. Fast method for verifying Chernikov rules in Fourier-Motzkin elimination
Rumí et al. Approximate probability propagation with mixtures of truncated exponentials
Ferbach et al. A general framework for proving the equivariant strong lottery ticket hypothesis
Wei et al. Variable grouping based differential evolution using an auxiliary function for large scale global optimization
Nagamani et al. Robust extended dissipativity analysis for Markovian jump discrete-time delayed stochastic singular neural networks
JP6451997B2 (ja) 演算実行装置、方法、及びプログラム
Karataiev et al. A Method for Investigating Links between Discrete Data Features in Knowledge Bases in the Form of Predicate Equations.
Sagraloff On the complexity of the Descartes method when using approximate arithmetic
Del Moral et al. Uniform stability of a particle approximation of the optimal filter derivative
Xiang et al. Efficient probabilistic inference in Bayesian networks with multi-valued NIN-AND tree local models
Adel et al. Model order reduction using genetic algorithm
Jorgensen et al. Dual pairs of operators, harmonic analysis of singular non-atomic measures and Krein-Feller diffusion
Sälzer et al. Reachability in Simple Neural Networks
Ahn et al. Bucket renormalization for approximate inference
Mäki-Marttunen et al. Balance between noise and information flow maximizes set complexity of network dynamics
Belykh et al. From 1D Endomorphism to Multidimensional Hénon Map: Persistence of Bifurcation Structure
Borowik et al. Reduction of knowledge representation using logic minimization techniques
JP2019061623A (ja) パラメータ推定装置、方法、及びプログラム
Barik Stochastic quadratic programming problems involving multi-choice parameters
Deniziak et al. Evolutionary optimization of decomposition strategies for logical functions

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221208

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20230904