数学建模算法 一 简述(3)规划模型-整数规划2 d( J9 Y. S3 y7 j# z
摘要: 本文讲的是数学建模算法 一 简述(3)规划模型-整数规划, 整数规划 定义: 规划中的变量(全部或部分)限制为整数,称为整数规划。若在线性模型中,变量限制为整数,则称为整数线性规划。 一类要求问题的解中的全部或一部分变量为整数的数学规划。从约束条件的构成又可细分为线性,二次和非线 教程 云栖大会 Mysql 备案 文档 域名 whois查询 PHP教程 备份 互联网大学 云教程 : l1 g- e. E0 z& `
整数规划 6 W: G0 d5 j7 ~6 B. e( C. e- e4 R5 p
定义:
9 |4 J% t0 ~" D规划中的变量(全部或部分)限制为整数,称为整数规划。若在线性模型中,变量限制为整数,则称为整数线性规划。
9 h4 ^6 r9 j( M一类要求问题的解中的全部或一部分变量为整数的数学规划。从约束条件的构成又可细分为线性,二次和非线性的整数规划。 数学规划问题中有很多决策变量都只能取整数,如人员数量、机器设备台数、服装件数、汽车辆数等.如果规划问题中的决策变量xi(i=1,2,…,n),要求取整数值,则称这个模型为整数规划模型数学表现形式
0 _: g' H. S% e5 M: C4 _3 ]![]() 主要解法分为这几种: (i)分枝定界法—可求纯或混合整数线性规划。 7 x1 M) o c# y0 l7 [: V: n
(ii)割平面法—可求纯或混合整数线性规划。 ]/ D9 s/ p2 U' j
(iii)隐枚举法—求解“0-1”整数规划:
$ O1 V6 A6 I/ J+ p. T, J9 c①过滤隐枚举法;
/ \( C8 l; W6 {7 y②分枝隐枚举法。
* u3 M5 y. d0 _3 Y9 [3 w( J. n(iv)匈牙利法—解决指派问题(“0-1”规划特殊情形)。
# ~. m, `# O0 N. P(v)蒙特卡洛法—求解各种类型规划。 示例:
' t3 f l# B8 H乐家百货商场准备派小李、小张、小王三位销售人员去销售库存的120件大衣.由于他们以前的销售业绩不同,每销售一件产品小李、小张、小王的报酬分别为6元、4元、3元.商场为保证销售速度,规定小李至少要承担30件销售任务,小张至少要承担20件销售任务,而小王承担的销售任务不能超过50件.问应该如何安排销售计划使总销售成本最低. 一、模型假设与变量说明 / ?; P4 A0 s5 M1 m4 W
1.假设三位销售人员能销售完120件大衣.
@5 n' G2 q, {2 @7 a) h2.小李、小张、小王承担的销售任务分别为 x1,x2,x3. 二、模型的分析与建立 ) X! j3 f( B$ R4 N! z6 g5 V
该问题是在对三位销售人员销售数量进行一定限制的情况下,合理安排各销售人员的销售数量,使得公司支付给三位销售人员的总报酬最少.
1 E _4 v j; `- K+ [+ P目标:三位销售人员的总报酬最低.而总报酬为
3 G4 h2 x8 N2 F( w ! J; D8 A# Y. g2 v# ^6 r: F
约束条件: + g. ?) J% ]$ V5 u
1.受总销售数量的限制: # m9 c* g4 E) O& L' V3 @
![]() 2.受销售员销售数量的限制(如小李): X(1) ≥ 30 : k5 d3 X: O2 P5 I4 v5 Y# A
![]() 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) 5 O n% s8 {% o% J1 V8 X2 B/ R# w( A
由此可知,小李,小张,小王分别承担30,40,50件销售任务时,公司支付的总报酬最少.
4 X& \' X, X8 V/ X; }4 y, ~5 {3 p* Z3 o( q$ Z
4 k' y" N* }0 b. `! {: d* i) m8 N |