Research Note
CVX 优化问题排查清单
记录复数半正定优化、数值缩放和求解状态检查中的常用排查顺序。
从模型而不是求解器开始
当 CVX 返回不可行或数值状态异常时,先检查数学模型是否自洽,再调整求解器参数。建议按照“维度、结构、尺度、可行性、状态”的顺序排查。
维度与复数结构
- 所有二次型的矩阵维度是否匹配。
- 应为 Hermitian 的矩阵是否显式保持 Hermitian 结构。
- 半正定变量是否使用了正确的复数声明。
- 标量不等式两侧是否都为实数。
例如复数半正定变量通常需要明确声明为
variable W(N, N) hermitian semidefinite
数值尺度
若目标函数、噪声功率和信道增益相差多个数量级,可以先统一单位或引入有物理意义的缩放。缩放后必须确保约束和最终恢复指标使用相同的尺度定义。
可行性定位
- 固定位置变量,只检查波束成形子问题。
- 固定波束成形变量,只检查位置子问题。
- 暂时使用一个已知可行点计算每条约束的残差。
- 区分原问题不可行和近似子问题不可行。
- 检查每轮迭代使用的是当前点还是上一次接受点。
结果记录
每次排查至少保存以下信息:
- 求解器状态;
- 当前目标值;
- 各类约束的最大违反量;
- 迭代点是否被接受;
- 最终报告值是恢复后的物理指标还是代理目标。