JP7009603B2 - 量子回路シミュレーション方法、装置、設備、記憶媒体、及びプログラム - Google Patents
量子回路シミュレーション方法、装置、設備、記憶媒体、及びプログラム Download PDFInfo
- Publication number
- JP7009603B2 JP7009603B2 JP2020205784A JP2020205784A JP7009603B2 JP 7009603 B2 JP7009603 B2 JP 7009603B2 JP 2020205784 A JP2020205784 A JP 2020205784A JP 2020205784 A JP2020205784 A JP 2020205784A JP 7009603 B2 JP7009603 B2 JP 7009603B2
- Authority
- JP
- Japan
- Prior art keywords
- tensor
- matrix
- gate
- order
- state
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N10/00—Quantum computing, i.e. information processing based on quantum-mechanical phenomena
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
- G06F30/3308—Design verification, e.g. functional simulation or model checking using simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N10/00—Quantum computing, i.e. information processing based on quantum-mechanical phenomena
- G06N10/20—Models of quantum computing, e.g. quantum circuits or universal quantum computers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Computational Mathematics (AREA)
- Artificial Intelligence (AREA)
- Geometry (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
本発明の実施形態は、量子コンピュータ技術分野に関し、特に量子シミュレーション計算分野に関する。
テンソルネットワーク(Tensor Network)は現代物理学、コンピュータ科学研究分野において核心的な役割を果たす数学ツールの一つである。D.Deutschが1989年に量子計算モデル(Quantum computational model)を創立し、量子回路はテンソルネットワークの一種であり、量子回路計算過程の本質はテンソルネットワーク縮約(Tensor Network Contraction)であることを提唱した。近年、各社製品はテンソルネットワーク縮約フレームワークに基づくアルゴリズムを用いて一連の量子回路のシミュレーションを実現している。しかし、既存のテンソルネットワークはマトリクスの汎化(ndim>2)であり、計算効率が低く、既存のツールライブラリを使用することが困難であるため、量子シミュレーション計算においてどのように計算効率を高めるかは量子シミュレーション技術の早急に解決すべき問題となっている。
本発明は、量子回路シミュレーション方法、装置、設備及び記憶媒体を提供する。
本発明の1つの態様は、量子回路シミュレーション方法を提供し、当該方法は、n個の量子ビットを含む量子回路に基づいて、前記量子回路の対応する、n階状態テンソルによって表現されるn階純粋状態を得ることと、前記量子回路に基づいて、前記n階状態テンソルとの縮約処理が行われるべき、量子ゲートを表現する(k,k)階ゲートテンソルを決定することと、前記n階状態テンソルと前記(k,k)階ゲートテンソルとの間の縮約処理を古典コンピュータにおいて表現可能で、古典コンピュータにおける計算量を削減するマトリクス間の処理に変換し、処理結果を得ることと、前記処理結果を前記n階状態テンソルと前記(k,k)階ゲートテンソルとの縮約処理の結果とし、量子回路のシミュレーションを完了することと、を含み、ここで、前記kは量子ゲートが作用する量子ビットの数を示す。
本発明の別の態様は、量子回路シミュレーション装置を提供し、当該装置は、n個の量子ビットを含む量子回路に基づいて、前記量子回路の対応する、n階状態テンソルによって表現されるn階純粋状態を得るための状態テンソル取得モジュールと、前記量子回路に基づいて、前記n階状態テンソルとの縮約処理が行われるべき、量子ゲートを表現する(k,k)階ゲートテンソルを決定するためのゲートテンソル決定モジュールと、前記n階状態テンソルと前記(k,k)階ゲートテンソルとの間の縮約処理を古典コンピュータにおいて表現可能で、古典コンピュータにおける計算量を削減するマトリクス間の処理に変換して処理結果を得、前記処理結果を前記n階状態テンソルと前記(k,k)階ゲートテンソルとの縮約処理の結果とし、量子回路のシミュレーションを完了するための縮約処理モジュールと、を備え、ここで、前記kは量子ゲートが作用する量子ビットの数を示す。
本発明の別の態様は、電子設備を提供し、当該設備は、少なくとも1つのプロセッサと、前記少なくとも1つのプロセッサに通信接続されるメモリと、を備え、前記メモリには、前記少なくとも1つのプロセッサにより実行可能な命令が記憶されており、前記命令は、前記少なくとも1つのプロセッサにより実行される場合、以上の方法を実行させる。
本発明の別の態様は、以上の方法をコンピュータに実行させるためのコンピュータ命令を記憶した非一過性のコンピュータ可読記憶媒体を提供する。
このように、量子回路における量子ゲートと純粋状態とのテンソル縮約処理を古典コンピュータにおいて表現可能で、古典コンピュータにおける計算量を削減するマトリクス間の処理に変換することで、計算ステップを簡略化すると同時に、計算効率を向上する。
ここに記載された内容は、本発明の実施形態のキーポイント又は重要な特徴を標識することを意図せず、また、本発明の範囲を制限することにも用いられないことを理解すべきである。本発明の他の特徴については、下記の明細書を通して説明を促す。
添付図面は、本方案をより良く理解するためのものであり、本発明を限定するものではない。
本発明の実施形態による量子回路シミュレーション方法の実現フローチャート模式図である。
本発明の実施形態による量子回路シミュレーション方法の1つの具体例におけるフローチャート模式図である。
本発明の実施形態による1つの具体例における量子回路模式図1である。
本発明の実施形態による1つの具体例における量子回路模式図2である。
本発明の実施形態による量子回路シミュレーション装置の構造模式図1である。
本発明の実施形態による量子回路シミュレーション装置の構造模式図2である。
本発明の実施形態による量子回路シミュレーション方法の電子設備のブロック図である。
以下では、本出願の例示的な実施形態を、理解を容易にするために本出願の実施形態の様々な詳細を含む添付の図面に関連して説明するが、これらは単に例示的なものであると考えるべきである。 したがって、当業者は、本出願の範囲及び精神を逸脱することなく、本明細書に記載された実施形態に様々な変更及び修正を加えることができることを認識すべきである。 同様に、以下の説明では、周知の機能及び構成については、明確化及び簡明化のために説明を省略する。
ここで、まずテンソルネットワークの概念を紹介する。具体的に、テンソルは、ベクトル空間上の多重線型写像として数学的に定義され、コンピュータ科学におけるn次元配列に相当し、即ち、n階テンソルは、n次元配列Ti1i2...inと記すことができ、テンソルネットワークは有限又は無限個のテンソルが接続された集合である。量子回路における状態、ゲート等の概念はすべてテンソルとして表現することができるため、1つの量子回路は、1つのテンソルネットワークとして表現することができる。
具体的に、図1は本発明の実施形態による量子回路シミュレーション方法の実現フローチャート模式図であり、図1に示すように、以下ステップを含む。
ステップS101において、n個の量子ビットを含む量子回路に基づいて、前記量子回路の対応する、n階状態テンソルによって表現されるn階純粋状態を得る。
ステップS102において、前記量子回路に基づいて、前記n階状態テンソルとの縮約処理が行われるべき、量子ゲートを表現する(k,k)階ゲートテンソルを決定し、ここで、前記kは量子ゲートが作用する量子ビットの数を示す。
ステップS103において、前記n階状態テンソルと前記(k,k)階ゲートテンソルとの間の縮約処理を古典コンピュータにおいて表現可能で、古典コンピュータにおける計算量を削減するマトリクス間の処理に変換し、処理結果を得る。
ステップS104において、前記処理結果を前記n階状態テンソルと前記(k,k)階ゲートテンソルとの縮約処理結果とし、量子回路のシミュレーションを完了する。
実際の応用において、前記nは2以上の正の整数であり、前記kはn以下の正の整数である。ここで、前記量子ゲートは、前記量子回路のk個の量子ビットに作用する、又は、前記量子ゲートは、量子回路のk個の回路に作用する、ということもでき、そのうち、各回路は1個の量子ビットに対応する。
ここで、前記(k,k)階ゲートテンソルは、量子ゲートがk個の入力とk個の出力とを有することを示す。この例において、量子ゲートの入力と出力との数が異なる場合は省略する。
このように、量子回路における量子ゲートと純粋状態とのテンソル縮約処理を古典コンピュータにおいて表現可能で、古典コンピュータにおける計算量を削減するマトリクスの間の処理に変換することで、いわゆる、テンソルを特殊な一種のマトリクスに同型写像し、テンソルネットワークを縮約してマトリクス演算に同型写像することで、テンソルネットワークを縮約して等価的に計算装置上で直接演算可能なマトリクス処理に変換し、このようにして、計算ステップを簡略化し、計算効率と利便性を高め、全体的に量子回路シミュレーションの効率を高めるための基礎を打ち立てた。
本発明の1つの具体例において、前記(k,k)階ゲートテンソルは、ゲートマトリクスによって表現され、前記ゲートマトリクスは、Dk×Dkユニタリ行列によって表現され、前記Dは、前記量子ビットのエネルギー準位の準位数である。このように、具体的なゲートテンソルのマトリクス表現方式を提供し、該マトリクス表現は古典コンピュータにおいて利便的に表現及び処理を行うことができ、更に計算ステップを簡略化し、計算効率を高めるための基礎を打ち立てた。
本発明の1つの具体例において、前記(k,k)階ゲートテンソルは、ゲートマトリクスによって表現され、前記量子ビットのエネルギー準位が2つである場合(すなわち、準位数が2である。通常、2準位の量子ビットエネルギーは、常用の超伝導及び核磁気共鳴(Nuclear Magnetic Resonance,NMR)量子コンピュータのエネルギー準位である)に、前記ゲートテンソルは、2k×2kユニタリ行列によって表現され、前記(k,k)階ゲートテンソルにおける各指標(即ち、各元素)と、2k×2kユニタリ行列の行指標及び列指標(即ち、各元素)との写像規則は、前記(k,k)階ゲートテンソルのk個の入力の対応する量子ビットが、量子ビットコンピューティングベースの自然順序付けに従って2k×2kユニタリ行列の列指標に写像され、前記(k,k)階ゲートテンソルのk個の出力の対応する量子ビットが、量子ビットコンピューティングベースの自然順序付けに従って2k×2kユニタリ行列の行指標に対応することで、k階ゲートテンソルの対応する前記ゲートマトリクスを得ることを含み、明らかに、該方式は簡単であり、利便性が強く、解釈可能性が強いと同時に、計算ステップを簡略化し、計算効率を高めるための基礎を打ち立て、また、全体的に量子シミュレーション計算の効率を高めるための基礎を打ち立てた。
本発明の1つの具体例において、以下のような方法を用いて、前記n階状態テンソルと前記(k,k)階ゲートテンソルとの間の縮約処理を古典コンピュータにおいて表現可能で、古典コンピュータにおける計算量を削減するマトリクスの間の処理に変換するすることができ、具体的に、前記量子ゲートが作用するk個の量子ビットに基づいて、前記量子ゲートが作用するk個の量子ビットが前記量子回路の初めからk個の量子ビットに移動するよう、前記n階状態テンソルに対して軸移動変換を行い、(k,(n-k))階状態テンソルを得、さらに、前記(k,(n-k))階状態テンソルと前記(k,k)階ゲートテンソルとの間の縮約処理を古典コンピュータにおいても表現可能で、古典コンピュータにおける計算量を削減する状態マトリクスとゲートマトリクスとの間の処理に変換することを含み、そのうち、前記(k,(n-k))階状態テンソルは、状態マトリクスによって表現され、前記(k,k)階ゲートテンソルは、ゲートマトリクスによって表現される、ここで、該例において、前記(k,k)階ゲートテンソルは、ゲートマトリクスによって表現され、前記ゲートマトリクスは、Dk×Dkユニタリ行列によって表現される、又は、前記ゲートマトリクスは、2k×2kユニタリ行列によって表現される。
即ち、この例において、まずn階状態テンソルに対して軸移動の処理を行った後に、軸移動処理後に得られた(k,(n-k))階状態テンソルと(k,k)階ゲートテンソルとを縮約処理し、即ち、(k,(n-k))階状態テンソルと(k,k)階ゲートテンソルとの縮約処理を古典コンピュータにおいても表現可能で、古典コンピュータにおける計算量を削減する状態マトリクスとゲートマトリクスとの間の演算処理に変換することで、乗積演算を有効的に行うための基礎を打ち立てたと同時に、該方式は簡単であり、利便性が強く、解釈可能性が強く、計算ステップを有効的に簡略化し、計算効率を高めるための基礎を打ち立て、また、全体的に量子シミュレーション計算の効率を高めるための基礎を打ち立てた。
本発明の1つの具体例において、前記状態マトリクスは、Dk×Dn-k行列によって表現され、前記Dは、前記量子ビットのエネルギー準位の準位数である。このように、具体的な状態テンソルのマトリクス表現方式を提供し、該マトリクス表現は古典コンピュータにおいて利便的に表現及び処理を行うことができ、更に計算ステップを簡略化し、計算効率を高めるための基礎を打ち立てた。
本発明の1つの具体例において、前記量子ビットのエネルギー準位が2つである場合に、前記状態マトリクスは、2k×2n-k行列によって表現され、前記(k,(n-k))階状態テンソルにおける各指標(即ち、各元素)と、2k×2n-k行列の行指標及び列指標(即ち、各元素)との写像規則は、前記(k,(n-k))階状態テンソルの初めからk個の量子ビットが、量子ビットコンピューティングベースの自然順序付けに従って2k×2n-k行列の行指標に写像され、前記(k,(n-k))階状態テンソルの後ろからn-k個の量子ビットが、量子ビットコンピューティングベースの自然順序付けに従って2k×2n-k行列の列指標に写像されることで、前記(k,(n-k))階状態テンソルの対応する状態マトリクスを得る。明らかに、該方式は簡単であり、利便性が強く、解釈可能性が強いと同時に、計算ステップを簡略化し、計算効率を高めるための基礎を打ち立て、また、全体的に量子シミュレーション計算の効率を高めるための基礎を打ち立てた。
本発明の1つの具体例において、前記処理結果は、前記ゲートマトリクスを前記状態マトリクスに右乗して得られた新たな状態マトリクスである。例を挙げると、(k,k)階ゲートテンソルの対応するゲートマトリクスを、n階状態テンソルに対して軸移動変換を行い得られた(k,(n-k))階状態テンソルの状態マトリクスに右乗し、例えば、2k×2kユニタリ行列×2k×2n-k行列をした後に得られる新たな状態マトリクスがそうである。明らかに、該過程は簡単であり、計算効率が高く、さらに、全体的に量子シミュレーション計算の効率を高めるための基礎を打ち立てた。
実際の応用において、前記処理結果を直接縮約処理結果とすることができ、もちろん、縮約処理結果を新たなテンソルに変換し、さらに新たなテンソルを縮約処理結果とすることもでき、このように、テンソル縮約出力をワンステップで容易にすることができる。具体的に、本発明の1つの具体例において、処理結果、即ち新たな状態マトリクスを得た後、写像規則(前記状態テンソルをマトリクスに写像する際の写像規則に類似している)に基づいて、前記新たな状態マトリクスを新たなテンソルに写像し、前記軸移動変換に基づいて、前記新たなテンソルに対して逆向きの軸移動を行い、即ち前述の軸移動処理に対して逆向きの処理を行い、かつ、量子回路の元の位置に軸移動することで、前記量子回路における量子ビットとマッチングする新たなn階テンソルを得る。さらに、後続のテンソル縮約処理を行うための基礎を打ち立てたと同時に、量子シミュレーション計算の完了過程を実現するための基礎を打ち立てた。
このように、本発明では、量子回路における量子ゲートと純粋状態とのテンソル縮約処理変換を古典コンピュータにおいて表現可能で、古典コンピュータにおける計算量を削減するマトリクス間の処理の方式に変換することにより、テンソル縮約を計算するアルゴリズムに対して改善を行い、かつ、改善後の方案の計算効率が高く、このようにして、量子回路シミュレーション計算の性能を高めると同時に、さらに効率的なアインシュタインの縮約記法の計算を実現した。
以下、具体例と総合して本発明についてさらに詳細な説明を行い、具体的に、量子回路のテンソルネットワークをマトリクス乗積に同型写像する。ここで、量子回路の対応するテンソルネットワークの縮約は量子ゲートと純粋状態との間で発生したものであるため、1個の量子ゲートと1個の純粋状態との間の対応するテンソル縮約を提供してマトリクス乗積に同型写像すれば良い。
例を挙げると、n個の量子ビット(n-qubit)を含む量子回路上の純粋状態が1個のn階テンソル(以下、状態テンソルと称する)に対応し、該量子回路におけるk個のqubit回路(即ち、k個の量子ビット)に作用する量子ゲートが1個の(k,k)階テンソル(以下、ゲートテンソルと称する)に対応すると仮定する。ここで、量子ビットのエネルギー準位が2つである場合を例にすると、この時、上記2個のテンソルの間の縮約は、2k×2k行列と2k×2n-k行列との間の乗積演算に同型写像することができる。
具体的に、(一)量子ゲートと純粋状態とのテンソル縮約と、マトリクス乗積との同型写像は、図2に示すように、まず、状態テンソルを読み取り、状態テンソルに対して軸移動変換をし、1個のn階状態テンソルを1個の2k×2n-k状態マトリクスに同型写像し変換する。 具体的なステップに、軸移動をした後に写像することを含む。
(1)量子ゲートの作用しようとするqubit回路を決定し、例えば、第[m1,m2,...mk]番目のような、出力回路のシーケンスを得る。
(2)量子ゲートの作用しようとするk個のqubitが位置する回路を第[1,2,...,k]番目の回路の位置に移動するために、状態テンソルに対して軸移動変換をし、後続の乗積演算を行うことを容易にする。
(3)軸移動変換後の状態テンソルを2k×2n-k行列に対応させ、ここで、軸移動変換後の状態テンソルにおける各指標と、2k×2n-k行列の行、列指標との写像規則は、軸移動変換後の状態テンソルにおける初めからk個の量子ビットが、量子ビットコンピューティングベースの自然順序付けに従ってマトリクスの行の順序に対応し、後ろからn-k個のqubitが、量子ビットコンピューティングベースの自然順序付けに従ってマトリクスの列の順序に対応することである。
次に、上記で得られた状態マトリクス、即ち2k×2n-k行列を右乗して、新たな状態マトリクスを得るために、(k,k)階ゲートテンソルを2k×2kユニタリ行列に対応させる。ここで、ゲートテンソルは(k,k)階であり、ゲートテンソル階の入力と出力との違いを省略する、即ちゲートテンソルの入力と出力との階数は同じであると仮定する。
ここで、ゲートテンソルにおける各指標と、2k×2kユニタリ行列の行、列指標との写像規則は、(k,k)階ゲートテンソルにおけるk個の入力の対応する量子ビットが、量子ビットコンピューティングベースの自然順序付けに従ってマトリクスの列の順序に対応し、k個の出力の対応する量子ビットが、量子ビットコンピューティングベースの自然順序付けに従ってマトリクスの行の順序に対応することである。
最後に、ゲートマトリクス2k×2kを状態マトリクス2k×2n-kに作用し、新たな状態マトリクスを得、新たな状態マトリクスに対して還元処理を行い、新たなn階状態テンソルを得る。還元ステップは、
2k×2kゲートマトリクスを用いて2k×2n-k状態マトリクスを右乗し、2k×2n-kの新たな状態マトリクスを得ることを含む。新たな状態マトリクス2k×2n-kをn階テンソルに写像した後、軸移動処理(例えば、上記の出力回路のシーケンスに基づいて、逆方向の軸移動を行う)を行い、かつ、元の量子回路の対応する位置、即ち元の位置に移動し、新たなn階状態テンソルを得ることで、量子ゲートと純粋状態とのテンソル縮約を実現する。
(二)以下、本発明のテンソル軸移動変換方法の数学的説明を示し、具体的に、テンソルRi1i2...inとSj1j2...jmとが存在し、この2個のテンソルの指標ベクトル(ip1,ip2,...,ipn)と(jp1,jp2,...,jpn)に関するテンソル縮約問題を式(1)とする。
上記の等号の意味は、指標ベクトル(i1,i2,...,ip1-1,ip1,ip1+1,...,in)の値を与え、左右両端のテンソルが同じ分量、即ち同じ複素数を取るということである。そのため、以下のとおりになる。
(ip1,ip2,...,ipn)を指標I0とし、Rの残りの指標をI1とし、(jp1,jp2,...,jpn)を指標J0とし、Sの残りの指標をJ1とすると、式(5)は、さらに式(6)と記すことができる。
このように記号に対して簡略化を行う。
(三)以下に、本発明のテンソル軸移動変換方法のアルゴリズムの実現を示し、具体的に、式(1)により、入力テンソルのすべての指標を直接表現し、かつ、numpyのeinsum方法を用いて計算することができる。ただし、式(7)から出発したとすると、2個の2階テンソルの縮約を計算するだけでよく、その縮約指令(idx)は‘ab、bZ→aZ’と記すことができる。
このような指令を用いて一般的な2個のn階テンソル縮約を計算するために、以下のような前記変形をする必要がある。まず、n階テンソル、即ちn次元配列は、軸の変換を経て、式(3),(4)の左端に対応する形式から右端に対応するテンソル形式になる必要がある。変換過程において、「numpy.moveaxis」方法を用いて、量子状態を表すテンソル(state_backup)のいくつかの軸(source_pos)を指定の位置(target_pos)に移動する。
(四)以下に、本発明のテンソル軸移動変換をマトリクス計算に変換するアルゴリズムの実現を示し、具体的に、式(7)の単純な形を用いて計算するために、入力されたn階(gate_matrix_backup)、m階テンソル(state_backup)を2階テンソルに変換し、reshape方法を用いて、
これにより、形式が簡潔になるだけでなく、メモリの読み取りと書き込みにかかる時間を短縮し、大幅に実行時間を短縮することができる。さらに、このようなテンソル縮約はマトリクス乗算であるため、このステップでは、numpy.matmul()関数のような通常のマトリクス乗算を直接使用して計算を行うことができる。
これにより、さらに時間を節約でき、かつ、計算精度も向上する。
(五)以下に、CNOTゲート回路テンソルネットワーク縮約の例を示し、具体的に、図3に示すように、量子回路の入力状態は|100>であり、出力状態は|101>であり、量子ゲートは1、3回路上に作用する。以下に、本発明のテンソルネットワーク縮約-マトリクス乗積同型写像方法を示す。
まず、入力状態|100>をマトリクスに変換し、CNOTゲートは1、3番目の回路に作用するため、qubits={1,3}=と決定し、以下のステップを通して入力状態を1個の22×23-2=22×21=4×2マトリクスに対応するようにする。具体的に以下を含む。
(1)CNOTゲートの作用しようとするqubitsが1、3番目の回路であると決定する。
(2)軸移動変換をして、ゲートの作用しようとする1、3番目の回路を1、2番目の回路の位置に変換する。
テンソル指標とマトリクスの行、列指標との写像規則に従い、上記状態テンソルの前2個のqubitsがコンピューティングベースの自然順序付けに従ってマトリクスの行順序に対応し、00,01,10,11を得る。上記新たな状態テンソルの1つ後ろのqubitがコンピューティングベースの自然順序付けに従ってマトリクスの列順序に対応し0,1を得る。このようにして得られた新たな状態テンソルの対応する4×2階状態マトリクスは、以下のとおりである。
さらに、状態テンソルの軸を元の位置に戻す(軸移動)と、量子ゲートが1、3番目の回路に作用するため、前に1、3番目の回路の位置を1、2番目の回路の位置に変換しているので、このとき、1、2番目の回路を1、3番目の位置に戻す。具体的な過程は、以下のとおりである。
このようにして、マトリクス乗積の出力マトリクスと元の量子回路の出力状態とが一致することを検証し、本発明を用いて量子回路のシミュレーションを実現した。
(六)以下、テスト結果を示す。
ここで、まず、既存のeinsum縮約方法を用いて、図3に示す量子回路に対して縮約を行った処理結果、即ち、Einsum縮約(軸移動変換がまだ行っていない、即ちアインシュタインの縮約記法である)方案は、便宜上、以下のように説明すると、図4に示すように、初期状態|100>テンソルをAijkと表し、CNOTゲートテンソルをBiklmと表し、最終状態|101>テンソルをCljmと表し、以下einsum(未軸移動変換)の計算過程である。
|100>の対応するテンソルは、[[[0、0]、[0、0]]、[[1、0]、[0、0]]]であり、CNOTゲートの対応するテンソルは、[[[[1、0]、[0、0]]、[[0、1]、[0、0]]]、[[[0、0]、[0、1]]、[[0、0]、[1、0]]]]であり、CNOTを|100>とeinsumして得られるテンソルは、[[[0、0]、[0、0]]、[[0、1]、[0、0]]であり、対応する状態は、|101>である。
次に、既存のBristlecone回路を用いてテストを行い、それぞれの回線におけるすべてのテンソル縮約操作に要する時間の和を、3つの異なる方法で記録し、かつ、比較を行った。ここで、深さが24、32、40の回路を用いて、12qubit、16qubitの場合に対して、初めから5個の回路を用いて、それぞれの実験を3回繰り返す。24qubitの場合に対して、計算に係る時間が比較的長いため、前の2個の回路を用いて、それぞれの実験を2回繰り返す。ファイル標識は「qubitの数_深さ_回路番号」と記す。
以下の表2は、本発明の軸移動変換過程においてeinsumを用いる方法と、軸移動変換過程においてmatmulを用いる方法との2つの方法による所要時間、オリジナルのeinsum方法による所要時間、の3つの方法の比較表である。
上記テストは、異なる大きさ、異なる深さの異なる量子回路を用いてテストを行い、かつ、オリジナルのeinsum方法、本発明の軸移動変換においてeinsum方法を用いる方法、本発明の軸移動変換においてmatmul方法を用いる方法の所要時間を比較した結果、以下のような結論を得た。
量子ビットの数が比較的小さい場合に、本発明の軸移動変換においてeinsumアルゴリズムを用いる方法、本発明の軸移動変換においてmatmulアルゴリズムを用いる方法はいずれも計算速度を大幅に向上することができ、
量子ビット数の増加、計算密度の増加に伴い、本発明の軸移動変換においてmatmulを用いる方法は依然として大きな優位性を持ち、
これに基づいて、本発明において、量子回路のテンソルネットワーク縮約のテンソル乗積表現を実現する。既存の他の量子シミュレーション器が用いる方案と比べて、本発明のテンソルネットワークを無向グラフに変換する必要なく、グラフの簡略化を行う必要がないため、縮約方案の効率と実用性を著しく高め、また、汎用性があり、既存のツールライブラリを使用することができ、あらゆる量子回路モデルの実験に幅広く応用できる。
もちろん、実際の応用において、マトリクス乗算のmatmul関数を改良することで計算効率をさらに向上させることができ、たとえば、数値演算ライブラリ(MKL)を直接使用する等により計算の加速を図ることができ、また、疎行列処理の方法を加えることもできるが、本発明ではこれに限定しない。
本発明は、さらに量子回路シミュレーション装置を提供し、図5に示すように、n個の量子ビットを含む量子回路に基づいて、前記量子回路の対応する、n階状態テンソルによって表現されるn階純粋状態を得るための状態テンソル取得モジュール501と、前記量子回路に基づいて、前記n階状態テンソルとの縮約処理が行われるべき、量子ゲートを表現する(k,k)階ゲートテンソルを決定するためのゲートテンソル決定モジュール502と、前記n階状態テンソルと前記(k,k)階ゲートテンソルとの間の縮約処理を古典コンピュータにおいて表現可能で、古典コンピュータにおける計算量を削減するマトリクス間の処理に変換して処理結果を得、前記処理結果を前記n階状態テンソルと前記(k,k)階ゲートテンソルとの縮約処理の結果とし、量子回路のシミュレーションを完了するための縮約処理モジュール503と、を備え、ここで、kは量子ゲートが作用する量子ビットの数を示す。
本発明の1つの具体例において、前記(k,k)階ゲートテンソルは、ゲートマトリクスによって表現され、前記ゲートマトリクスは、Dk×Dkユニタリ行列によって表現され、前記Dは前記量子ビットのエネルギー準位の準位数である。
本発明の1つの具体例において、前記(k,k)階ゲートテンソルは、ゲートマトリクスによって表現され、前記量子ビットのエネルギー準位が2つである場合に、前記ゲートマトリクスは、2k×2kユニタリ行列によって表現され、前記(k,k)階ゲートテンソルにおける各指標と、2k×2kユニタリ行列の行指標及び列指標との写像規則は、前記(k,k)階ゲートテンソルのk個の入力の対応する量子ビットが、量子ビットコンピューティングベースの自然順序付けに従って2k×2kユニタリ行列の列指標に写像され、 前記(k,k)階ゲートテンソルのk個の出力の対応する量子ビットが、量子ビットコンピューティングベースの自然順序付けに従って2k×2kユニタリ行列の行指標に対応して、k階ゲートテンソルの対応する前記ゲートマトリクスを得ることを含む。
本発明の1つの具体例において、前記縮約処理モジュールは、前記量子ゲートが作用するk個の量子ビットに基づいて、前記量子ゲートが作用するk個の量子ビットが前記量子回路の初めからk個の量子ビットに移動するよう、前記n階状態テンソルに対して軸移動する変換を行い、(k,(n-k))階状態テンソルを得る軸移動処理サブモジュールと、前記(k,(n-k))階状態テンソルと前記(k,k)階ゲートテンソルとの間の縮約処理を古典コンピュータにおいて表現可能で、古典コンピュータにおける計算量を削減する状態マトリクスとゲートマトリクスとの間の処理に変換する縮約処理サブモジュールと、を備え、前記(k,(n-k))階状態テンソルは、状態マトリクスによって表現され、前記(k,k)階ゲートテンソルは、ゲートマトリクスによって表現される。
本発明の1つの具体例において、前記状態マトリクスは、Dk×Dn-k行列によって表現され、前記Dは前記量子ビットのエネルギー準位の準位数である。
本発明の1つの具体例において、前記量子ビットのエネルギー準位が2つである場合に、前記状態マトリクスは、2k×2n-k行列によって表現され、前記(k,(n-k))階状態テンソルにおける各指標と、2k×2n-k行列の行指標及び列指標との写像規則は、前記(k,(n-k))階状態テンソルの初めからk個の量子ビットが、量子ビットコンピューティングベースの自然順序付けに従って2k×2n-k行列の行指標に写像され、前記(k,(n-k))階状態テンソルの後ろからn-k個の量子ビットが、量子ビットコンピューティングベースの自然順序付けに従って2k×2n-k行列の列指標に写像され、前記(k,(n-k))階状態テンソルの対応する状態マトリクスを得ること、を備える。
本発明の1つの具体例において、前記処理結果は、前記ゲートマトリクスを前記状態マトリクスに右乗して得られた新たな状態マトリクスである。
本発明の1つの具体例において、図6に示すように、さらに、写像規則に基づいて、前記新たな状態マトリクスを新たなテンソルに写像するための写像モジュール504と、前記軸移動する変換に基づいて、前記新たなテンソルに対して逆向きの軸移動を行い、前記量子回路の量子ビットとマッチングする新たなn階テンソルを得るための逆軸移動モジュール505と、を備える。
以上の装置の実施形態の説明は、上記の方法説明と類似しており、方法の実施形態と同様の有益な効果を有するため、ここでは繰り返し説明しないことに注意すべきである。本発明の実施形態において開示されていない技術の細部については、当業者は、本発明方法の実施形態の説明を参照して理解すべきであり、長くなるのを防ぐため、ここでは繰り返し説明しない。
本発明の実施形態によれば、本発明は、電子設備及び可読記憶媒体をさらに提供する。
図7に示すよう、本発明の実施形態による量子回路シミュレーション方法を実現する電子設備のブロック図である。電子設備は、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、大型コンピュータ、及び他の適切なコンピュータのような様々な形態のデジタルコンピュータを表すことができる。また、電子設備はパーソナルデジタル処理、携帯電話、スマートフォン、装着可能デバイス、及びその他の類似のコンピューティングデバイス等の様々な形態のモバイルデバイスを表すことができる。ここで示した構成要素、それらの接続と関係、及びそれらの機能は例示的なものに過ぎず、本発明で説明されたもの及び/又は要求される本発明の実施を制限することは意図されない。
図7に示すよう、当該電子設備は、1つ又は複数のプロセッサ701と、メモリ702と、高速インターフェースと低速インターフェースとを含む各構成要素を接続するためのインターフェースとを含む。各構成要素は、異なるバスを利用して互いに接続し、共通のマザーボードに取り付けられてもよいし、必要に応じて他の方法で取り付けられてもよい。プロセッサは、電子設備内で実行される命令を処理してもよく、また、外部入出力デバイス(例えば、インターフェースに接続された表示デバイス)にグラフィックユーザインターフェース(Graphical User Interface、GUI)を表示するための、メモリ又はメモリ上に記憶されたグラフィカル情報の命令を含む。他の実施形態では、必要に応じて、複数のプロセッサ及び/又は複数のバスを複数のメモリ及び複数のメモリとともに使用することができる。同様に、複数の電子設備を接続してもよく、各デバイスは、部分的に必要な動作(例えば、サーバアレイ、ブレードサーバのセット、又はマルチプロセッサシステムとして)を提供する。図7においてプロセッサ701を例とする。
メモリ702は、本発明にて提供された非一過性のコンピュータ可読記憶媒体である。メモリは、本発明で提供される量子回路シミュレーション方法を少なくとも1つのプロセッサに実行させるように、少なくとも1つのプロセッサによって実行されることができる命令を記憶する。本発明における非一過性のコンピュータ可読記憶媒体は、本発明で提供された量子回路シミュレーション方法をコンピュータに実行させるためのコンピュータ命令を記憶する。
メモリ702は、非一過性のコンピュータ可読記憶媒体として、非一過性のソフトウェアプログラム、非一過性のコンピュータ実行可能なプログラム及びモジュールを記憶するために使用されてもよく、本発明の実施形態における量子回路シミュレーション方法に対応するプログラム命令/モジュール(例えば、図6に示すような、状態テンソル取得モジュール501、ゲートテンソル決定モジュール502、縮約処理モジュール503、写像モジュール504及び逆軸移動モジュール505である)のようなものである。プロセッサ701は、メモリ702に記憶されている非一過性のソフトウェアプログラム、命令及びモジュールを実行することにより、サーバの様々な機能アプリケーション及びデータ処理、即ち上述した方法に関する実施形態に係る量子回路シミュレーション方法を実行する。
メモリ702は、オペレーティングシステムや少なくとも1つの機能に必要なアプリケーションを記憶することができるプログラムの記憶領域と、量子回路シミュレーション方法に係る電子設備の使用によって生成されたデータ等を記憶することができるデータの記憶領域と、を含むことができる。さらに、メモリ702は、高速ランダムアクセスメモリを含んでもよく、非一過性の固体記憶装置を含んでもよい。例えば、少なくとも1つの磁気ディスク記憶装置、フラッシュメモリ装置、又は他の非一過性の固体記憶装置を含むことができる。いくつかの実施形態では、メモリ702はオプションとして、プロセッサ701に対して遠隔的に設定されたメモリを含み、これらの遠隔メモリは、ネットワークを介して量子回路シミュレーション方法に係る電子設備に接続されてもよい。上記のネットワークの例は、インターネット、企業内ネットワーク、ローカルネットワーク、モバイル通信ネットワーク及びその組み合わせを含むが、これらに限定されない。
本発明の実施形態の量子回路シミュレーション方法に対応する電子設備は、入力装置703と出力装置704とをさらに含むことができる。プロセッサ701、メモリ702、入力装置703、及び出力装置704は、バス又は他の方法で接続されてもよく、図7ではバスを介して接続されている。
入力装置703は、入力された数字又は文字を受信し、量子回路シミュレーション方法に係る電子設備のユーザ設定及び機能制御に関するキー信号入力を生成することができ、例えば、タッチパネル、キーパッド、マウス、トラックボード、タッチパッド、指示棒、1つ又は複数のマウスボタン、トラックボール、ジョイスティック等を含むことができる。出力装置704は、表示装置、補助照明装置(例えばLED)、及び触覚フィードバック装置(例えば、振動モータ)等を含むことができる。この表示装置は、液晶ディスプレイ(Liquid Crystal Display、LCD)、発光ダイオード(Light Emitting Diode、LED)ディスプレイ及びプラズマディスプレイを含むことができるがこれらに限定されない。いくつかの実施形態では、表示装置はタッチパネルであってもよい。
本発明におけるシステム及び技術に係る様々な実施形態は、デジタル電子回路システム、集積回路システム、専用集積回路(Application Specific Integrated Circuits、ASIC)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はこれらの組み合わせによって実現されることができる。これらの様々な実施形態は、1つ又は複数のコンピュータプログラムにおいて実装されてもよく、この1つ又は複数のコンピュータプログラムは、少なくとも1つのプログラマブルプロセッサを含むプログラム可能なシステム上で実行されてもよく、及び/又は解釈されてもよく、このプログラマブルプロセッサは、専用又は汎用のプログラマブルプロセッサであってもよく、記憶システム、少なくとも1つの入力装置、及び少なくとも1つの出力装置より、データと命令を受信し、記憶システム、少なくとも1つの入力装置、及び少なくとも1つの出力装置に、データと命令を送信する。
これらの計算プログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、又はコードともいう)は、プログラマブルプロセッサのマシン命令を含み、プロセス指向及び/又はオブジェクト指向プログラミング言語、及び/又はアセンブリ/マシン言語を用いてこれらの計算プログラムを実施することができる。本発明で使用されるように、「機械可読媒体」及び「コンピュータ可読媒体」という用語は、マシン命令及び/又はデータをプログラマブルプロセッサに提供するための任意のコンピュータプログラム製品、デバイス、及び/又は装置(例えば、磁気ディスク、光ディスク、メモリ、編集可能論理デバイス(programmable logic device、PLD)を意味し、機械読み取り可能な信号としてのマシン命令を受信する機械可読媒体を含む。「機械読み取り可能な信号」という用語は、マシン命令及び/又はデータをプログラマブルプロセッサに提供するための任意の信号を意味する。
ユーザとのイントラクションを提供するために、本発明で説明されているシステムや技術は、コンピュータ上で実施されてもよく、また、ユーザに情報を表示するための表示装置(例えば、CRT(Cathode Ray Tube、ブラウン管)又はLCD(液晶ディスプレイ)モニタ)と、入力をコンピュータに提供するためのキーボード及びポインティングデバイス(例えば、マウス又はトラックボール)とを備えてもよい。他の種類の装置も、ユーザとのイントラクションを提供するために使用され得る。例えば、ユーザに提供されたフィードバックは、任意の形態のセンシングフィードバック(例えば、視覚フィードバック、聴覚フィードバック、又は触覚フィードバック)であってもよく、ユーザからの入力は、いかなる形式(音響入力、音声入力、又は触覚入力を含む)で受信されてもよい。
発明で説明されているシステム及び技術は、バックグラウンド構成要素を含む計算システム(例えば、データサーバとして)、又は中間部構成要素を含む計算システム(例えば、アプリケーションサーバ)、又は、フロントエンド構成要素を含む計算システム(例えば、グラフィカルユーザインタフェース又はネットワークブラウザを備えたユーザコンピュータであって、ユーザがこのグラフィカルユーザインタフェース又はネットワークブラウザを介して本発明で説明されたシステム及び技術に係る実施形態とインタラクションを行うことができるユーザコンピュータ)に実行されてもよく、又は、このようなバックグラウンド構成要素、中間部構成要素、又はフロントエンド構成要素の任意の組合せを含む計算システムにおいて実行されてもよい。システムの構成要素は、任意の形態又は媒体のデジタルデータ通信(例えば、通信ネットワーク)によって相互に接続されてもよい。通信ネットワークの例えとして、ローカルネットワーク(Local Area Network、LAN)、広域ネットワーク(Wide Area Network、WAN)及びインターネットを含む。
コンピュータシステムは、クライアント及びサーバを含むことができる。クライアントとサーバは一般的に相互に離れており、通信ネットワークを介してインタラクションを行う。クライアントとサーバとの関係を持つコンピュータプログラムがそれぞれのコンピュータ上で実行されることによって、クライアントとサーバとの関係は構築される。サーバはクラウドサーバであってもよく、クラウドコンピューティングサーバ又はクラウドホストとも呼ばれ、クラウドコンピューティングサービスシステムの中の一つのホスト製品であり、従来の物理ホストとバーチャル・プライベート・サーバ(VPS)サービスにおいて存在する管理難しく、業務拡張性が弱いという欠陥を解決する。
このように、量子回路における量子ゲートと純粋状態とのテンソル縮約処理をマトリクス間の乗積演算に変換することで、計算ステップを簡略化すると同時に、計算効率を向上する。
上記の様々な態様のフローを使用して、ステップを新たに順序付け、追加、又は削除することが可能であることを理解すべきである。例えば、本発明で記載された各ステップは、並列に実行しても良いし、順階に実行しても良いし、異なる順序で実行しても良い。本発明で開示された技術案が所望する結果を実現することができる限り、本発明ではこれに限定されない。
上記具体的な実施形態は、本発明の保護範囲に対する限定を構成するものではない。当業者は、設計事項やその他の要因によって、様々な修正、組み合わせ、サブ組み合わせ、及び代替が可能であることを理解するべきである。本発明の要旨及び原則内における変更、均等な置換及び改善等は、いずれも本発明の保護範囲に含まれるべきである。
Claims (19)
- n個の量子ビットを含む量子回路に基づいて、前記量子回路の対応する、n階状態テンソルによって表現されるn階純粋状態を得ることと、
前記量子回路に基づいて、前記n階状態テンソルとの縮約処理が行われるべき、量子ゲートを表現する(k,k)階ゲートテンソルを決定することと、
前記n階状態テンソルと前記(k,k)階ゲートテンソルとの間の縮約処理を、古典コンピュータにおいて表現可能で、古典コンピュータにおける計算量を削減するマトリクス間の処理に変換し、処理結果を得ることと、
前記処理結果を、前記n階状態テンソルと前記(k,k)階ゲートテンソルとの縮約処理の結果とし、量子回路のシミュレーションを完了することと、を含み、
ここで、kは量子ゲートが作用する量子ビットの数を示す、
ことを特徴とする量子回路シミュレーション方法。 - 前記(k,k)階ゲートテンソルは、ゲートマトリクスによって表現され、
前記ゲートマトリクスは、Dk×Dkユニタリ行列によって表現され、
前記Dは前記量子ビットのエネルギー準位の準位数である、
ことを特徴とする請求項1に記載の量子回路シミュレーション方法。 - 前記(k,k)階ゲートテンソルは、ゲートマトリクスによって表現され、前記量子ビットのエネルギー準位が2つである場合に、前記ゲートマトリクスは、2k×2kユニタリ行列によって表現され、
前記(k,k)階ゲートテンソルにおける各指標と、2k×2kユニタリ行列の行指標及び列指標との写像規則は、
前記(k,k)階ゲートテンソルのk個の入力の対応する量子ビットが、量子ビットコンピューティングベースの自然順序付けに従って2k×2kユニタリ行列の列指標に写像され、 前記(k,k)階ゲートテンソルのk個の出力の対応する量子ビットが、量子ビットコンピューティングベースの自然順序付けに従って2k×2kユニタリ行列の行指標に対応し、k階ゲートテンソルの対応する前記ゲートマトリクスを得ること、を含む
ことを特徴とする請求項1に記載の量子回路シミュレーション方法。 - 前記n階状態テンソルと前記(k,k)階ゲートテンソルとの間の縮約処理を、古典コンピュータにおいて表現可能で、古典コンピュータにおける計算量を削減するマトリクスの間の処理に変換することは、
前記量子ゲートが作用するk個の量子ビットに基づいて、前記量子ゲートが作用するk個の量子ビットが前記量子回路の初めからk個の量子ビットに移動するように、前記n階状態テンソルに対して軸移動変換を行い、(k,(n-k))階状態テンソルを得ることと、
前記(k,(n-k))階状態テンソルと前記(k,k)階ゲートテンソルとの間の縮約処理を、古典コンピュータにおいて表現可能で、古典コンピュータにおける計算量を削減する状態マトリクスとゲートマトリクスとの間の処理に変換することと、を含み、
前記(k,(n-k))階状態テンソルは、状態マトリクスによって表現され、
前記(k,k)階ゲートテンソルは、ゲートマトリクスによって表現される、
ことを特徴とする請求項1~3のいずれか一項に記載の量子回路シミュレーション方法。 - 前記状態マトリクスは、Dk×Dn-k行列によって表現され、
前記Dは前記量子ビットのエネルギー準位の準位数である、
ことを特徴とする請求項4に記載の量子回路シミュレーション方法。 - 前記量子ビットのエネルギー準位が2つである場合に、前記状態マトリクスは、2k×2n-k行列によって表現され、
前記(k,(n-k))階状態テンソルにおける各指標と、2k×2n-k行列の行指標及び列指標との写像規則は、
前記(k,(n-k))階状態テンソルの初めからk個の量子ビットが、量子ビットコンピューティングベースの自然順序付けに従って2k×2n-k行列の行指標に写像され、前記(k,(n-k))階状態テンソルの後ろからn-k個の量子ビットが、量子ビットコンピューティングベースの自然順序付けに従って2k×2n-k行列の列指標に写像され、前記(k,(n-k))階状態テンソルの対応する状態マトリクスを得ること、を含む
ことを特徴とする請求項4に記載の量子回路シミュレーション方法。 - 前記処理結果は、前記ゲートマトリクスを前記状態マトリクスに右乗して得られた新たな状態マトリクスである、
ことを特徴とする請求項4に記載の量子回路シミュレーション方法。 - 写像規則に基づいて、前記新たな状態マトリクスを新たなテンソルに写像することと、
前記軸移動変換に基づいて、前記新たなテンソルに対して逆向きの軸移動を行い、前記量子回路の量子ビットとマッチングする新たなn階テンソルを得ることと、を含む
ことを特徴とする請求項7に記載の量子回路シミュレーション方法。 - n個の量子ビットを含む量子回路に基づいて、前記量子回路の対応する、n階状態テンソルによって表現されるn階純粋状態を得るための状態テンソル取得モジュールと、
前記量子回路に基づいて、前記n階状態テンソルとの縮約処理が行われるべき、量子ゲートを表現する(k,k)階ゲートテンソルを決定するためのゲートテンソル決定モジュールと、
前記n階状態テンソルと前記(k,k)階ゲートテンソルとの間の縮約処理を古典コンピュータにおいて表現可能で、古典コンピュータにおける計算量を削減するマトリクス間の処理に変換して処理結果を得、前記処理結果を前記n階状態テンソルと前記(k,k)階ゲートテンソルとの縮約処理の結果とし、量子回路のシミュレーションを完了するための縮約処理モジュールと、を備え、
ここで、kは量子ゲートが作用する量子ビットの数を示す、
ことを特徴とする量子回路シミュレーション装置。 - 前記(k,k)階ゲートテンソルは、ゲートマトリクスによって表現され、
前記ゲートマトリクスは、Dk×Dkユニタリ行列によって表現され、
前記Dは前記量子ビットのエネルギー準位の準位数である、
ことを特徴とする請求項9に記載の量子回路シミュレーション装置。 - 前記(k,k)階ゲートテンソルは、ゲートマトリクスによって表現され、前記量子ビットのエネルギー準位が2つである場合に、前記ゲートマトリクスは、2k×2kユニタリ行列によって表現され、
前記(k,k)階ゲートテンソルにおける各指標と、2k×2kユニタリ行列の行指標及び列指標との写像規則は、
前記(k,k)階ゲートテンソルのk個の入力の対応する量子ビットが、量子ビットコンピューティングベースの自然順序付けに従って2k×2kユニタリ行列の列指標に写像され、 前記(k,k)階ゲートテンソルのk個の出力の対応する量子ビットが、量子ビットコンピューティングベースの自然順序付けに従って2k×2kユニタリ行列の行指標に対応して、k階ゲートテンソルの対応する前記ゲートマトリクスを得ることを含む
ことを特徴とする請求項9に記載の量子回路シミュレーション装置。 - 前記縮約処理モジュールは、
前記量子ゲートが作用するk個の量子ビットに基づいて、前記量子ゲートが作用するk個の量子ビットが前記量子回路の初めからk個の量子ビットに移動するよう、前記n階状態テンソルに対して軸移動変換を行い、(k,(n-k))階状態テンソルを得る軸移動処理サブモジュールと、
前記(k,(n-k))階状態テンソルと前記(k,k)階ゲートテンソルとの間の縮約処理を古典コンピュータにおいて表現可能で、古典コンピュータにおける計算量を削減する状態マトリクスとゲートマトリクスとの間の処理に変換する縮約処理サブモジュールと、を備え、
前記(k,(n-k))階状態テンソルは、状態マトリクスによって表現され、
前記(k,k)階ゲートテンソルは、ゲートマトリクスによって表現される、
ことを特徴とする請求項9~11のいずれか一項に記載の量子回路シミュレーション装置。 - 前記量子回路シミュレーション装置は、
前記状態マトリクスは、Dk×Dn-k行列によって表現され、
前記Dは前記量子ビットのエネルギー準位の準位数である、
ことを特徴とする請求項12に記載の量子回路シミュレーション装置。 - 前記量子ビットのエネルギー準位が2つである場合に、前記状態マトリクスは、2k×2n-k行列によって表現され、
前記(k,(n-k))階状態テンソルにおける各指標と、2k×2n-k行列の行指標及び列指標との写像規則は、
前記(k,(n-k))階状態テンソルの初めからk個の量子ビットが、量子ビットコンピューティングベースの自然順序付けに従って2k×2n-k行列の行指標に写像され、前記(k,(n-k))階状態テンソルの後ろからn-k個の量子ビットが、量子ビットコンピューティングベースの自然順序付けに従って2k×2n-k行列の列指標に写像され、前記(k,(n-k))階状態テンソルの対応する状態マトリクスを得ること、を備える
ことを特徴とする請求項12に記載の量子回路シミュレーション装置。 - 前記処理結果は、前記ゲートマトリクスを前記状態マトリクスに右乗して得られた新たな状態マトリクスである、
ことを特徴とする請求項14に記載の量子回路シミュレーション装置。 - 写像規則に基づいて、前記新たな状態マトリクスを新たなテンソルに写像するための写像モジュールと、
前記軸移動変換に基づいて、前記新たなテンソルに対して逆向きの軸移動を行い、前記量子回路の量子ビットとマッチングする新たなn階テンソルを得るための逆軸移動モジュールと、を備える
ことを特徴とする請求項15に記載の量子回路シミュレーション装置。 - 少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサに通信接続されるメモリと、を備え、
前記メモリには、前記少なくとも1つのプロセッサにより実行可能な命令が記憶されており、
前記命令は、前記少なくとも1つのプロセッサにより実行される場合、請求項1~8のいずれか一項に記載の量子回路シミュレーション方法を実行させることを特徴とする電子設備。 - 請求項1~8のいずれか一項に記載の量子回路シミュレーション方法をコンピュータに実行させるためのコンピュータ命令を記憶した非一過性のコンピュータ可読記憶媒体。
- コンピュータにおいてプロセッサにより実行されると、請求項1~8のいずれか一項に記載の量子回路シミュレーション方法を実現することを特徴とするプログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010580060.0A CN111738448B (zh) | 2020-06-23 | 2020-06-23 | 量子线路模拟方法、装置、设备及存储介质 |
CN202010580060.0 | 2020-06-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022003501A JP2022003501A (ja) | 2022-01-11 |
JP7009603B2 true JP7009603B2 (ja) | 2022-01-25 |
Family
ID=72650650
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020205784A Active JP7009603B2 (ja) | 2020-06-23 | 2020-12-11 | 量子回路シミュレーション方法、装置、設備、記憶媒体、及びプログラム |
Country Status (4)
Country | Link |
---|---|
US (1) | US20210397772A1 (ja) |
JP (1) | JP7009603B2 (ja) |
CN (1) | CN111738448B (ja) |
AU (1) | AU2020289854B2 (ja) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112651509B (zh) * | 2020-10-14 | 2022-04-22 | 腾讯科技(深圳)有限公司 | 量子线路的确定方法及装置 |
CN114511093B (zh) * | 2020-11-16 | 2023-06-09 | 中国人民解放军国防科技大学 | 玻色子系统模拟方法 |
CN112529199B (zh) * | 2020-12-23 | 2021-09-28 | 北京百度网讯科技有限公司 | 纠缠量子态提纯方法、装置、设备、存储介质及产品 |
CN113128691B (zh) * | 2021-04-27 | 2022-03-08 | 北京百度网讯科技有限公司 | 量子门标定方法及装置、电子设备和介质 |
CN113592093B (zh) * | 2021-08-02 | 2022-05-24 | 腾讯科技(深圳)有限公司 | 量子态制备电路生成方法、装置、量子操作芯片及设备 |
CN113723613B (zh) * | 2021-08-31 | 2022-05-06 | 北京百度网讯科技有限公司 | 对量子电路进行模拟的方法及装置 |
CN114021730A (zh) * | 2021-11-19 | 2022-02-08 | 中国科学技术大学 | 物理张量网络态数据后处理方法、系统、设备及存储介质 |
CN114254755B (zh) * | 2021-12-24 | 2022-12-02 | 中国科学院理论物理研究所 | 模拟量子比特末态概率幅的方法、装置和量子虚拟机 |
CN116523053A (zh) * | 2022-01-24 | 2023-08-01 | 腾讯科技(深圳)有限公司 | 量子线路模拟方法、装置、设备、存储介质及程序产品 |
CN114429096B (zh) * | 2022-04-06 | 2022-06-24 | 北京中科弧光量子软件技术有限公司 | 量子电路的故障仿真方法、系统、存储介质和电子设备 |
CN117494821A (zh) * | 2022-07-26 | 2024-02-02 | 腾讯科技(深圳)有限公司 | 量子电路优化方法、装置、设备、存储介质及程序产品 |
CN115329973B (zh) * | 2022-08-04 | 2023-09-26 | 北京百度网讯科技有限公司 | 仿真方法、装置、设备及存储介质 |
CN115146780B (zh) * | 2022-08-30 | 2023-07-11 | 之江实验室 | 一种量子张量网络转置和收缩协同的方法和装置 |
CN115130676B (zh) * | 2022-09-02 | 2023-01-24 | 之江实验室 | 基于生命周期的路径搜索判别、优化方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019058161A1 (en) | 2017-09-22 | 2019-03-28 | International Business Machines Corporation | SIMULATION OF QUANTUM CIRCUITS |
WO2019209628A1 (en) | 2018-04-27 | 2019-10-31 | Alibaba Group Holding Limited | Method and system for quantum computing |
JP2020515999A (ja) | 2017-03-24 | 2020-05-28 | ビュル エスアエス | 古典的なコンピュータ上で量子回路をシミュレートする方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10169298B1 (en) * | 2017-05-11 | 2019-01-01 | NovuMind Limited | Native tensor processor, using outer product unit |
CN108875957B (zh) * | 2017-05-11 | 2019-07-12 | 北京异构智能科技有限公司 | 原生张量处理器及使用原生张量处理器的系统 |
CN108154240B (zh) * | 2017-12-29 | 2020-07-07 | 合肥本源量子计算科技有限责任公司 | 一种低复杂度的量子线路模拟系统 |
CN110598867B (zh) * | 2019-09-17 | 2023-08-08 | 本源量子计算科技(合肥)股份有限公司 | 一种量子态信息转化方法 |
CN110826719B (zh) * | 2019-10-14 | 2022-08-16 | 合肥本源量子计算科技有限责任公司 | 一种量子程序的处理方法、装置、存储介质和电子装置 |
-
2020
- 2020-06-23 CN CN202010580060.0A patent/CN111738448B/zh active Active
- 2020-12-11 JP JP2020205784A patent/JP7009603B2/ja active Active
- 2020-12-18 AU AU2020289854A patent/AU2020289854B2/en active Active
- 2020-12-23 US US17/132,929 patent/US20210397772A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020515999A (ja) | 2017-03-24 | 2020-05-28 | ビュル エスアエス | 古典的なコンピュータ上で量子回路をシミュレートする方法 |
WO2019058161A1 (en) | 2017-09-22 | 2019-03-28 | International Business Machines Corporation | SIMULATION OF QUANTUM CIRCUITS |
WO2019209628A1 (en) | 2018-04-27 | 2019-10-31 | Alibaba Group Holding Limited | Method and system for quantum computing |
Also Published As
Publication number | Publication date |
---|---|
US20210397772A1 (en) | 2021-12-23 |
AU2020289854B2 (en) | 2022-03-10 |
JP2022003501A (ja) | 2022-01-11 |
AU2020289854A1 (en) | 2022-01-20 |
CN111738448A (zh) | 2020-10-02 |
CN111738448B (zh) | 2021-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7009603B2 (ja) | 量子回路シミュレーション方法、装置、設備、記憶媒体、及びプログラム | |
JP7471736B2 (ja) | 量子系の基底状態エネルギーの推定方法、およびシステム | |
Zulehner et al. | Advanced simulation of quantum computations | |
Cococcioni et al. | Lexicographic multi-objective linear programming using grossone methodology: Theory and algorithm | |
JP7199489B2 (ja) | 量子測定ノイズの除去方法、システム、電子機器、及び媒体 | |
TWI681291B (zh) | 存取多維張量中之資料 | |
US20220392144A1 (en) | Image rendering method and apparatus, electronic device, and storage medium | |
CN110826719B (zh) | 一种量子程序的处理方法、装置、存储介质和电子装置 | |
KR101808027B1 (ko) | 수치 데이터의 압축 및 압축해제 | |
JP2021520546A (ja) | 量子計算のための方法及びシステム | |
EP4195090A1 (en) | Computational fluid dynamics simulation method and apparatus based on quantum algorithm, and device | |
KR102521765B1 (ko) | 인과 관계의 판별 방법, 장치, 전자 기기 및 저장 매체 | |
Zhou et al. | Quantum realization of the nearest neighbor value interpolation method for INEQR | |
Hoefkens et al. | Computing validated solutions of implicit differential equations | |
US20230051237A1 (en) | Determining material properties based on machine learning models | |
JP7105297B2 (ja) | ニューラルネットワークモデルの処理方法及び装置 | |
Wang et al. | Design and implementation of bitwise parallel MSD square rooting in ternary optical computer | |
El Guide et al. | RBF approximation of three dimensional PDEs using tensor Krylov subspace methods | |
Weiße | Divide and conquer the Hilbert space of translation-symmetric spin systems | |
Nagayama et al. | Complexities of graph-based representations for elementary functions | |
Mahadevan et al. | Improving climate model coupling through a complete mesh representation: a case study with E3SM (v1) and MOAB (v5. x) | |
Ju et al. | 20.4 A 28nm Physics Computing Unit Supporting Emerging Physics-Informed Neural Network and Finite Element Method for Real-Time Scientific Computing on Edge Devices | |
Ltaief et al. | Responsibly reckless matrix algorithms for HPC scientific applications | |
Chen et al. | An O (Nlog N) hierarchical random compression method for kernel matrices by sampling partial matrix entries | |
Li et al. | Topology optimization based on improved DoubleU-Net using four boundary condition datasets |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20201211 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220105 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220112 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7009603 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |