python实现线性规划

Posted 崔露露

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python实现线性规划相关的知识,希望对你有一定的参考价值。

python工具包scipy linprog

函数格式

scipy.optimize.linprog(c, A_ub=None, b_ub=None, A_eq=None, b_eq=None, bounds=None, method=\'simplex\', callback=None, options=None)
官方文档  https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.linprog.html
实例
minmize:
       -7x1+7x2-2x3-x4-6x5
s.t.:
       3x1-x2+x3-2x4=-3
       2x1+x2+x4+x5=4
       -x1+3x2-3x4+x6=12
       xi>=0
程序代码:
import numpy as np
import matplotlib.pyplot as mpl
from scipy import optimize
c=np.array([-7,7,-2,-1,-6,0])
a=np.array([[3,-1,1,-2,0,0],[2,1,0,1,1,0],[-1,3,0,-3,0,1]])
b=np.array([-3,4,12])

res=optimize.linprog(c,A_eq=a,b_eq=b,bounds=((0,None),(0,None),(0,None),(0,None),(0,None),(0,None)))
print (res.x)
print (res.fun)

glpk求解

答案一致。

以上是关于python实现线性规划的主要内容,如果未能解决你的问题,请参考以下文章

动态规划——最长公共子序列与最长公共子串 (含Python实现代码)

如何在android中的地图片段内中心线性布局?

线性回归——Python代码实现

我在哪里更改此 Python 代码片段以将临时文件保存在 tmp 文件夹中?

Python代码阅读(第19篇):合并多个字典

线性与非线性数据降维方法汇总(Python代码实现)