NASAは、「Vesuvius」と呼ぶ512qubitのチップを使うD-Wave 2システムを使っていたが、1152qubitのWashingtonチップを使うD-Wave 2Xへのアップグレードを行った。なお、D-Waveマシンの使用できるqubit数は、ある意味、出たとこ勝負で、NASAのD-wave 2は509qubit、D-Wave 2Xでは1097qubitと、ある程度の不良qubitがあるという。
Washingtonチップでは、動作温度が最大15mK、平均的には13mKと、Vesuviusチップより5mK低くなった。温度の低下は僅かであるが、これで性能がかなり上がったという。また、qubitの接合の直径が0.6mmであったが、Washingtonチップでは0.4mmと小さくなり接合容量が半減し、qubit全体で見ても寄生容量が30%減少した。そして、磁界や電流の設定精度が30%程度改善された。結果として、断熱アニールの性能は4倍になったという。
D-Waveのシステムをプログラムするには、(1)最適化問題の目的関数を2値変数の関数として表す「QUBO(Quadratic Unconstrained Binary Optimization)」で表現する。そして、(2)でそのQUBOをハードウェアに組み込む。D-Waveのネットワークは、各qubitから6本のリンクが出ていて、8qubitを密に接続したキメラグラフという構造となっている。各リンクの接続の強さをプログラムするのであるが、どのように設定するのが良いかは発見的手法によっており、プログラミングは容易ではないようである。また、ハードウェアエラーの影響を減らすために対称性の利用やエラー訂正などを取り入れているという。
プログラムが組み込まれたら、量子アニールを行い、結果を観測する。結果は、確率的にしか読み出せないので、この図に見られるように分布を持って読み出される。このため、分布の形が分かるまで、実行を繰り返す必要がある。
ということで、どのようにプログラミングを行なえば良いかが重要な研究テーマとなっているという。
現在、NASAでは、複雑な計画とスケジュール問題を解くのに量子アニールを使うことを研究している。QUBOの組み込みと実行の最適化について、スケジューラを開発し、6×6の小規模問題でテストしたが、使用するqubit数を10倍に増やして15×15の問題に取り組む予定であるという。また、電力ネットワークのグラフを解析し、複数故障が発生する最も起こりやすい原因を見つけるとか、サブグラフ同士がマッチするかなどの問題に取り組んでいる。
また、量子物理の面では、hとJのバイアスを補正する方法について研究しており、次の図の一番上の左のグラフが補正前の分布で、右側が補正後の分布を示している。この補正により、ばらつきが減少し、性能と信頼性が改善されたという。
そして、低周波のノイズがアニール性能に大きな影響を与えることを見出し、設計にフィードバックされることになっている。また、D-Waveのネットワークは接続性の制限が強く、組み込みを非常に難しくしている。このため、接続されたチェインの性質を見て、パラメタを設定する方法を研究している。
結論として、量子コンピューティングの力を使えるようにするには、コンピュータ科学の進歩、信頼性が高くスケーラブルな量子コンピュータの設計方法の両面で、大きな挑戦が必要である。
NASAの研究で、量子アニールコンピュータで最適化問題が解けることを示したが、どのように賢明なプログラミングを行うのかという問題の解決が残っている。
D-Waveなどの量子アニールマシンは急速に改良されており、実用的な問題が扱えるまで、一桁の改善というところまで来ている。と述べて、発表を締めくくった。