大阪市立大学は、量子コンピュータを用いて分子の量子化学計算を行ったとき、望んでいるスピン量子数を持つ波動関数を正しく得るための手法として、「スピン汚染」(望んでいないスピン量子数を持つ波動関数成分)を効率的に取り除くことができる量子アルゴリズムを開発したと発表した。
同成果は、同大学大学院理学研究科の杉﨑研司 特任講師、佐藤和信 教授、工位武治 名誉教授らの研究チームによるもの。詳細は、国際学術誌「Physical Chemistry Chemical Physics」にオンライン掲載された。
原子や分子の微視的性質を支配するシュレーディンガー方程式を正確に解き、エネルギーを正確に求める「量子化学計算」は、量子コンピュータを活用した近未来の計算ターゲットとして、近年注目されている。
量子化学計算において原子・分子のエネルギーの超精密計算を実行しようとすると、従来のコンピュータ(古典コンピュータ)の場合、分子サイズが大きくなるにつれて計算時間が指数関数的に増大する“指数爆発”を起こしてしまうという大きな課題がある。要は計算に膨大な時間を要してしまい、実用に耐えられないというわけだ。それに対し、量子コンピュータを用いた場合は計算時間の指数爆発を抑えることができ、現実的な時間内に計算結果を出せることが理論的に示されている。
量子化学計算によって化学現象を正しく理解するには、分子について正しい「スピン量子数S」を持つ電子状態(スピン状態)について、精密に計算できることが重要だ。スピン量子数Sとは、電子のスピン角運動量の大きさを特徴づける量子数のことだ。この内部自由度が異なるだけで、分子は化学反応性や物性が大きく変化するのである。
量子コンピュータを量子化学計算に用いる際に必要なことは、任意の波動関数についてスピン汚染を効率的に取り除き、正しいスピン状態の波動関数を得ることである。スピン汚染では一般に、求めたい電子状態のスピン量子数をsとすると、スピン量子数が1だけ大きい「スピン量子数S=s+1」の波動関数成分が主なスピン汚染源となる。つまり、「スピン量子数S=s+1」成分を除去することが重要だが、これまでそれができていなかった。
そこで研究チームは今回、以前同チームが開発したスピン状態を決定する量子アルゴリズムを一部修正することで、スピン汚染成分を効率的に取り除くことができることを明らかにした。
今回開発された量子アルゴリズムを長い量子演算の途中で定期的に適用し、スピン汚染を適宜取り除くことにより、最終的に量子コンピュータ上で量子化学計算を実行したときに、正しいスピン状態が得られる確率を高めることが可能になったという。大きな分子の量子化学計算ではスピン汚染が起きやすいため、その成分除去は必要不可欠であり、今回開発された量子アルゴリズムならそれを実現できるという。
また今回の量子アルゴリズムは、古典コンピュータ上で用いられているスピン汚染を取り除く方法よりも、スピン汚染除去能力的に優れているという。S=s+1の波動関数成分だけでなく、スピン量子数がより大きな「S=s+2」などの波動関数成分も部分的に取り除くことができるからだと研究チームでは説明している。
今回の成果は、量子コンピュータを用いた精密な量子化学計算において、望んでいるスピン状態の波動関数を得るためのカギとなる。研究チームは、量子コンピュータを実際の化学研究に役立てるために乗り越えなければならない課題のひとつが解決されたとしている。