首页 > 代码库 > 线性规划
线性规划
http://www.cnblogs.com/zhilangtaosha/p/5745556.html
- 函数格式
- scipy.optimize.linprog(c, A_ub=None, b_ub=None, A_eq=None, b_eq=None, bounds=None, method=‘simplex‘, callback=None, options=None)
- 今天阅读数据建模第一章线性规划问题,问题描述如下:
- 通过介绍我们知道了线性规划,就是目标函数及约束条件均为线性函数。
- 通过画图我们可知,X1,X2的最优解为2,6,目标值为26。
- 我们如何时候这个scipy的公式来计算这个值呢:
>>> c = [-1, 4]
>>> A = [[-3, 1], [1, 2]]
>>> b = [6, 4]
>>> x0_bounds = (None, None)
>>> x1_bounds = (-3, None)
>>> from scipy.optimize import linprog
>>> res = linprog(c, A_ub=A, b_ub=b, bounds=(x0_bounds, x1_bounds),
... options={"disp": True})
>>> print(res)
Optimization terminated successfully.
Current function value: -11.428571
Iterations: 2
status: 0
success: True
fun: -11.428571428571429
x: array([-1.14285714, 2.57142857])
message: ‘Optimization terminated successfully.‘
nit: 2
- 上面是官方给出的案例,我们很难看出来这个怎么求解最大值,不过英语好的也可以把。
- 言归正传,我们先结合官网是思路得出最小值的解。
In [1]:c = np.array([4,3])
In [1]:a = np.array([[2,1],[1,1]])
In [1]: