2336426014 发表于 2018-7-15 17:04

建模算法基础(1)线性规划

先来下个定义~

线性规划:研究在一组自变量的线性约束条件下,求线性函数的最小值或最大值,一般形式为:
min(max) f=cx, s.t. ax>=b(<=b);x>=0
整数规划:线性规划的特殊形式,其决策变量只能取整数,一般形式为:
min(max) f=cx, s.t. ax<=b;x>=0
http://www.mathor.com/data/attachment/forum/201601/17/222019j132rkmzamo3uhr2.jpg
基于函数simplemthd()求解得到:http://www.mathor.com/data/attachment/forum/201601/17/222222xyndfehyq6srcr17.png
此外还有大M法、变量有界单纯形法(自变量有取值区间),都是基于单纯形法,在此不多讨论~

MATLAB函数应用--->linprog(线性规划)
例:
http://www.mathor.com/data/attachment/forum/201601/17/221846awgd6wilyl8i6y66.jpg
matlab运行结果:
http://www.mathor.com/data/attachment/forum/201601/17/221945s1zipfjqizwpze3u.png
二、求解整数规划的方法:
1.Gomory割平面法:首先求解非整数约束的线性规划,再选择非整数基变量,定义新的约束从而缩小可行域,保留原问题的全部可行解
2.分支定界法:不断将可行域分割为小集合,然后在小集合上找整数最优解。(分割过程中不会丢失整数解)
3.0-1规划法:若自变量数目少,可用穷举法;否则用隐枚举,只检查目标值(通过可行解不断改进,因此需要初始值)的取值组合的一部分
整数规划在实际中应用较多,主要包括以下方面:
1.运作问题,如货物分配、生产调度、机器排序等;
2.计划问题,如资金预算、设施选址、证券组合分析等;
3.设计问题,如生产线设计、网络设计等。
三种算法的例子及代码由于比较长,所以放文档里



页: [1]
查看完整版本: 建模算法基础(1)线性规划