1. 课程导入与量子调度问题界定
调度问题是一类典型的组合优化问题:给定一组作业、机器、资源和约束,要求为每个作业确定执行顺序、开始时间与资源分配,使某个目标(如最大完工时间、总延迟、能耗)达到最优或近似最优。经典作业车间调度(Job Shop Scheduling)中,n个作业在m台机器上按各自工艺路线加工,解空间随规模呈阶乘级增长,10×10规模的实例已难以用穷举法求解。量子计算凭借叠加与纠缠特性,为在解空间中并行探索提供了新的可能,由此形成了“量子调度”这一交叉方向。
需要明确的是,本课程讨论的“量子调度问题”并非指对量子计算机内部量子比特、门操作进行时序编排的底层控制调度,而是指以调度问题为求解对象、以量子算法或量子—经典混合算法为求解手段的一类问题。其核心对象可以概括为两个相互衔接的部分:一是如何把调度问题转化为量子算法可处理的模型并求解;二是如何评估所得到的调度方案与求解过程是否真正有效。前者关注建模与求解,后者关注性能评估,二者共同构成本课程的主线。
典型场景与问题形态
量子调度研究的典型场景主要有三类。第一类是作业车间调度:每个作业有固定的工序顺序,每道工序需在指定机器上加工,决策变量是各机器上工序的排列顺序,目标常为最小化最大完工时间(makespan)。第二类是任务分配:把一组任务分配给若干执行单元(处理器、无人机、计算节点),在能力、时限、负载约束下优化总成本或均衡度,其数学形态接近二次分配问题与广义分配问题。第三类是资源调度:在时间窗内为任务分配带宽、能量、存储等连续或离散资源,常见于网络切片、卫星测控、云平台等场景。
这三类场景在数学上大多可归约为约束优化或二次无约束二值优化(QUBO)形式。例如,一个把4个任务分配到2台机器的简单示例,可设二值变量 xi,k∈{0,1} 表示任务i是否分配给机器k,约束为每个任务恰分配一次,目标为最小化两台机器负载之差。此类小规模示例适合在课程中手工推演,用于理解建模过程,而不代表真实工程规模。
为什么需要“求解 + 评估”双主线
量子算法给出的往往不是精确最优解,而是以一定概率出现的近似解。以QAOA(量子近似优化算法)为例,其性能受线路层数p、参数优化质量、问题编码方式共同影响。若只关注“跑出结果”,很容易把不可行解或偶然的优质解误判为算法有效。因此,评估必须回答三个问题:解是否满足全部约束;解质量相对经典基线提升了多少;所消耗的量子资源是否可接受。这三者缺一不可,否则结论无法复现,也无法与经典方法公平比较。
在工程实践中,一个常见的误区是直接拿小规模量子结果与大规模经典结果对比。正确做法是固定问题实例、固定约束与目标定义,在同一实例上分别运行量子—经典混合流程与经典启发式(如遗传算法、模拟退火、CP-SAT求解器),记录目标值、可行率与运行时间,并注明量子部分为模拟器还是真实硬件。示例数据只能作为教学演示,真实结论必须来自可复现的实验记录。
学习路径与目标
本课程按“问题界定—建模编码—算法求解—性能评估—综合实践”的顺序展开。前期建立调度问题的形式化描述与QUBO转换能力,理解惩罚项系数如何影响可行解比例;中期学习QAOA、量子退火及混合求解流程,掌握比特数、线路深度与解空间规模之间的关系;后期重点训练评估方法,包括基准选择、指标计算、结果统计与误差分析。完成课程后,应能独立完成一个小规模调度实例的建模、编码、求解与评估闭环,并能判断量子方法在该实例上是否具备相对优势。