SQP Algorithm C++ code in VS2005 IDE

时间:2012-12-20 04:12:07
【文件属性】:

文件名称:SQP Algorithm C++ code in VS2005 IDE

文件大小:273KB

文件格式:RAR

更新时间:2012-12-20 04:12:07

SQP Numerical Optimization QP Sequential

The Sequential Quadratic Programming (SQP) Algorithm Given a solution estimate xk, and a small step d, an arbitrary numerical optimization problem can be approximated as follow: f(xk+d)=f(xk)+[▽f(xk)] T*d + 1/2*(dT)[▽2f(xk)]*d+.... h(xk+d)=h(xk)+[▽h(xk)]T*d + 1/2*(dT)[▽2h(xk)]*d+.... = 0 g(xk+d)=g(xk)+[▽g(xk)]T*d + 1/2*(dT)[▽2g(xk)]*d+.... >= 0 where x=[x1,x2,…xk]T, d=[d1,d2,…dk]T Form the linearly-constrained/quadratic minimization problem: Minimize: f(xk)+[▽f(xk)]T*d + 1/2*(dT)[▽2f(xk)]*d Subject to: h(xk)+[▽h(xk)]T*d = 0; g(xk)+[▽g(xk)]T*d >=0; In the SQP loop, the approximate QP should be a convex Quadratic Programming, in which the matrix Q = ▽2f(xk) should be positive semidefinite, Q ≥ 0. Actually, the Q is the Hessian matrix of the function f(x) at the point xk.


【文件预览】:
SQP
----Array.h(60KB)
----problem.h(890B)
----QuadProg.h(3KB)
----problem.cpp(2KB)
----release()
--------SQP.exe(188KB)
----Array.cpp(1KB)
----SQP.jpg(1.04MB)
----SQP.suo(39KB)
----SQP IOWA.pdf(276KB)
----main.cpp(3KB)
----QuadProg.cpp(21KB)

网友评论

  • 序列二次规划
  • 打开就能用
  • 资源不错,参考学习了
  • 还好,可以用
  • 很好用,SQP的解释文档很管用
  • 有一定参考价值,虽然注释不多,谢谢分享。
  • 代码很赞,对于初学者学习是个非常好的资料
  • 试用一下啊
  • 很好地代码
  • 代码可以用,好
  • 对自己编写sqp程序还是很有参考价值的
  • 很好 VS2010可以编译通过 有参考价值
  • 全英文啊。得慢慢啃了
  • 优化效果还可以,不过有些代码可以简化。
  • 代码不能编译通过是怎么回事?
  • 怎么编译不通过啊,需要修改std::min、std::max为std::_MIN、std::_MIN等,这些怎么改
  • 非常好,参考价值很大,QP的代码很难找到,本文提高了非常好的代码
  • 英文的啊,看看先~
  • 不错,应该是属于SQP有效集法
  • 代码的运行速度比较快,而且可以处理限制条件(constraints)为非线性的情况,值得推荐!只是代码处理的是一个给定的实例,即给定的一个具体目标函数(cost function),并非一般情况,所以,请注意,针对具体问题使用时需要修改部分代码(即其中的problem.cpp,problem.h文件)。总体来说,是非常好的学习资料,十分值得推荐!
  • 在VS2003 IDE下面不能直接 编译通过, 需要修改std::min、std::max为std::_MIN、std::_MIN等,但还有8个警告,但可以计算出正确的结果。有参考价值。。。
  • 英文注释,翻着字典看,挺有收获的
  • 很好,注释是全英文的,要好好学习了