《量子视角下的智能优化算法综述》周报

名词解释与基本概念

隐含并行性

隐含并行性指的是程序代码本身并没有明确地(即通过特定的并行指令、库函数或语法结构)指示哪些部分可以并行执行,而是由编译器、运行时系统或硬件自动检测出代码中可以安全并行执行的部分,并安排它们在多个处理器核心或计算单元上同时运行。

注释:本质上就是没有受到程序员定义,但是通过运行程序的环境来自行产生的并行性。

隐含并行性(在量子视角下)

首先,量子比特具有叠加态,它可以同时处于在0,1的叠加状态,在执行一种量子操作的时候,这就体现了隐含并行性,因为执行量子操作的过程中,并非仅仅作用于确定的状态,同时还会作用于这两种形态叠加态,而且这不是自行定义的操作,而是基于量子具有叠加态的特性。这可以类比于,上述隐含并行性的运行程序的环境使然。

注释:文中提到“隐含并行性的起源也是来自于不确定性”,这里指的为“量子视角下的隐含并行性”,我认为这里改成,来源于他的叠加态更好,因为,在有叠加态的时候才会体现并行。而不是他的不确定性直接导致的(不确定性是叠加态的一种结果)。

算法的隐含并行性:智能优化算法都不同程度地使用了随机数和概率策略,这些策略的引入使智能优化算法能在可以接受的时间内获得准确度可以接受的解。这种搜索速度提高的现象被称为算法的隐含并行性 (implicit parallelism)。

注释

1.是一种现象,速度提高对于整个模型,得到最优解的速度提高,这里联想到引入随机性,牺牲解的确定性,换取运算速度的增长。

2.为什么体现了隐含并行性:

以遗传算法为例:结合论文中:“**遗传算法每代虽然只处理了N个个体,但隐含处理的模式数远远大于 N **。“

模式[1]蕴含于个体,一个个体蕴含多种模式,其中体现了隐含并行性的包括以下两种:

(1):体现在评估个体的时候,多个模式同时被评估。

(2):体现在个体在,复制交叉变异的时候,多个模式同时参与。

3.有趣的是,在查找相关资料的时候,我查到了王老师的另一篇论文《算法隐含并行性的物理模型》。

模拟退火算法

算法通过模拟温度的降低过程,控制对解空间[2]的搜索范围和接受较差解的概率,以找到目标函数的全局最小值(或最大值)。

注释

1.固体在高温的时候,其内部的原子会随机运动,随着温度逐渐降低,运动趋于稳定。但是如果降温过快,其原子可能没有足够的时间达到最佳排列,而缓慢冷却,原子就会有充足的时间运动,有更多的机会找到能量最低的结构。

温度:在算法中的温度高低,则代表着它接受差解的能力,温度越高,接受差解的容忍度高,温度越低,接受差解的容忍度变低。

接受准则:指的是接受解的策略,当新解的能量小于旧解,接受;当新解的能量高于旧解,概率接受。

降温方案:指的是降温的规则。

邻域结构:是增加随机性的办法,定义了如何产生新的邻居解,通常是通过扰动产生新解。

2.适用性高,实用性强,但是慢,调整降温需要精细。

蚁群算法

它模拟了蚂蚁通过信息素相互协作来寻找食物源并最终找到最短路径的过程。

注释

1.蚂蚁在寻找食物的路径上,会释放信息素,而其他蚂蚁在觅食的时候,会倾向于,沿着信息素浓度高的地方前进。同时,较长路径在往返的时候会挥发一部分,而较短的路径,信息素则会逐渐累积,浓度会更高。

信息素:越多,对蚂蚁的吸引力越好,会随时间挥发减少。

可见度:距离的倒数,即距离越近可见度越高。与信息素共同影响决策。

决策:由信息素和可见度共同决定,通常采用概率性原则,与可见度和信息素成正比。

2.算法的并行性高,全局探索能力强,找到全局最优解的概率高,但是缓慢,而且可能会在某一条线路上停滞不前。

人工免疫克隆算法

它是一种受生物免疫系统中的克隆选择机制启发的优化算法。主要用于解决函数优化、模式识别、机器学习等问题。

注释

1.生物免疫遇到病毒(抗原)的时候,抗体/B细胞识别病毒,大量复制,在复制的过程中,会发生快速的变异,然后筛选出与病毒亲和性高的细胞,亲和度低的细胞会清除。

抗原:目标函数,目标问题。

抗体/B细胞:解。

亲和度:指的是解的优劣程度。

变异:对解的变异,加入随机性,跳出局部最优的方式,亲和度高的,小幅度变异,亲和度低的变异幅度高一点。

2.有记忆功能,会保留历史最优解,指导后续搜索,适应性高。

蒙特卡罗方法:简单来说就是用大量的数据实验总结暴力得出结果方法。用概率和统计得出近似的可靠度高的结果。

扩散蒙特卡罗方法:扩散蒙特卡罗方法是一种量子蒙特卡罗 (Quantum Monte Carlo, QMC) 方法,主要用于计算多体量子系统的基态能量 (Ground State Energy) 和基态波函数 (Ground State Wavefunction) 的性质。

注释

1.选择一个初态的波函数。

2.生成行走者,随机行走,根据局部能将决定分支或消亡:在局部能量高于平均能量,则消亡,反之会分裂。

