← 返回课程列表
能量地形与组合优化实战入门:从 Hopfield 网络到伊辛机

能量地形与组合优化实战入门:从 Hopfield 网络到伊辛机

课程简介

很多难题不是"算得不够快",而是找的方向不对。给 30 个城市排个送货顺序,方案数是 30 的阶乘量级;把一条蛋白链折叠成天然构象,构象空间更大。这类问题有个共同点:解空间巨大,但每个解都能打分。一旦能打分,解空间就成了一张地形图,优化就变成了"在这个地形上找最低的谷"。

本课程从这张地形图讲起,一路走到今天跑在 FPGA 上的伊辛机。你会亲手写出梯度下降、模拟退火和 Fowler–Nordheim 隧穿退火三套求解器,用同一批 MAX-CUT 算例比较它们的解质量和时间,并理解为什么"保证收敛"和"快速给出还不错的解"是两件不同的事。

课程三层结构第一层:把问题画成地形目标函数即高度,可行域即地盘第二层:选走法梯度下降 / 模拟退火 / 隧穿退火,比解也比时间第三层:上硬件脉冲神经元编码、FPGA 实现、time-to-solution 评测" alt="图1:课程知识结构" style="width:100%;border-radius:8px;margin:16px 0;">

图1:课程三层结构——画地形、选走法、上硬件

学习目标

  • 能把一个具体的组合优化问题写成能量函数,并指出它的地形长什么样
  • 能手推 Hopfield 网络的 Hebbian 权重,解释"伪模式"从哪来,以及容量上限的物理含义
  • 能实现三种退火排程,用同一批评测算例给出可复现的解质量与时间对比
  • 能解释为什么高阶相互作用会让资源开销爆炸,以及自编码器分解如何绕开这一点
  • 能读一篇伊辛机论文的方法部分,判断它的优势来自退火排程还是来自硬件

章节概览

  1. 把问题画成地形:目标函数即高度,可行域即地盘;MAX-CUT 与旅行商问题的能量写法
  2. 局部极小值的来源:为什么高维空间里到处都是坑,以及"漏斗地形"为什么例外
  3. Hopfield 网络:Hebbian 权重、异步更新、能量函数单调下降的证明,以及 0.14N 容量上限
  4. 模拟退火:Metropolis 判据、指数降温与 O(1/t) 排程,调参时最容易踩的坑
  5. 隧穿退火:Fowler–Nordheim 隧穿概率与势垒宽度、高度的关系,为什么它对薄墙特别有效
  6. 高阶相互作用:三体以上的耦合怎么表达,自编码器分解如何把资源开销与相互作用阶数解耦
  7. 上硬件:从 CPU 模拟到 FPGA 实现,脉冲神经元编码与时延对收敛的影响
  8. 评测与结论:解质量、time-to-solution 与渐近收敛保证,怎么读论文里的对比表

动手实验

  • 实验一:同一张随机图,比较梯度下降、模拟退火、隧穿退火在 60 秒预算内的最好解
  • 实验二:把降温排程从指数改成 O(1/log t),观察解质量与时间的变化
  • 实验三:往 Hopfield 网络里塞入超过容量上限的图案,统计伪模式出现的比例
  • 实验四:在 4 位、8 位、12 位的小规模 MAX-CUT 上穷举全部解,验证退火结果离最优有多远

同样 60 秒预算,降温排程不同,停下的高度不同慢降温中速快降温降温越快,越早被冻结在较高的能量上" alt="图2:退火排程对最终解质量的影响" style="width:100%;border-radius:8px;margin:16px 0;">

图2:同样 60 秒预算,降温排程不同,最终停留的能量差别明显

先修要求

会写 Python,知道矩阵乘法和概率分布的基本概念即可。不需要量子力学背景——课程里用到的隧穿只出现为一个概率公式,它的物理来源会在第一章用一节讲清楚。

---
能量地形与组合优化实战入门:从 Hopfield 网络到伊辛机 | 必学必会