数学建模算法 一 简述(3)规划模型-整数规划
* R P; h6 x. q! }2 o; `摘要: 本文讲的是数学建模算法 一 简述(3)规划模型-整数规划, 整数规划 定义: 规划中的变量(全部或部分)限制为整数,称为整数规划。若在线性模型中,变量限制为整数,则称为整数线性规划。 一类要求问题的解中的全部或一部分变量为整数的数学规划。从约束条件的构成又可细分为线性,二次和非线 教程 云栖大会 Mysql 备案 文档 域名 whois查询 PHP教程 备份 互联网大学 云教程 * a( p7 Z# y: U0 m) k; J( l
整数规划
4 v5 S1 n; z' i$ ^1 S- Z* Z定义:
6 K( c0 E. v9 ?/ o规划中的变量(全部或部分)限制为整数,称为整数规划。若在线性模型中,变量限制为整数,则称为整数线性规划。 & X: w4 w7 O- f0 ^8 F/ h0 X
一类要求问题的解中的全部或一部分变量为整数的数学规划。从约束条件的构成又可细分为线性,二次和非线性的整数规划。 数学规划问题中有很多决策变量都只能取整数,如人员数量、机器设备台数、服装件数、汽车辆数等.如果规划问题中的决策变量xi(i=1,2,…,n),要求取整数值,则称这个模型为整数规划模型数学表现形式
" |) Y7 w+ H$ Z0 |![]() 主要解法分为这几种: (i)分枝定界法—可求纯或混合整数线性规划。
4 f: S& L& T# D2 b; o* y, a(ii)割平面法—可求纯或混合整数线性规划。 6 a4 c9 [* v% b
(iii)隐枚举法—求解“0-1”整数规划: 5 G- Y$ N2 O6 ?6 P5 n+ `2 c
①过滤隐枚举法; & |7 h9 o$ ?& h8 {9 X8 z) I8 f
②分枝隐枚举法。
( M+ m2 w! `* r1 Y& y" p1 y! q(iv)匈牙利法—解决指派问题(“0-1”规划特殊情形)。
9 P6 x& ]2 x! R3 h0 Y& a(v)蒙特卡洛法—求解各种类型规划。 示例:
6 B: t: l/ |+ g乐家百货商场准备派小李、小张、小王三位销售人员去销售库存的120件大衣.由于他们以前的销售业绩不同,每销售一件产品小李、小张、小王的报酬分别为6元、4元、3元.商场为保证销售速度,规定小李至少要承担30件销售任务,小张至少要承担20件销售任务,而小王承担的销售任务不能超过50件.问应该如何安排销售计划使总销售成本最低. 一、模型假设与变量说明 + g H& Z" S) i! k1 |
1.假设三位销售人员能销售完120件大衣. 1 s7 Q9 @8 S0 c+ f; P
2.小李、小张、小王承担的销售任务分别为 x1,x2,x3. 二、模型的分析与建立
$ m1 T$ b+ h5 w2 Q% K) B, |该问题是在对三位销售人员销售数量进行一定限制的情况下,合理安排各销售人员的销售数量,使得公司支付给三位销售人员的总报酬最少. # l) `4 I; K3 ^# U! C. J) e7 c
目标:三位销售人员的总报酬最低.而总报酬为
+ E& W& e/ |% ~ Z& j! p+ [ 7 u; q: c% b D7 r. f
约束条件: / i$ N" g. Y' i
1.受总销售数量的限制: " Z a" Q/ S- V/ C' M3 F9 b: u
![]() 2.受销售员销售数量的限制(如小李): X(1) ≥ 30
U4 N b# S B5 s![]() x=intvar(1,3); f=[6 4 3]*x'; F=set(0<=x<inf); F=F+set([1 1 1]*x'==120)+set(x(1)>=30)+set(x(2)>=20)+set(0<=x(3)<=50); solvesdp(F,f) double(f) double(x) . l4 `) ]- a" L+ _/ l$ Z
由此可知,小李,小张,小王分别承担30,40,50件销售任务时,公司支付的总报酬最少.
" S% V& t: N) S5 G% Y1 P% ~" J) C2 a& C( V- H/ b- G3 y' ?. F
( ~) i6 F8 } |8 S0 e% Q7 i
|