マガジンのカバー画像

量子アニーリングプログラミング

14
Fixstars AmplifyやD-Wave Leapを使って、簡単な量子アニーリングプログラミング例をざっくり書いていく。一生懸命に難解な数式を展開して長々と説明するのは他の…
運営しているクリエイター

#Amplify

QAP.00:目次【量子コンピュータ/アニーリング@Python/Fixstars Amplify/D-Wave】

※記事が増えてきたので、ざっと一覧するためのページです ーーーーーーーー ▼ Fixstars Amp…

fz5050
2年前
4

QAP.11:「DQM:Discrete Quadratic Models」で等式/不等式制約【量子コンピュータ/ア…

【はじめに】※再掲 「DQM」では「制約条件に相当する数式」として「linearパターン」と「quad…

fz5050
2年前
20

QAP.10:「DQM:Discrete Quadratic Models」の基本【量子コンピュータ/アニーリング@…

【はじめに】※再掲 「D-Wave(Ocean SDK)」では、計算させたい問題の種類にあわせて、いい感…

fz5050
2年前
28

QAP.09:4色問題(グラフの彩色問題)、AND制約とpenalty関数の使い方【量子コンピュ…

【はじめに】「Fixstars Amplify」では、「ヘルパー関数」を使用することにより、裏でいい感じ…

fz5050
2年前
18

【QAP.練習問題2】:ビンパッキング問題【量子コンピュータ/アニーリング@Python/D-Wa…

【はじめに】「D-Wave」による「CQM」の練習として、簡単な「ビンパッキング問題」を解いてみ…

100
fz5050
2年前
19

QAP.08:「CQM:Constrained Quadratic Models」の基本【量子コンピュータ/アニーリン…

【はじめに】繰り返しになるが、D-Waveでは計算させたい問題の種類にあわせて、いい感じに取り…

fz5050
2年前
24

QAP.07:BQMに制約条件を仕込む(pyqubo版)【量子コンピュータ/アニーリング@Python/D-Wave】

【はじめに】※再掲 「D-Wave(Ocean SDK)」では、計算させたい問題の種類にあわせて、いい感じに取り扱ってくれる「Model(計算モデルオブジェクト)」を用意している。大きく分けて「3つ」ある。 今回は「制約条件」の中でも「BQMに対しての制約条件の仕込み方(pyqubo版)」について述べる。(※) ※2022年2月現在、数式の通りに制約条件を記述して追加していく「CQM」が提供されているため、わざわざ「BQM」を使って制約条件を仕込む、ということはあまりない

【QAP.練習問題1】:0-1ナップサック問題【量子コンピュータ/アニーリング@Python/Fix…

【はじめに】第(1-2,5-6)回でざっと「Fixstars Amplify」の基本的な使い方をまとめた。 その内…

100
fz5050
2年前
16

QAP.06:制約条件を仕込む2(ヘルパー関数)【量子コンピュータ/アニーリング@Python…

【はじめに】前回は「制約条件を数式化」し、「目的関数」の後ろに「ペナルティ関数」を付与し…

fz5050
2年前
20

QAP.05:制約条件を仕込む1【量子コンピュータ/アニーリング@Python/Fixstars Amplif…

【はじめに】※再掲 繰り返しになるが、量子アニーリングによるプログラムの挙動をざっくりい…

fz5050
2年前
23

QAP.04:D-Wave QUBO用行列を直接作る【量子コンピュータ/アニーリング@Python/D-Wave…

【はじめに】前回は、D-Wave Leapの使い方をざっとまとめた。 簡単なプログラムとして「Binary…

fz5050
2年前
28

QAP.03:Hello,D-Wave Leap【量子コンピュータ/アニーリング@Python/D-Wave】

【はじめに】第一回、第二回では「Fixstars Amplify」を使った。 今回は「D-Wave Leap」の使い…

fz5050
2年前
19

QAP.02:イジング変数と「数の2分割問題」【量子コンピュータ/アニーリング@Python/F…

【はじめに】前回は「Fixstars Amplify」を使って、ざっと量子アニーリングのプログラムをやっ…

fz5050
2年前
18

QAP.01:Hello,量子アニーリング【量子コンピュータ/アニーリング@Python/Fixstars Amplify】

【はじめに】量子アニーリングによるプログラムの挙動をざっくりいうと、 というものである。 【例】「x + 2y - 3z」をできるだけ小さくする変数(x, y, z)の組み合わせ 目的の数式に対して変数(x, y, z)の0/1の組み合わせは様々あるが、結論としては(x, y, z)=(0, 0, 1)が最も小さい値となる組み合わせとなる。 こんな風に与えられた数式に対して、いい感じの答えとなる組み合わせを探す際に、量子アニーリングの仕組みをつかうのが量子アニーリング