首页 > 解决方案 > CVXPY 不会终止(使用 CVXOPT 作为求解器)

问题描述

我们使用 CVXPY 和 CVXOPT 作为求解器(和cvx.ROBUST_KKTSOLVERKKT 求解器)作为变化点检测方法的一部分。

在某些情况下,调用Problem.solve()不会终止。对于相同的数据,我们无法确定性地重现问题,因为有时它会返回,有时(很少)不会。

如果求解器在一定时间内没有返回,是否有一些关于如何终止求解器的方法?这有什么论据吗?(我们在文档中没有找到它。)

只是为了给出一些上下文,我们这样称呼求解器

w = cvx.Variable((_degree + 1 + dimensions, 1))
objective = cvx.Minimize(cvx.norm(A * w - Y, _regression_norm) ** _regression_norm + _penalty * cvx.norm(w[_degree + 1:], _basis_norm) ** _basis_norm)
constraints = []
prob = cvx.Problem(objective, constraints)
optimal_value = prob.solve(solver='CVXOPT', kktsolver=cvx.ROBUST_KKTSOLVER, verbose=True)

标签: pythoncvxpycvxopt

解决方案


推荐阅读