位置: IT常识 - 正文
推荐整理分享python线性规划的求解方法(python 规划求解),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:numpy线性规划,python 非线性规划,python 规划求解,python 线性规划,python 规划,numpy线性规划,python 线性规划,python 线性规划,内容如对您有帮助,希望把文章链接给更多的朋友!
说明
1、图解法,用几何绘图的方法,求出最优解。
中学就讲过这种方法,在经济学研究中非常常用。
2、矩阵法,引入松弛变量。
将线性规划问题转化为增广矩阵形式,然后逐步解决,是简单性法之前的典型方法;
3、单纯法,利用多面体在可行领域逐步构建新的顶点,不断逼近最优解。
是线性规划研究的里程碑,至今仍是最重要的方法之一;
4、内点法。
通过选择可行域内点沿下降方向不断迭代,达到最佳解决方案,是目前理论上最好的线性规划问题解决方案;
5、启发法。
依靠经验准则不断迭代改进,搜索最优解,如贪心法、模拟退火、遗传算法、神经网络等。
单纯法实例
importnumpyasnp#导入相应的库importsysdefsolve(d,bn):whilemax(list(d[0][:-1]))>0:l=list(d[0][:-2])jnum=l.index(max(l))#转入下标m=[]foriinrange(bn):ifd[i][jnum]==0:m.append(0.)else:m.append(d[i][-1]/d[i][jnum])inum=m.index(min([xforxinm[1:]ifx!=0]))#转出下标s[inum-1]=jnum#更新基变量d[inum]/=d[inum][jnum]foriinrange(bn):ifi!=inum:d[i]-=d[i][jnum]*d[inum]defprintSol(d,cn):foriinrange(cn-1):ifiins:print("x"+str(i)+"=%.2f"%d[s.index(i)+1][-1])else:print("x"+str(i)+"=0.00")print("objectiveis%.2f"%(-d[0][-1]))以上就是python线性规划的求解方法,希望对大家有所帮助。更多Python学习指路:Python基础教程
上一篇:Python导入模块的搜索顺序(python导入模块的本质)
下一篇:dedecms如何设置首页滚动显示?(dedecms配置)
友情链接: 武汉网站建设