使用CVXPY的Concert技术应用或可调用库应用。

问题描述 投票:0回答:1

我正在研究一个优化问题的两步方法。我的第一步是使用MILP问题的公式,第二步是使用第一步的解作为初始解,但现在使用MIQP公式。我已经能够在MATLAB中使用CPLEX来应用这个概念。然而,我现在正在尝试使用CVXPY和CPLEX作为求解器来解决同样的问题。现在我知道了warm_start选项,但是这个选项在CPLEX求解器中不起作用。我可以设置CPLEX的参数,但我不知道如何初始化我的解决方案。我想把CPLEX的ADVANCE START SWITCH参数设置为1,但现在我需要设置初始解。 根据这个页面。http:/www-eio.upc.eslceiomanualscplex-11htmlusrcplexsolveMIP17.html。我需要在Concert Technology应用程序中使用setVectors方法,或者在Callable Library应用程序中使用CPXcopymipstart来设置初始解决方案。我不确定如何与CVXPY一起使用。

python-3.x optimization initialization cplex cvxpy
1个回答
1
投票

您需要的功能目前在CVXPY中不存在。CVXPY是一个通用的建模层,它包裹着几个求解器,它并没有暴露出CPLEX特有的 CPXreadcopymipstarts 也不 CPXaddmipstarts 功能。

事实上,设置 value 变量的属性,并使用 warm_start 中所建议的选择。这个 答案,不能用,是CVXPY的问题。貌似有一个开放的github问题,可以解决这个问题 此处. 将来,这可能是解决你一般问题的办法。

现在,你必须直接使用CPLEX API。正如你在评论中提到的 这个 相关的stackoverflow问题,你不喜欢使用低级别的CPLEX Python API。那你就只能使用 复写机 作为一个可行的选择。

© www.soinside.com 2019 - 2024. All rights reserved.