我想看一下IPM的几个实现。最好的语言是C / C ++,Java或任何脚本语言,如python,perl。其他人也很好。
我正在寻找一个可以帮助我的好资源,
我感兴趣的是作为我项目的一部分,我将使用这些想法/逻辑来解决线性或二次方程组。
如果您有关于上述资源的任何信息,请与我们联系。
答案 0 :(得分:4)
另一个开源内点线性编程求解器是用C语言编写的GLPK: http://www.gnu.org/software/glpk/ 和 http://en.wikibooks.org/wiki/GLPK
Bob Vanderbei的线性编程书(http://www.princeton.edu/~rvdb/LPbook/)是一本很好的书,用于解释内点算法在二次规划中的应用。引用的网站也有软件链接,但它似乎不是“商业质量”软件。 Vanderbei还拥有LOQO,这是一种用于二次规划的更具工业实力的内部点代码(http://www.princeton.edu/~rvdb/ps/loqo5.pdf)。内部点qp的另一个最新想法是:http://www-personal.umich.edu/~murty/Grav-QP.pdf
答案 1 :(得分:3)
单纯形法和内点法都有它们的位置。一个不是更好或更快 一般而言,你会发现每种方法在不同方面表现更好 问题类别。
对于代码,开源Coin-OR项目Clp具有用C ++实现的Simplex,Dual Simplex和Interior Point方法。
但是,如果你只是想解决一个线性或二次方程组的系统 形式f(x)= 0,那么这根本不是你想要的。如果你想要的系统是 线性,那么你需要了解直接或迭代线性求解器。如果问题 是非线性的,你应该研究牛顿方法或准牛顿方法。
祝你好运。答案 2 :(得分:0)
首先,不要比较单纯形法和内点法。他们有解决问题的不同方法。单纯形法用于最大化或最小化函数,内点法用于确定给定函数内所有可能的点,这些函数通过加或减来满足delta(很小的值)的集合函数。您可以在此处找到有关它们的详细信息 [1]:http://www-personal.umich.edu/~murty/Grav-QP.pdf