二次正定最小化如何无界

计算科学 优化 Python 二次规划 约束优化
2021-12-14 03:36:16

我正在使用 CPLEX 最小化对角二次矩阵。所有非对角线元素都为零。

它有 500 个变量和 20 个线性约束,而且每个变量都被约束在 0 和 1 之间

对角线上的所有元素都大于零。

CPLEX 抱怨它不是最优的或无界的,具体取决于矩阵的值。

我看不出这个问题是如何无界的,因为它是凸函数的最小化。对于某些值,CPLEX 表示解决方案不是最优的。

如果有帮助,我已经发布了 lp 文件... http://speedy.sh/Ug76K/quadratic-fail.lp

这是 CPLEX 日志

尝试聚合器 1 次。

QP Presolve 消除了 15 行和 0 列。

缩减的 QP 有 5 行、500 列和 1000 个非零值。

缩减的 QP 目标 Q 矩阵有 500 个非零值。

预求解时间 = 0.00 秒。(0.29 滴答声)

并行模式:最多使用 8 个线程作为屏障。

A*A' 的下三角形中的非零数 = 10

使用近似最小度数排序

自动订购的总时间 = 0.00 秒。(0.00 滴答声)

Cholesky 因子的汇总统计数据:

线程 = 8

因子中的行 = 5

需要整数空间 = 5

因子中的总非零值 = 15

总 FP 操作因子 = 55

Itn Primal Obj Dual Obj Prim Inf Upper Inf Dual Inf

0 2.7831848e+014 -2.7831848e+014 6.65e+001 9.07e+002 5.57e+014

1 1.8149043e+012 -1.8149043e+012 5.37e+000 7.32e+001 4.49e+013

2 1.5035906e+012 -1.5035906e+012 4.89e+000 6.67e+001 4.09e+013

3 1.1322578e+012 -1.1322578e+012 4.24e+000 5.79e+001 3.55e+013

4 7.9610680e+011 -7.9610680e+011 3.56e+000 4.85e+001 2.98e+013

5 5.5016492e+011 -5.5016491e+011 2.96e+000 4.03e+001 2.47e+013

阻挡时间 = 0.00 秒。(0.96 滴答声)

8 个线程的总时间 = 0.00 秒。(0.96 滴答声)

状态 = 2

错误状态是无限的

印刷唱片

任何人都可以使用 CPLEX 重现我的问题吗?

更新:我已强制 CPLEX 使用 PRIMAL 算法而不是默认算法。优化器现在运行,但我收到很多“Markovitz threshold set to X.XX”风格的警告。

1个回答

您的问题似乎确实很容易。我尝试了另一个凸优化器 MOSEK,而不是 CPLEX,它几乎很快就解决了(见最后的日志)。

这个问题的规模很好,你没有明显的理由让 CPLEX 被愚弄。我的猜测是它无法证明最优性。无界不应该是问题。

MOSEK 版本 7.0.0.114(构建日期:2014-4-27 19:30:42) 版权所有 (c) 1998-2014 MOSEK ApS,丹麦。万维网: http: //mosek.com

打开文件“quadratic_fail.lp”

阅读摘要类型:QO(二次优化问题)客观意义:最小约束:20
标量变量:500
矩阵变量:0
时间:0.0

计算机平台:Linux/64-X86
内核:2

问题名称:
客观意义:min
类型:QO(二次优化问题) 约束:20 个
锥体:0
标量变量:500
矩阵变量:0
整数变量:0

优化器启动。内点优化器启动。预求解开始。线性依赖检查器已启动。线性依赖检查器终止。消除器-尝试:0 次:0.00
消除器-elim 的:0
林。- 尝试:1 次:0.00
林。- number : 0
Presolve 终止。时间:0.00
矩阵重新排序开始。本地矩阵重新排序开始。局部矩阵重新排序终止。矩阵重新排序终止。优化器 - 线程:2
优化器解决的问题:原始
优化器 - 约束:5 优化器 - 锥体:0 优化器 - 标量变量:505 圆锥:0
优化器 - 半定变量:0 标量化:0
因子 - 设置时间:0.00 密集检测。时间:0.00
因子 - ML 订购时间:0.00 GP 订购时间:0.00
因子 - 因子之前的非零值:15 因子之后:15
因子 - 密集暗淡。: 0 次失败 : 0.00e+00
ITE PFEAS DFEAS GFEAS PRSTATUS POBJ DOBJ MU TIME
0 1.0e+02 1.1e+03 2.0e+04 0.00e+00 9.762500000e+03 -9.762500000e+03 1.0e+00 0.00
1 2.5e+00 2.7e+01 1.3e+03 -8.24e-01 1.46154795 e+03 -1.063368559e+04 1.1e-01 0.01
2 2.1e+00 2.3e+01 1.2e+03 5.90e-01 1.926066470e+03 -1.046829917e+04 1.0e-01 0.01
3 1.3e+00 1.3 e+01 7.0e+02 5.10e-01 2.077327854e+03 -6.495728296e+03 6.0e-02 0.01
4 5.2e-01 5.6e+00 3.4e+02 4.24e-01 3.416151322e+03 -2.0065144 03 2.8e-02 0.01
5 6.6e-02 7.0e-01 8.7e+01 6.41e-01 4.786227760e+03 3.147891392e+03 5.9e-03 0.01
6 6.3e-03 6.7e-02 1.4e+01 9.6 e-01 4.744795814e+03 4.485405619e+03 8.3e-04 0.01
7 8.3e-06 8.8e-05 7.6e-01 9.98e-01 4.726819747e+03 4.712348560e+03 3.9e-05 0.
8 8.0e-07 8.4e-06 1.3e-01 1.00e+00 4.723211688e+03 4.720790746e+03 6.6e-06 0.01
9 2.8e-09 3.0e-08 8.7e-03 1.00e+00 4.722531001 03 4.722365208e+03 4.5e-07 0.01
10 1.7e-12 1.9e-11 5.5e-04 1.00e+00 4.722481461e+03 4.722470859e+03 2.9e-08 0.01 11e-
914 3.5e-35 5. e-05 1.00e+00 4.722478119e+03 4.722477487e+03 1.7e-09 0.01
12 5.7e-16 1.1e-13 1.7e-06 1.00e+00 4.722477945e+03 4.722477912e 0.018.03
内点优化器终止。时间:0.01。

优化器终止。时间:0.03

内点解决方案总结 问题状态:PRIMAL_AND_DUAL_FEASIBLE 解决方案状态:OPTIMAL Primal。对象:4.7224779451e+03 Viol。缺点:2e-16 变量:0e+00
双。对象:4.7224779122e+03 Viol。缺点:4e-12 变量:4e-13