3.随机行走也是有限制的,他必须通过波函数的梯度引导随机行走

薛定谔方程:描绘粒子的概率分布如何随着时间变化。

注释

1.指的就是波函数如何随时间变化。

2.含时薛定谔方程:这是最普遍的形式,描述了量子态如何随时间变化。适用于任何情况。

3.不含时薛定谔方程 :适用于系统的势能不随时间变化 (V 只依赖于位置 r) 的情况。

波函数:用于描述量子系统的状态,包含了关于量子系统的所有信息。

注释

1.波函数的值是绕着横轴旋转的,粒子在距离大的时候更可能被发现,即粒子更可能在这里。(在量子学中,无法知道粒子的确定位置,但知道粒子在某个位置的概率分布情况)。

2.波函数坍塌:在这里更具体的解释就是,观测到了之后,波函数除了探索部分之外都变成0,若为观测到,探索范围之外的波函数都变成0。

3.会变得扁长,因为速度不确定,速度快的和速度慢的逐渐拉开距离。

心得

1.大部分的算法,大体的框架差异不大,套路性强,总的来说,集中在几个步骤:

  • 按照一定方式,寻找最优解,通常来说,依据正向反馈和更容易出现正向反馈方向考虑。
  • 根据轮盘赌法选择解(主要,还是有其他的选择策略的),随后增加随机性,跳出局部最优。
  • 迭代结果。

通常来说都是在这几步里边创新。

2.将优化问题的目标函数 视为量子系统中的势能 (称为势能等效关系,equivalence of potential energy, EPE),即,从而可以通过量子退火过程或扩散蒙特卡罗方法 (Diffusion Monte Carlo, DMC) 来获得系统的基态[52]。如果将势能等效关系条件下量子系统的基态视为优化问题的解,则该工作从理论上证明了 智 能 优 化 算 法 的 迭 代 过 程 演 化 可 以 采 用 含 时Schrödinger 方程来描述。

注释

1.类似于霍普菲尔德网络,将最优解放在能量景观最低点。即将优化问题的目标函数看做是某个假想的量子系统的势能

2.量子系统倾向于能量最低的状态。

3.**如果将势能等效关系条件下量子系统的基态视为优化问题的解,则该工作从理论上证明了智 能优化算法的迭代过程演化可以采用含时Schrödinger 方程来描述。**这里指的是,把优化问题,想象成量子粒子在能量景观中运动并且到达最低点,那么这个过程可以用薛定谔方程描述和建模。

总结

1.第三部分“隐含并行性”主要讲的是,隐含并行性的相关定义,并且举例了在优化算法中隐含并行性的相关应用,展现了隐含并行性的作用和未来的发展潜力,也指出了量子力学在隐含并行性中的先天优势,进一步引出,“对于量子力学在智能优化算法中的应用不应只是停留在借鉴层面,由于优化问题和智能优化算法自身的概率特性,智能优化算法的迭代过程或可能被量子理论的基本规律所描述。

2.第四部分“基于量子比特的智能优化算法“,具体讲解了量子力学为什么具有隐含并行性(量子可以处于叠加态),并且以遗传算法举例,讲解了量子的实际应用。

3.第五部分“量子退火算法与优化问题的量子可描述性”,首先提出了:“量子计算不一定要采用基于比特的逻辑运算来实现“,进而引出通过量子模型描绘优化算法。随后文章写了优化问题与量子系统基态的对应关系(在心得中有解释)。紧接着,简述了量子退火与经典退火的不同,随后论证了量子退火计算机的具体实现路径。引出了:“智能优化算法的研究人员在广泛借鉴量子比特这一概念时,对物理学中的量子退火方法有所忽略,而正是量子退火算法才真正的指出了智能优化算法与量子理论之间密切的联系,而不仅仅是概念的借鉴。

进度

截至2025年5月18日,《量子视角下的智能优化算法综述》论文解读分析到 6.量子动力学理论。并且学习了部分霍普菲尔德网络的知识,具体内容在我的另一篇关于霍普菲尔德网络的文章中显示。之后的进度我准备在两周内完成对论文的解读,并且完成对霍普菲尔德网络的具体代码实现,之后我会依次了解玻尔兹曼机,伊辛模型,自旋玻璃(S-K),MP模型,感知机等概念,在同时完成对下一篇论文的解读。

问题

1.文中提到“隐含并行性的起源也是来自于不确定性”,我理解为这里指的为“量子视角下的隐含并行性”,我认为这里改成,来源于他的叠加态更好,因为,在有叠加态的时候才会体现并行。而不是他的不确定性直接导致的(不确定性是叠加态的一种结果)。

我的理解就是,叠加态是他本身具有的切实状态,所谓的不确定性只是,他量子坍塌之后的不确定结果。

2.优化问题的解采用概率化的波函数进行表达。这句话出现在论文的第五小节最后量子退火的核心思想中,但是在这是退火结束完成测量后,量子坍塌后,给出的不是一个特定的解吗?难道要多次实验,总结出来?

是的


  1. 一个模式是一个模板,它描述了基因串(染色体)中某些特定位置上的基因值是固定的,而其他位置是通配符*。例如一个长度为5的基因串为:1*1*1,其中*是通配符,这就是一个模板,它可以为“11111”,“10101”等等。 ↩︎

  2. 所有解的集合。 ↩︎