Page 411 - 《软件学报》2026年第1期
P. 411

408                                                        软件学报  2026  年第  37  卷第  1  期


                                                          poly(nlogd, logR) 个量子比特. 利用基础量子枚举算法的复
                 每个对   T  的访问需要   O(logd) 次辅助操作. 算法需要
                 杂度可估计各种枚举算法版本的量子复杂度. 例如, 使用量子加速的                  Kannan 算法需要  O(n n/(4e) )· poly(log(n), log(1/ϵ), β)
                 次预言机访问和      poly(n,β) 个量子比特, 其中  β 是格向量元素的比特长度.
                    经典模型下的枚举算法通常使用剪枝方法对枚举树结构进行修改, 以一定的成功率为代价提高求解速度. 类
                                                                                                   √
                                                                                                       3
                 似地, 基于量子回溯的量子枚举算法也可使用剪枝方法实现加速. 量子圆筒剪枝的时间复杂度是                                    O( Tn )·
                                                                                           √
                 poly(log(n), log(1/ϵ)), 其中  T  是剪枝枚举所搜索的节点个数. 量子离散剪枝的时间复杂度            O(n 2  M)· poly(log(n),
                 log(M), log(1/ϵ), β) poly(n,β), M  是剪枝过程中使用的参数, 代表最优标签的个数. 量子极限剪枝的时间复杂度



                   √                                     √
                      3                                O( M)· poly(n, log(M), log(1/ϵ), β). 具体复杂度如表  3  所示.
                 O( Tn β)· poly(log(n), log(1/ϵ), log(β), log(m))  和

                                     表 3 基于量子回溯的量子枚举算法复杂度               (省略对数部分)

                                    枚举                    经典时间                   量子时间
                                   无剪枝                    O(n n/(2e) )           O(n n/(4e) )
                                                                                    √
                                                             4
                                   离散剪枝                    O(n M)                O(n 2  M)
                                                                                   √
                                                               6
                                                                                      3
                                   圆筒剪枝                    O(Tn )                O( Tn )
                                                                                   √
                                                                                      3
                                 极限圆筒剪枝                   O(Tn β )               O( Tn β)
                                                              6 2
                                                                                   √
                                 极限离散剪枝                     O(M)                  O( M)

                  3.2   基于变分量子算法的枚举算法
                    以上介绍了典型的通过枚举树上量子回溯算法实现的量子枚举算法. 除此之外, 还存在一类基于量子物理模
                 型实现的量子枚举算法, 基本思路是通过编码将                 SVP  归约为  Hamiltonian  算子的基态, 并采用变分量子算法
                 (variational quantum algorithm, VQA) [79] 等方法进行搜索. Joseph  等人  [80,81] 考虑使用绝热算法求解  SVP  中的量子态
                 能量差, 在理论上给出了算法的成功条件. Albrecht 等人             [60] 考虑了在受限的量子计算       (noisy intermediate scale
                 quantum, NISQ) 模型下实现枚举的量子加速. 基于量子绝热算法的量子枚举算法一般情况下使用的量子比特数为
                                                            O(3nlog(n/2)+n+logdet(L)). 基于变分量子算法的量子枚
                 O(nlogn), 而在特定的格结构上所需的量子比特个数为
                 举算法的主要步骤如下.
                    (1) 将最短向量问题编码至       H  算子的基态;
                    (2) 对参数  θ, 取一个拟设态    |ϕ(θ)⟩: 一个简单量子线路输出的一系列量子态;
                    (3) 制备其中一个量子态并测量. 估计         ⟨ϕ(θ)|H |ϕ(θ)⟩ 的期望值, 用以计算新的参数值     θ;
                    (4) 使用新的  θ 重复以上步骤, 直到得到符合条件的量子态.
                    考察量子枚举算法相关研究成果, 可以将量子枚举按照图                   6  所示分类. 相比更适合利用量子搜索技术的筛法,
                 枚举的树搜索结构限制了应用           Grover 量子搜索加速的效果. 为了更好地将枚举与量子计算技术进行结合, 研究者
                 探索了在枚举算法中使用量子回溯算法和变分量子算法, 实现了量子加速技术与格算法结构的进一步融合, 为格
                 上困难问题的量子求解算法的后续发展提供了新思路.

                                         经典枚举                 构造枚举树        剪枝枚举树        深度优先搜索

                                                              树结构对应
                        枚举算法
                                              基于回溯            构造枚举树        剪枝枚举树        量子回溯搜索
                                     量子
                                     枚举
                                                                                       量子 NISQ 模型
                                             基于 VQA           构造枚举树        求算子基态
                                                                                        量子绝热算法

                                                   图 6 量子枚举算法分类
   406   407   408   409   410   411   412   413   414   415   416