(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-11-13
(54)【発明の名称】抵抗結合イジングマシンシステム及び方法
(51)【国際特許分類】
G06G 7/60 20060101AFI20241106BHJP
G06N 10/20 20220101ALI20241106BHJP
G06G 7/184 20060101ALI20241106BHJP
G06G 7/16 20060101ALI20241106BHJP
【FI】
G06G7/60
G06N10/20
G06G7/184
G06G7/16
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024527174
(86)(22)【出願日】2022-11-07
(85)【翻訳文提出日】2024-05-08
(86)【国際出願番号】 US2022079387
(87)【国際公開番号】W WO2023081877
(87)【国際公開日】2023-05-11
(32)【優先日】2021-11-08
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】508144129
【氏名又は名称】ユニバーシティ オブ ロチェスター
(74)【代理人】
【識別番号】100099759
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100112357
【氏名又は名称】廣瀬 繁樹
(74)【代理人】
【識別番号】100114018
【氏名又は名称】南山 知広
(74)【代理人】
【識別番号】100153729
【氏名又は名称】森本 有一
(72)【発明者】
【氏名】ジェリコ イグニャトビク
(72)【発明者】
【氏名】イーチアオ チャン
(72)【発明者】
【氏名】マイケル ホアン
(57)【要約】
イジングマシンシステムは、複数のコンデンサと、第1及び第2の端子を有する複数の抵抗器であって、各コンデンサが、その正極端子及び負極端子の各々を介して、複数の抵抗器のうちの少なくとも1つの抵抗器の第1の端子または第2の端子に電気的に接続されている、複数の抵抗器と、正及び負のレールを備えた電源と、複数のコンデンサの各々を電源からの正または負の電圧で初期化し、その後、複数のコンデンサのすべてを電源から切断して、コンデンサの電圧をフローティングさせるように構成されたスイッチングネットワークと、複数のコンデンサのうちの1つのコンデンサの正極端子と負極端子間の電圧を測定するように構成された少なくとも1つの電圧測定装置と、を備えている。イジングマシンシステムを実行する方法も開示される。
【選択図】
図1
【特許請求の範囲】
【請求項1】
イジングマシンシステムであって、
各々が正極端子及び負極端子を有する複数のコンデンサと、
第1の端子及び第2の端子を有する複数の抵抗器であって、各コンデンサが、その正極端子及び負極端子の各々を介して、前記複数の抵抗器のうちの少なくとも1つの抵抗器の前記第1の端子または前記第2の端子に電気的に接続されている、前記複数の抵抗器と、
正及び負のレールを備えた電源と、
前記複数のコンデンサの各々を前記電源からの正または負の電圧で初期化し、その後、前記複数のコンデンサのすべてを前記電源から切断して、前記コンデンサの電圧をフローティングさせるように構成されたスイッチングネットワークと、
前記複数のコンデンサのうちの1つのコンデンサの前記正極端子と前記負極端子間の電圧を測定するように構成された少なくとも1つの電圧測定装置と、
を備えた前記イジングマシンシステム。
【請求項2】
前記コンデンサの電圧レベルが前記電源の電圧未満である場合に、前記複数のコンデンサの少なくとも1つのコンデンサを充電し、前記コンデンサの前記電圧レベルが、前記電源の前記電圧を超えそうである場合に、前記コンデンサを放電するように構成された、フィードバック回路をさらに備えている、請求項1に記載のイジングマシンシステム。
【請求項3】
前記フィードバック回路が2つのback-to-backインバータを備えている、請求項2に記載のイジングマシンシステム。
【請求項4】
前記2つのback-to-backインバータがCMOS技術で実施される、請求項3に記載のイジングマシン。
【請求項5】
前記スイッチングネットワークが、前記複数のコンデンサの各コンデンサの正極端子または負極端子に電気的に接続され、各コンデンサの前記正極端子または前記負極端子と、前記電源の前記正のレールまたは前記負のレールとの間に一瞬の電気的接触を形成するように構成されたスイッチのセットを備えている、請求項1から4のいずれかに記載のイジングマシンシステム。
【請求項6】
前記スイッチングネットワークが、前記複数のコンデンサのすべてを前記電源から切断した後、前記複数のコンデンサのうちのコンデンサの1つの正極端子または負極端子をランダムに選択し、
前記ランダムに選択された端子を前記電源の前記正のレールまたは前記負のレールに瞬間的に接続し、その後切断するようにさらに構成されている、請求項1から5のいずれかに記載のイジングマシンシステム。
【請求項7】
イジングマシンシステムであって、
命令が格納された非一時的コンピュータ可読媒体であって、前記命令が、プロセッサによって実行される場合、
回路ネットワークをエミュレートすることであって、前記エミュレートされた回路ネットワークが、
それぞれ正極端子及び負極端子を有する複数のコンデンサと、
第1及び第2の端子を有する複数の抵抗器であって、各コンデンサが、その正極端子及び負極端子の各々を介して、前記複数の抵抗器のうちの少なくとも1つの抵抗器の前記第1の端子または前記第2の端子に電気的に接続されている、前記複数の抵抗器と、
正及び負のレールを備えた電源と、
を備えている、前記エミュレートすることと、
前記複数のコンデンサの各々を前記電源の前記レールからの正または負の電圧で初期化することと、
前記複数のコンデンサのすべてを前記電源から切断して、前記コンデンサの電圧をフローティングさせることと、
前記複数のコンデンサのうち少なくとも1つのコンデンサの前記正極端子と前記負極端子との間の電圧を一定期間にわたって測定及び記録することと、
を含む各ステップを実施する、前記非一時的コンピュータ可読媒体
を備えている前記イジングマシンシステム。
【請求項8】
前記各ステップが、
前記複数のコンデンサのすべてを前記電源から切断した後、前記複数のコンデンサのうちのコンデンサの1つの正極端子または負極端子をランダムに選択することと、
前記ランダムに選択された端子を前記電源の前記正のレールまたは前記負のレールに瞬間的に接続し、その後切断することと、をさらに含む、請求項7に記載にイジングマシン。
【請求項9】
イジングマシンを実行する方法であって、
複数の抵抗器及びコンデンサと電源とを提供することと、
前記複数のコンデンサの各々を、前記複数の抵抗器のうちの2つを介して、前記複数のコンデンサのうちの少なくとも1つの他のコンデンサに接続することと、
前記複数のコンデンサの各々を前記電源からの正または負の電圧で初期化することと、
前記電源を前記複数のコンデンサから切断して、前記コンデンサの電圧をフローティングさせることと、
前記複数のコンデンサのうち少なくとも1つのコンデンサの正極端子と負極端子との間の電圧を一定期間にわたって測定及び記録することと、
を含む、前記方法。
【請求項10】
前記複数のコンデンサのすべての前記正極端子と前記負極端子との間の電圧を前記一定期間にわたって測定及び記録することをさらに含む、請求項9に記載の方法。
【請求項11】
前記一定期間の後に正の電圧を有する前記コンデンサを第1のセットとして指定することと、前記一定期間の後に負の電圧を有する前記コンデンサを第2のセットとして指定することであって、前記第1のセット及び前記第2のセットが、最大カット分析におけるノードに対応する、前記指定することと、をさらに含む、請求項10に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、2021年11月8日に出願された米国仮特許出願第63/276,849号に対する優先権を主張するものであり、その全体が参照により本明細書に組み込まれる。
【背景技術】
【0002】
近年、暗号化やネットワーク操作などの特定のタイプのタスクにおけるその有効性のために、専用設計がますます採用されるようになっている。関連しているが異なる作業の過程では、研究者たちは動的システムの進化を活用してアルゴリズム全体を効果的に実行しようとしている。最近の多くの例では、この進化は、以下でさらに詳しく説明するイジングモデルと呼ばれる特定の式を最適化する効果がある。動的システムを構成することにより、ユーザは特定のイジング式を最適化するようにマシンを設定する。したがって、進化の最後にそのようなシステムの状態を読み取ると、マッピングされた問題に対する解決策(通常は非常に優れた解決策)が得られるという効果がある。
【0003】
これらのシステムが最適な状態を追求できるようにするメカニズムは設計によって異なるが、従うべき明示的なプログラムがない点でフォンノイマン型機械と異なる。代わりに、これらのシステムは、特定の目的関数(イジング式の形式)を最適化する、物理学に基づいた専用コンピューティングマシンと考えることができる。そのため、これらは一般にイジングマシンと呼ばれる。イジングマシンは、非常に異なる(そして多くの場合複雑な)物理原理を伴う様々な方法で実施されてきた。より複雑な構造(量子アニーラーなど)が、非常に大きい規模で何らかの基本的な利点を発揮するかどうかはまだ不明である。しかし、短期的には、公開された電子版の方がはるかに魅力的な価値提案を提供する。
【0004】
物理学者Ernst Isingにちなんで名付けられたイジングモデルは、統計力学における強磁性の数学的モデルである。このモデルは、2つの状態(+1または-1)のいずれかを取ることができる原子スピンの磁気双極子モーメント(σ)を表す離散変数からなる。スピンは格子状に配置されており、各スピンが隣接スピンと相互作用することができる。一致する隣接スピンのエネルギーは、一致しないスピンのエネルギーよりも低くなる。このようなシステムのエネルギーは最も低くなる傾向があり、以下の方程式1のハミルトン関数によって記述される。
【数1】
式中、J
ijは隣接スピンの相互作用の強さを表し、μは外部磁場であり、h
iは外部磁場に対する個々のスピンの各々の反応である。最初の合計の各ペアが、1回だけカウントされることに留意されたい。以下に示すように、外部場のないイジングモデルは、最大カット問題として同等に式で示すことができる。
【0005】
グラフG=(V,E,W)を考慮すると、Vは頂点を表し、Eは頂点を接続する辺を表し、Wは対応する辺の重みであり、負の値や整数以外の値になることがある。カットは、Vを2つのセット(V
+及びV
-)に分割することであり、カット値または解は、頂点の2つのセットにまたがる辺の重みの組み合わせとして定義される。特に、解が最大となる場合、最大カットと呼ばれる。この手順のグラフィカルなデモンストレーションを
図1に示す。
【0006】
赤い線101は頂点をV
+={1,4}とV
-={2,3,5}とに分割するランダムカットである。いくつかの並べ替えを行った後、読みやすい解の表現が右側に得られる。カットアクションを強調するために、破線102は同じセット(E
i=E
j)内の頂点を接続する辺を表し、実線103はセット(E
i≠E
j)間の辺を表す。カットアクションによって合計重量が変化することはないことを指摘しておく価値がある。この理由は、合計重量が特定のグラフの固定値であるためであり、数学的には下記の方程式2で示されている。
【数2】
【0007】
ここで、V
+内の頂点がσ=+1のスピン値を取り、V
-内の頂点が値σ=-1を取ると仮定すると、頂点の各ペアと対応する重みとを乗算する場合、それらの合計から以下の方程式3が得られる。
【数3】
【0008】
方程式2と方程式3とを組み合わせて共通項を消去すると、以下の方程式4に示すように、イジングモデルと同様の表現が得られる。
【数4】
【0009】
第1の項は定数なので、H’が最小化されると、第2の項は最大化される。これはまさに最大カットアルゴリズムが検索するものである。したがって、グラフ問題(Wij)を特定のイジングマシンの構成(Jij)に変換できる場合、マシンがハミルトニアンの基底状態を見つけると、それは最大カットと同等になる。
【発明の概要】
【0010】
一態様では、イジングマシンシステムは、各々の正極端子及び負極端子を有する複数のコンデンサと、第1及び第2の端子を有する複数の抵抗器であって、各コンデンサが、その正極端子及び負極端子の各々を介して、複数の抵抗器のうちの少なくとも1つの抵抗器の第1の端子または第2の端子に電気的に接続されている、複数の抵抗器と、正及び負のレールを備えた電源と、複数のコンデンサの各々を電源からの正または負の電圧で初期化し、その後、複数のコンデンサのすべてを電源から切断して、コンデンサの電圧をフローティングさせるように構成されたスイッチングネットワークと、複数のコンデンサのうちの1つのコンデンサの正極端子と負極端子間の電圧を測定するように構成された少なくとも1つの電圧測定装置と、を備えている。
【0011】
一実施形態では、本システムは、コンデンサの電圧レベルが電源の電圧未満である場合に、複数のコンデンサの少なくとも1つのコンデンサを充電し、コンデンサの電圧レベルが、電源の電圧を超えそうである場合に、コンデンサを放電するように構成された、フィードバック回路をさらに備えている。一実施形態では、フィードバック回路は2つのback-to-backインバータを備えている。一実施形態では、2つのback-to-backインバータはCMOS技術で実施される。一実施形態では、スイッチングネットワークは、複数のコンデンサの各コンデンサの正極端子または負極端子に電気的に接続され、各コンデンサの正極端子または負極端子と、電源の正レールまたは負レールとの間に一瞬の電気的接触を形成するように構成されたスイッチのセットを備えている。一実施形態では、スイッチングネットワークは、複数のコンデンサのすべてを電源から切断した後、複数のコンデンサのうちのコンデンサの1つの正極端子または負極端子をランダムに選択することと、ランダムに選択された端子を電源の正レールまたは負レールに瞬間的に接続し、その後切断することと、を行うようにさらに構成されている。
【0012】
一態様では、イジングマシンシステムは、命令が格納された非一時的コンピュータ可読媒体であって、命令が、プロセッサによって実行される場合、回路ネットワークをエミュレートすることであって、エミュレートされた回路ネットワークが、それぞれ正極端子及び負極端子を有する複数のコンデンサと、第1及び第2の端子を有する複数の抵抗器であって、各コンデンサが、その正極端子及び負極端子の各々を介して、複数の抵抗器のうちの少なくとも1つの抵抗器の第1の端子または第2の端子に電気的に接続されている、複数の抵抗器と、正及び負のレールを備えた電源と、を備えている、エミュレートすることと、複数のコンデンサの各々を電源のレールからの正または負の電圧で初期化することと、複数のコンデンサのすべてを電源から切断して、コンデンサの電圧をフローティングさせることと、複数のコンデンサのうち少なくとも1つのコンデンサの正極端子と負極端子との間の電圧を一定期間にわたって測定及び記録することと、を含む各ステップを実施する、非一時的コンピュータ可読媒体を備えている。
【0013】
一実施形態では、各ステップは、複数のコンデンサのすべてを電源から切断した後、複数のコンデンサのうちのコンデンサの1つの正極端子または負極端子をランダムに選択することと、ランダムに選択された端子を電源の正レールまたは負レールに瞬間的に接続し、その後切断することと、をさらに含む。
【0014】
一態様では、イジングマシンを実行する方法が、複数の抵抗器及びコンデンサならびに電源を提供することと、複数のコンデンサの各々を、複数の抵抗器のうちの2つを介して、複数のコンデンサのうちの少なくとも1つの他のコンデンサに接続することと、複数のコンデンサの各々を電源からの正または負の電圧で初期化することと、電源を複数のコンデンサから切断して、コンデンサの電圧をフローティングさせることと、複数のコンデンサのうち少なくとも1つのコンデンサの正極端子と負極端子との間の電圧を一定期間にわたって測定及び記録することと、を含む。
【0015】
一実施形態では、本方法は、複数のコンデンサのすべての正極端子と負極端子との間の電圧を一定期間にわたって測定及び記録することをさらに含む。一実施形態では、本方法は、一定期間の後に正の電圧を有するコンデンサを第1のセットとして指定することと、一定期間の後に負の電圧を有するコンデンサを第2のセットとして指定することであって、第1のセット及び第2のセットが、最大カット分析におけるノードに対応する、指定することと、をさらに含む。
【0016】
前述の目的及び特徴、ならびに他の目的及び特徴は、以下の説明及び添付の図面を参照することにより明らかになる。これらの図面は、本発明の理解を提供するために含まれ、本明細書の一部を構成するものであり、同様の参照符号は同様の要素を表す。
【図面の簡単な説明】
【0017】
【
図1】最大カット問題を示す例示的なグラフである。
【
図2】例示的なコンピューティングデバイスである。
【
図4B】例示的なフィードバック回路の電流/電圧の図である。
【
図6】20の異なるグラフに関して最大カットが得られた試行の割合を示すグラフである。
【
図7】20の異なるグラフについて得られた平均カット値と、最大カットからの差とを示すグラフである。
【
図8A】スピン修正を適用した場合と適用しない場合の時間に対するカット値のグラフである。
【
図8B】試行の最初における、複数のノードにおける時間に対する電圧のグラフである。
【
図8C】試行の終わりにおける、複数のノードにおける時間に対する電圧のグラフである。
【発明を実施するための形態】
【0018】
本発明の図面及び説明は、本発明の明確な理解に関連する要素を図示するために簡略化されているが、明確化のために、関連するシステム及び方法に見られる他の多くの要素を省略していることを理解されたい。当業者であれば、本発明を実施する上で他の要素及び/またはステップが望ましい及び/または必要であることは認識し得る。しかしながら、そのような要素及びステップが当該技術分野で良く知られているため、また、それらが本発明のより良い理解を促進するものではないため、そのような要素及びステップについての説明は本明細書では提供されない。本明細書の開示は、当業者に公知のこのような要素及び方法に対するすべてのそのような変動及び修正を対象とする。
【0019】
別途定義されない限り、本明細書において使用されるすべての技術的用語及び科学的用語は、本発明が属する当業者によって一般に理解されるものと同じ意味を有する。本明細書に記載のものと同様または同等の任意の方法及び物質が本発明の実施または試験において使用され得るが、例示的な方法及び材料が記載される。
【0020】
本明細書で使用される場合、次の用語の各々は、このセクションにおいてそれに関連付けられた意味を有する。
【0021】
冠詞「a」及び「an」は、本明細書では、冠詞の文法上の目的語の1つ、または2つ以上(すなわち、少なくとも1つ)を示すために使用される。例として、「(an)要素」は、1つの要素または2つ以上の要素を意味する。
【0022】
本明細書で、量、時間的な持続期間などの測定可能な値を指すときに使用される場合、「約」は、そのような変動が適切であるように、明示された値から±20%、±10%、±5%、±1%、及び±0.1%の変動を包含することを意図する。
【0023】
本開示を通じて、本発明の様々な態様を範囲形式で表すことができる。範囲形式の記述は、単に便宜及び簡略化のためのものであり、本発明の範囲に対する柔軟性のない制限と解釈されるべきではないことを理解されたい。したがって、範囲の記述は、具体的に開示されたすべての可能性のあるサブ範囲、及び、その範囲内の個別の数値を有するものとみなされるべきである。例えば、1~6などの範囲の記述は、1~3、1~4、1~5、2~4、2~6、3~6などの具体的に開示されたサブ範囲と、その範囲内の個別の数値、例えば1、2、2.7、3、4、5、5.3、6、ならびにその間の全体的及び部分的な増分とを有するものとみなされるべきである。これは、範囲の幅に関係なく適用される。
【0024】
本発明のいくつかの態様において、本明細書で提供される命令を実行するソフトウェアは、非一時的コンピュータ可読媒体に格納され、そのソフトウェアは、プロセッサ上で実行されると、本発明のステップの一部またはすべてを実行する。
【0025】
本発明の態様は、コンピュータソフトウェアで実行されるアルゴリズムに関する。特定の実施形態が、特定のプログラミング言語で記述されているか、特定のオペレーティングシステムまたはコンピューティングプラットフォーム上で実行されるものとして説明される場合があるが、本発明のシステム及び方法は、任意の特定のコンピューティング言語、プラットフォーム、またはそれらの組み合わせに限定されないことが理解される。本明細書に記載のアルゴリズムを実行するソフトウェアは、C、C++、C#、Objective-C、Java(登録商標)、JavaScript(登録商標)、MATLAB(登録商標)、Python、PHP、Perl、Ruby、またはVisualBasic(登録商標)などを含むがこれらに限定されない、当該技術分野で既知の任意のプログラミング言語で記述、コンパイル、または解釈され得る。さらに、本発明の要素が、サーバ、クラウドインスタンス、ワークステーション、シンクライアント、モバイルデバイス、組み込みマイクロコントローラ、テレビ、または当技術分野で知られている任意の他の適切なコンピューティングデバイスを含むがこれらに限定されない、任意の許容可能なコンピューティングプラットフォーム上で実行され得ることが理解される。
【0026】
本発明の一部は、コンピューティングデバイス上で実行されるソフトウェアとして説明されている。本明細書で説明するソフトウェアが、1つの特定のコンピューティングデバイス(例えば、専用サーバまたはワークステーション)上で動作するものとして開示されている場合があるが、ソフトウェアが本質的に持ち運び可能であること、及び、専用サーバ上で実行されるほとんどのソフトウェアが、本発明の目的のために、デスクトップまたはモバイルデバイス、ラップトップ、タブレット、スマートフォン、腕時計、ウェアラブルエレクトロニクスもしくはその他のワイヤレスデジタル/携帯電話、テレビ、クラウドインスタンス、組み込みマイクロコントローラ、シンクライアントデバイス、または当技術分野で知られている任意の他の適切なコンピューティングデバイスを含む、幅広い範囲のデバイスのいずれかでも実行され得ることが、当技術分野で理解されている。
【0027】
同様に、本発明の一部は、様々な無線または有線のコンピュータネットワークを介して通信するものとして説明されている。本発明の目的のために、「ネットワーク」、「ネットワーク化された」、及び「ネットワーキング」という語は、有線イーサネット、光ファイバー接続、様々な802.11規格のいずれかを含む無線接続、3G、4G/LTE、もしくは5GネットワークなどのセルラーWANインフラストラクチャ、Bluetooth(登録商標)、Bluetooth(登録商標) Low Energy(BLE)、もしくはZigbee(登録商標)通信リンク、またはある電子デバイスが別の電子デバイスと通信できる任意の他の方法を包含するものと理解される。いくつかの実施形態では、本発明のネットワーク部分の要素は、仮想プライベートネットワーク(VPN)を介して実施されてもよい。
【0028】
図2及び以下の説明は、本発明を実施し得る適切なコンピューティング環境の簡潔かつ一般的な説明を提供することを意図している。本発明は、コンピュータ上のオペレーティングシステム上で実行されるアプリケーションプログラムと連動して実行されるプログラムモジュールの一般的な文脈で上記に説明されているが、当業者であれば、本発明が他のプログラムモジュールと組み合わせて実施されてもよいことを認識するであろう。
【0029】
概して、プログラムモジュールは、特定のタスクを実施するか、または特定の抽象的なデータタイプを実施する、ルーチン、プログラム、構成要素、データ構造及び他のタイプの構造を含む。さらに、当業者は、本発明が、ハンドヘルドデバイス、マイクロプロセッサシステム、マイクロプロセッサベースまたはプログラマブル家庭用電化製品、ミニコンピュータ、メインフレームコンピュータなどを含む他のコンピュータシステム構成で実施され得ることを理解するであろう。本発明は、通信ネットワークを介してリンクされたリモート処理デバイスによってタスクが実行される分散型コンピューティング環境でも実施され得る。分散型コンピューティング環境において、プログラムモジュールは、ローカルとリモートとの両方のメモリ記憶デバイスに位置してもよい。
【0030】
図2は、本発明の様々な実施形態を実施するためのコンピュータ200の例示的なコンピュータアーキテクチャを示す。
図2に示すコンピュータアーキテクチャは、中央処理装置250(「CPU」)、ランダムアクセスメモリ210(「RAM」)及びリードオンリメモリ(「ROM」)215を含むシステムメモリ205、ならびに、システムメモリ205をCPU250に結合するシステムバス235を含む従来のパーソナルコンピュータを示している。起動時等にコンピュータ内の要素間で情報を転送するのを補助する基本的なルーチンを含む基本入力/出力システムは、ROM215等に記憶される。コンピュータ200は、オペレーティングシステム225、アプリケーション/プログラム230、及びデータを格納するための記憶デバイス220をさらに含む。
【0031】
記憶デバイス220は、バス235に接続された記憶コントローラ(図示せず)を介してCPU250に接続される。記憶デバイス220及びその関連するコンピュータ可読媒体は、コンピュータ200に不揮発性ストレージを提供する。本明細書に含まれるコンピュータ可読媒体の記載は、ハードディスクまたはCD-ROMドライブなどの記憶デバイスを指すが、コンピュータ可読媒体が、コンピュータ200がアクセスできる任意の利用可能な媒体であり得ることを、当業者には理解されたい。
【0032】
限定するものではないが、一例として、コンピュータ可読媒体は、コンピュータ記憶媒体を含み得る。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、またはその他のデータ等の情報を記憶するために、任意の方法、または技術で実施される、揮発性、及び不揮発性、着脱可能、及び固定媒体を含む。コンピュータ記憶媒体は、これに限定されないが、RAM、ROM、EPROM、EEPROM、フラッシュメモリもしくは他のソリッドステートメモリ技術、CD-ROM、DVDもしくは他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶デバイス、または、所望の情報を記憶するために使用することができ、かつコンピュータによってアクセスすることができる、任意の他の媒体を含む。
【0033】
本発明の様々な実施形態によれば、コンピュータ200は、インターネットまたはイントラネットなどのTCP/IPネットワークなどのネットワーク240を介してリモートコンピュータへの論理接続を使用して、ネットワーク環境で動作し得る。コンピュータ200は、バス235に接続されたネットワークインターフェイスユニット245を介してネットワーク240に接続し得る。ネットワークインターフェイスユニット245は、他のタイプのネットワーク及びリモートコンピュータシステムに接続するためにも利用され得ることを理解されたい。
【0034】
コンピュータ200には、キーボード、マウス、タッチスクリーン、カメラ、マイク、コントローラ、ジョイスティック、または他のタイプの入力デバイスを含む、複数の入力/出力デバイス260からの入力を受信して処理するための入力/出力コントローラ255も含まれる場合がある。同様に、入力/出力コントローラ255は、ディスプレイスクリーン、プリンタ、スピーカー、または他のタイプの出力デバイスに出力を提供し得る。コンピュータ200は、限定ではないが、光ファイバー、イーサネット、もしくは銅線などの有線接続、または、限定ではないが、Wi-Fi、Bluetooth(登録商標)、近距離無線通信(NFC)、赤外線を含む無線手段、または、他の適切な有線もしくは無線接続などを介して入力/出力デバイス260に接続できる。
【0035】
上記で簡単に述べたように、ネットワーク化されたコンピュータの動作を制御するのに適したオペレーティングシステム225を含む、多数のプログラムモジュール及びデータファイルが、コンピュータ200の記憶デバイス220及び/またはRAM210に格納され得る。記憶デバイス220及びRAM210は、1つまたは複数のアプリケーション/プログラム230も格納し得る。特に、記憶デバイス220及びRAM210は、ユーザに様々な機能を提供するためのアプリケーション/プログラム230を格納し得る。例えば、アプリケーション/プログラム230は、ワードプロセッシングアプリケーション、スプレッドシートアプリケーション、デスクトップパブリッシングアプリケーション、データベースアプリケーション、ゲームアプリケーション、インターネットブラウジングアプリケーション、電子メールアプリケーション、メッセージングアプリケーションなど、多くのタイプのプログラムを備えている場合がある。本発明の一実施形態によれば、アプリケーション/プログラム230は、ワードプロセッシング機能、スライドプレゼンテーション機能、スプレッドシート機能、データベース機能などを提供する多機能ソフトウェアアプリケーションを含む。
【0036】
いくつかの実施形態におけるコンピュータ200には、コンピュータ200の周囲の環境及びコンピュータ200の内部環境を監視するための様々なセンサー265を含めることができる。これらのセンサー265には、全地球測位システム(GPS)センサー、感光センサー、ジャイロスコープ、磁力計、温度計、近接センサー、加速度計、マイク、生体認証センサー、気圧計、湿度センサー、放射線センサー、または任意の他の適切なセンサーを含めることができる。
【0037】
本明細書では、提案されたイジングマシンを開示する。開示されたイジングマシンは、いくつかの実施形態では、例えばネットワーク内に配置された複数の抵抗器及びコンデンサを含む電子部品のセットによって表される場合がある。いくつかの実施形態では、本開示のデバイスは、例えば1つまたは複数のpチャネル電界効果トランジスタ(FET)及び/または1つまたは複数のnチャネルFETを含むローカルフィードバック回路をさらに備えていてもよい。いくつかの実施形態では、フィードバック回路は、1つまたは複数の論理ゲート、例えば1つまたは複数のインバータを含み得る。いくつかの実施形態では、フィードバック回路は2つのback-to-backインバータを含み得る。いくつかの実施形態では、インバータを含むがこれに限定されない論理ゲートは、CMOS技術で実施されてもよい。いくつかの実施形態では、本開示のデバイスは、デバイスのコンデンサの片側を正電圧源、負電圧源、または接地基準に一時的に接続するように構成された1つまたは複数のスイッチまたはリレーをさらに備えていてもよい。いくつかの実施形態では、スイッチまたはリレーの1つまたは複数が、コントローラ、例えばマイクロコントローラまたはコンピューティングデバイスによって制御される場合がある。いくつかの実施形態では、本明細書に開示されるシステムは、1つまたは複数のセンサー、例えば、回路ネットワーク内の2点間の電圧を測定するように構成された電圧センサーもしくは電流センサー、またはネットワーク内の1つの経路に沿った電流を測定するように構成された電流センサーを備えていてもよい。いくつかの実施形態では、開示されたデバイスの機能または個々のハードウェアコンポーネントのいくつかまたはすべてが、コンピューティングデバイス上で実行されるソフトウェアシミュレーションで構成される場合がある。
【0038】
方程式1から、イジングモデルを記述するために、2つの量、すなわち、ノード間の結合強度(Jij)及びノードの状態(σi,σj)が必要であることがわかる。状態を保存したり、ノード間の結合強度を制御したりしてノードが相互作用できるようにするためのいくつかのメカニズムも必要である。これらの機能は、それぞれコンデンサと調整可能な抵抗器とを使用して容易に実現できる。
【0039】
コンデンサを使用してノードを表すことを考えると、プレートのうちの最初のプレートが正として定義され、ここで正の電圧が+1のスピンに変換され、一方、負の電圧値は-1のスピンに変換される。2つのノード間の結合は、等しい抵抗を持つ1つの対の抵抗器によって実現される。抵抗が低いほど、結合は強くなる。すなわち、Rij∝1/Jijである。正の結合は2つのコンデンサの同じ極性を接続することによって実現されるが、負の結合は反対の極性を接続することによって実現される。これらは、本明細書ではそれぞれ並列結合及び反並列結合と呼ばれる。
【0040】
上記の洞察は、イジングモデルが抵抗結合コンデンサネットワークに変換されることに繋がる。その結果、最大カット問題は回路問題になる。
図1を例として参照すると、まず、重量と結合抵抗との関係はR
ij=1/W
ijに従い、ここでRはスケーリング抵抗であり、R
ijの符号は結合の極性を示す。次に、5つのコンデンサを使用して5つのノードを表し、それらの電圧はランダムなスピン構成に対応するランダムな符号に初期化される。全体の回路を
図3Aに示す。赤い線301は正極端子を示し、青い線302は負極端子である。同じラベルの付いたコンデンサ(例えば、C2、303)は同じノードを表す。結合抵抗器のみが線と交差する。すなわち、線302及び線304が、一例として、図の中で重なり合っているが、重なりの各々は必ずしも電気的に接続された接合部ではない。抵抗器が線と重なる場所(例えば、抵抗器305と線304とが重なる場所)、またはコンデンサが線と重なる場所(例えば、コンデンサ303と線304とが重なる場所)は、電気接合部を表す。
【0041】
回路が平衡に達すると、各コンデンサの電圧は、システムの過渡的定常状態を示すグラフである
図3Bのグラフに示すように、正のレベルまたは負のレベルに分岐する。正のレベルと負のレベルとは、スピンの2つのグループに等しい。回路は、V
+={2}とV
-={1,3,4,5}とを明らかにする。方程式4を適用することにより、0.34のカット値が得られ、これが実際に最大カットとなる。
【0042】
上で説明したシステムは予期されたように機能するが、このシステムは、いくつかの実際上の問題をも有している。まず、コンデンサの漏れにより、すべてのノードは最終的に0Vまで低下する。また、平衡時の電圧レベルが非常に低いため、信頼性の高い読み取りが困難になる場合がある。別の問題は、エネルギー地形が通常は凸状ではないため、マシンが全体の最小値に収束することが保証されないことである。言い換えると、多くの局所的な最小値が存在し、マシンは初期条件によってはエネルギーの盆地に簡単に引き寄せられる。これらの問題を克服するための解決策については以下で説明する。
【0043】
ZIVダイオード
ローカルフィードバック回路を導入することで、定常電圧を所望のレベルに安定させることができる。この回路は、電圧が電源電圧の範囲内にあるときにコンデンサをその極性に応じて充電し、電圧が電源電圧を超えそうになったときにコンデンサを放電できる必要がある。さらに、この回路は、他のノードから結合された信号を圧倒しないように、低電圧で低電流を供給する必要がある。
図4Aに示す回路は、これら2つの条件を満たすことができる。
図4Aは、例示的なZIVダイオードの概略図である。
図4Bは、
図4Aに示した回路のI-V特性のグラフである。
【0044】
V
pとV
mが差動であり、
【数5】
の共通モード電圧を中心に変動すると仮定する。差動モード電圧はV
CM=V
p-V
mと定義され、V
pに流入する電流は正方向と定義される。回路は対称なので、V
DM≧0の場合にのみ動作が解析される。V
DMがゼロである場合、すべてのデバイスは飽和領域にあり、NMOSペアはPMOSによって供給されるすべての電流を吸収するため、V
pから電流は流れ出ない。V
DMが増加すると、P
1及びN
2がN
1及びP
2よりも強くなり、このため、V
pから正味の電流が流れ出る。V
DMがさらに増加すると、P
1及びN
2は三極管領域に入り、P
2及びN
1はオフになり、V
pから流れ出る電流は小さくなる。V
DMがV
ddを超えると、P
1及びN
2のドレインとソースとが入れ替わり、同時にそれらのソース-バルク接合部が順方向にバイアスされ、V
pに正の電流が流れ込むことになる。この回路の全体のI-V特性は、
図3に示されている。斜めの「Z」字型をしているため、このサブシステムは本明細書では「ZIVダイオード」と呼ばれる。回路にZIVダイオードを導入すると、ノード電圧が双安定になり、このため、開示されたシステムは、本明細書では双安定抵抗結合イジングマシン(BRIM)と呼ばれる場合がある。
【0045】
スピン固定アニーリング
グラフの複雑さが増し、イジング定式化における局所的な最小値の数が増加するにつれて(例えば、32ノードのグラフが220を超える局所的な最小値を有する可能性がある)、勾配降下に従うマシンは局所的なエネルギー最小値に到達する可能性が高くなる。局所的な最小値から脱出する1つの可能性のある方法は、いくつかのスピンの極性を反転することである。しかし、このスキームは、各ノードの極性を検出及び変更するためのいくつかの監視ブロックが必要であり、これにより、ハードウェアの複雑さが大幅に増加する。本開示では、代わりに1つまたは複数のノードがランダムに選択され、そのノードまたは複数のノードが供給レールの1つに短時間クリップ(すなわち、短絡)される。いくつかの実施形態では、ノードまたは複数のノードは、1ps~100ps、または1ps~50ps、または1ps~20ps、または5ps~20ps、または10ps未満、または約10ps、または50μs~10ms、または50μs~500μs、または100μs~500μs、または200μs~500μs、または1ms~500μsの期間、供給レールにクリップされる場合がある。ノードまたは複数のノードの選択はランダムまたは疑似ランダムであってもよく、または、いくつかの実施形態では、例えば、イジングマシンが生成されたグラフ内のノードの数及び配置に基づいて、順次にまたは事前に決定されてもよい。
【0046】
このため、ノードのスピンは、一定の時間間隔内に現在の状態を維持するか、反対の状態に切り替わる。スピン固定の発生は、最初はより頻繁に発生するが、徐々に減少する。システムのエネルギーが全体的な最小値に近づくと、単一のスピン固定により、脱出できる可能性が低くなる。このスキームは、本明細書では「スピン固定アニーリング」と呼ばれ、これを実施するために2つの対のスイッチが使用される。これらのスイッチは、エネルギー最小値を求めてマシンの状態が進展される前に、ノード電圧を初期化するためにも使用できることに留意されたい。ZIVダイオードとともに、BRIMノードの高レベルの概略図と、他のノードへのその結合が
図5に与えられている。
【0047】
実験例
以下の実験例を参照して、本発明をさらに詳細に説明する。これらの実施例は、もっぱら説明の目的で提供されており、別途明記されない限り、限定することを意図するものではない。したがって、本発明は、以下の実施例に限定されるものとはいずれの方法でも解釈されるべきものではなく、むしろ、本明細書で提供される教示の結果として明らかになる任意かつすべての変形形態を包含すると解釈されるべきである。
【0048】
さらなる記載を伴わずに、当業者であれば、前述の説明及び以下の例示を使用して、本発明のシステム及び方法を製造し、利用することができると考えられる。したがって、以下の動作の例は、本発明の例示的な実施形態を具体的に示すものであり、いかなる方法でも本開示の残りの部分を制限するものとして解釈されるべきではない。
【0049】
提案された回路の性能を評価するために、32ノードBRIMを、45nm汎用プロセス設計キット(GPDK)で設計し、Virtuoso Analog Design Environment(ADE)でシミュレーションした。どちらもCadenceから提供されている。テストベンチには20のバイナリ重み付けグラフが含まれている。すなわち、Wは±1の値を取る。まず、スピン固定アニーリングを無効にし、各グラフを異なる初期条件で20回シミュレートした。その後、スピン固定アニーリングが有効にされた。公平な比較のために、同じノード電圧初期条件を使用したが、各実行で異なるスピン固定シーケンスが適用された。
【0050】
シミュレーション結果は
図6にまとめられている。
図6のグラフは、全体の最小値に到達した実行の割合を示している。各グラフG1~G20について、合計40回の実行が実施され、そのうち20回はスピン固定アニーリングあり、20回はスピン固定アニーリングなしである。マシンが実際に最適な解(すなわち、全体的なエネルギー最小値)を見つけることができることがわかる。しかし、スピン固定アニーリングなしの場合、全体の最小値に到達する実行の割合は平均で29.25%に過ぎず、一方、スピン固定アニーリングを使用すると、マシンは79.75%の実行で最適な解を見つけることができる。常に最良の解(すなわち、最大カット値)に到達できたグラフが6つ存在した。最善の解ではなかった解については、各グラフの平均カットと最大カットまでの距離が計算され、その結果が
図7にプロットされている。棒グラフのバーは平均カット値を示し、エラーバーは平均カット値と最大カットとの間の距離を表している。
図6からの100%最大カットに達する6つのケース(すなわち、スピン固定アニーリングによるG2、G4、G5、G9、G17、及びG19)が省略されていることに留意されたい。スピン固定アニーリングでは、解の品質が大幅に向上し、平均カットエラーはスピン固定アニーリングなしの5.89と比較して1.75であった。
【0051】
システムの過渡的な動作を調べることも価値がある。グラフG5は上記のテストベンチから選択され、そのカット値の変化が、スピン固定アニーリングありとなしとの両方で、時間の進行とともに記録された。
図8Aは、スピン固定アニーリングなし(緑の曲線)とスピン固定アニーリングあり(青の曲線)との両方で、経時的なグラフG5のカット値の変化を示している。赤い線は最大カット値を表し、y軸上のその位置は意図的に上方にシフトされており、それにより、最大カット値に達する青い曲線の平坦な部分を隠さないようしている。
図8Aに見られるように、スピン固定アニーリングが無効になっている場合(緑の曲線)、マシンはより低いエネルギーレベルに向かって急速に進展した。これは、カット値の増加に等しいが、残念ながら、局所的な最小値にはまり、その後そこに落ち着いた。
【0052】
図8Bは、シミュレーション開始時(0~0.2の正規化された時間)の各ノードの過渡電圧を示しており、ノード間の相互作用が明確に確認できる。一方、スピン固定アニーリングが有効になっている場合(青い曲線)、マシンはエネルギー地形内の多数の吸引領域の探索に忙しくなる。全体の最小値付近に達すると、1つのノードのさらなるスピン固定が、エネルギーレベルを一時的にのみ増加させるが、残りのノードによってすぐに全体の最小値に引き戻される。この動作は、アニーリング時間の終わり近くの過渡電圧を示す
図8Cに見ることができる。
【0053】
結論
開示された双安定抵抗結合イジングマシンは、実際に、最大カット問題などの困難な計算の問題を解決するその能力を示している。シンプルなビルディングブロックのみを使用することで、開示されたトポロジは、他のデスクサイズのマシンと(または部屋サイズとさえ)比較して、よりスケーラブルで安価になる。スピン固定アニーリングの助けにより、開示された機械の性能がさらに向上する。最大カットに到達する確率が50.5%増加するだけでなく、全体の最小値に到達しない場合でも解の品質が大幅に向上し、平均カットエラーは1.75になる。
【0054】
本明細書で引用される特許、特許出願、及び刊行物の各々及びすべての開示は、参照によりそれらの全体が本明細書に組み込まれる。本発明は、具体的な実施形態を参照して開示されてきたが、他の当業者によって、本発明の真の趣旨及び範囲から逸脱することなく、本発明の他の実施形態及び変形形態が考案されてもよいことは明らかである。添付の特許請求の範囲は、すべてのかかる実施形態及び均等の変形形態を含むように解釈されることが意図される。
【0055】
引用文献
以下の刊行物は、その全体が参照により本明細書に組み込まれる。
【0056】
C.Johnson,D.H.Allen,J.Brown,S.Vanderwiel,R.Hoover,H.Achilles,C.Cher,G.A.May,H.Franke,J.Xenedis、及びC.Basso,“A wire-speed powerTM processor:2.3GHz 45nm SOI with 16 cores and 64 threads,”in 2010 IEEE International Solid-State Circuits Conference-(ISSCC),2010,pp.104-105.
【0057】
B.Erbagci,N.E.C.Akkaya,C.Teegarden、及びK.Mai,“A 275 Gbps AES encryption accelerator using ROM-based S-boxes in 65nm,”in 2015 IEEE Custom Integrated Circuits Conference(CICC),2015,pp.1-4.
【0058】
T.Inagaki,Y.Haribara,K.Igarashi,T.Sonobe,S.Tamate,T.Honjo,A.Marandi,P.L.McMahon,T.Umeki,K.Enbutsu,O.Tadanaga,H.Takenouchi,K.Aihara,K.-i.Kawarabayashi,K.Inoue,S.Utsunomiya、及びH.Takesue,“A coherent ising machine for 2000-node optimization problems,”Science,vol.354,no.6312,pp.603-606,2016.
【0059】
T.Wang 及びJ.Roychowdhury,“OIM:Oscillator-Based Ising Machines for Solving Combinatorial Optimisation Problems,”2019.
【0060】
S.Kirkpatrick,C.D.Gelatt、及びM.P.Vecchi,“Optimization by simulated annealing,”science,vol.220,no.4598,pp.671-680,1983.
【0061】
E.Guglielmi,F.Toso,F.Zanetto,G.Sciortino,A.Mesri,M.Sampietro、及びG.Ferrari,“High-value tunable pseudo-resistors design,”IEEE Journal of Solid-State Circuits,vol.55,no.8,pp.2094-2105,2020.
【国際調査報告】