我正在尝试使用 Python 包 CVXPY 来解决第一种形式的凸二次规划问题:https ://www.cvxpy.org/examples/basic/quadratic_program.html ,使用以下代码
x = np.variable(2 * N)
prob = cp.Problem(cp.Minimize((1/2) * cp.quad_form(x, P) + q @ x), [G @ x <= h, A @ x == b])
prob.solve(solver=cp.OSQP, verbose=True)
但是,对于某些数据,它给了我错误
ArpackNoConvergence: ARPACK error -1: No convergence (1001 iterations, 0/1 eigenvectors converged)
通过搜索互联网,似乎可以通过增加 ARPACK 中的迭代次数或增加容差来解决此问题。CVXPY 有 max_iters 和绝对精度的选项,但这些似乎不会影响 ARPACK 中的迭代次数,我假设它们适用于求解器的更高级别部分。
我在网上找不到任何关于这个特定问题的参考资料,或者确实找不到与 CVXPY 一起使用的 ARPACK。我对此感到很困惑,非常感谢任何帮助。