一、前引
前面我们已经介绍过excel规划求解、TORA和lingo编程的解法(有兴趣的可以翻看历史分享文章),本文将介绍使用python的解法;
二、实例
以二元线性方程为例,如下所示,存在2个变量X1和X2,X1和X2的取值受①~④的约束。要在此条件下求⑤Max Z=2X1+X2的最大值;
1、需安装numpy和scipy这2个库(pip install numpy/scipy)
①numpy是科学计算的基础包,能实现矩阵运算;
②scipy则是基于numpy的科学计算库,用于数学、科学、工程学等领域,很多有一些高阶抽象和物理模型需要使用scipy。scipy包含的模块有最优化、线性代数、积分、插值、特殊函数、快速傅里叶变换、信号处理和图像处理、常微分方程求解和其他科学与工程中常用的计算;
2、此处线性规划求解功能需用到scipy.optimize中的linprog(即Linear programming)
以下简单介绍下linprog的使用,具体使用方法可参照scipy官网,scipy.optim