这个例子是这样的:
minimize: 2x_{1}^{2} + x_{2}^{2} + x_{1}x_{2} + x_{1} + x_{2}subject to: x_{1} >= 0 x_{2} >= 0 x_{1} + x_{2} = 1
可以通过使用来解决
Q = 2*matrix([ [2,.5],[.5,1] ])p = matrix([1.0,1.0])G = matrix([[-1.0,0.0],[0.0,-1.0]])h = matrix([0.0,0.0])A = matrix([1.0,1.0],(1,2))b = matrix(1.0)sol=solvers.qp(Q,p,G,h,A,b)print(sol['x'])解决方法 你应该看看这个:
Solving QP with CVXopt
为了解决二次规划问题,CVXopt接受一组矩阵,通常称为P,q,A和h.
您必须先将问题转换为CVXopt接受的特定形式(在链接中提到).
目的是找到一个最优解,(在你的例子中,拉格朗日乘数),它是矩阵’x’.
您“存储”解决方案的对象具有许多属性,其中一个属性是矩阵“x”,您可以打印或用于进一步计算.
总结以上是内存溢出为你收集整理的Python cvxopt求解器qp如何工作全部内容,希望文章能够帮你解决Python cvxopt求解器qp如何工作所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)