动态规划例1求解下列整数规划的最优解.docx
- 文档编号:7879511
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:26
- 大小:81.28KB
动态规划例1求解下列整数规划的最优解.docx
《动态规划例1求解下列整数规划的最优解.docx》由会员分享,可在线阅读,更多相关《动态规划例1求解下列整数规划的最优解.docx(26页珍藏版)》请在冰豆网上搜索。
动态规划例1求解下列整数规划的最优解
例1求解卜列整数规划的最优解:
maxZ4x15x26x3
3xi4X25x3<10c4-
S.t
Xj>0j1,2,3,Xj为整效
解
(1)建立动态规划模型:
阶段变量:
将给每一个变量Xj赋值看成一个阶段,划分为3个阶段,且阶段变量k=1,2,3.
设状态变量Sk表示从第k阶段到第3阶段约束右端最大值,则Sj10.
设决策变量Xk表示第k阶段赋给变量Xk的值(k1,2,3).
状态转移方程:
S2&3X1,S3S24X2.
阶段指标:
u1(S!
X1)4x1,u2(s2,x2)5x2,u3(s3,x3)6x3.
基本方程;
其中a〔3,a24,a35.
(1)用逆序法求解:
当k3时,
f3S3max6x3f4s4max6x3
s3S3
0玄X—0玄X3玄一
55
x30;当&5,6,7,8,9时,x3可取0或1;当S310时,x3可取0,1,2,由此确定f3S3
现将有关数据列入表4.1中表4.1中.
L
6X3fqS)
f3(S3)
*
X3
0
1
2
0
0
0
0
1
0
0
0
2
0
0
0
3
0
0
0
4
0
0
0
5
0
6
6
1
6
0
6
6
1
7
0
6
6
1
8
0
6
6
1
9
0
6
6
1
10
0
6
12
12
2
当k2时,有
而S20,1,2,3,4,5,6,7,8,9,10。
所以当S20,1,2,3时,x?
0;当s4,5,6,7时,
x20或1;当S28,9,10时x20,1,2。
由此确定f2S2。
现将有关数据列入表4.2中.
表4.2
X
S2
5x2f3(S24x2)
f3(S3)
*
x3
S3
0
1
2
0
0+0
0
0
0
1
0+0
0
0
1
2
0+0
0
0
2
3
0+0
0
0
3
4
0+0
5+0
5
1
0
5
0+6
5+0
6
0
5
6
0+6
5+0
6
0
6
7
0+6
5+0
6
0
7
8
0+6
5+0
10+0
10
2
0
9
0+6
5+6
10+0
11
1
5
10
0+12
5+6
10+0
12
0
10
当k1时,有
而§10,故x1只能取0,1,2,3,由此确定f1§。
现将有关数据列入表4.3中。
表4.3
4x1f2s3x1
f1Si
*
*
S2
\0
1
2
3
10
0+12
4+6
8+5
12+0
13
2
4
按计算顺序反推,由表4.3可知,当
x12时,f1(S1)取得最大值13.又由s24查表4.2得x21,及
S30,再由表4.1查得x30因此,最优解为
x32,x31,x30,最优解maxZ13.
例5用动态规划方法解下列非线性规划问题
2
maxzx1x2x3x1x2x3cxi0i1,2,3
解:
解决这一类静态规划问题,需要人为地赋予时间概念,从而将该问题
转化为多阶段决策过程。
按问题的变量个数划分阶段,把它看作一个三阶段决策问题,k=1,2,3
设状态变量为S1,&,S3,S4并记S1 取问题中的变量x1,x2,x3为决策变量 状态转移方程为: S3=x3S3+x2=S2S2+x1=S1 允许决策集合为: x3=S30 各阶段指标函数为: V1(x1)=x1V2(x2)=x2V3(x3)=x3,各指标函 fk(Sk) 数以乘积方式结合,最优指标函数fk(Sk)表示从第k阶段初始状态Sk出发到第3阶段所得到的最大值,则动态规划基本方程为: xjmaxjvkg)fkg1)]k,2,,1 f4(S4)1 用逆序解法由后向前依次求解: k=3时, f3(S3)盎"3*f4(S4)] max(x3) ^3S3 S3 * x3=S3 k=2时, 2、「2 f2(S2)maxJv2(x2)f3(S3)]max(x2S3)max[x2(S2x? )] xD2(S2)0x2S20x2S2 所以x22S2是极大值点 3 f2(S2) N、2,243 (S2)(S2巳)草S2 3327 *2 X2S2 3 k=1时, fi(Si) maX[vi(Xi)f2(S2)]maX(x1 XDi(S)0XiS —s2)maX[Xi 270Xis "27(SiXi)3] 人…、4、3 令hi(S,,Xi)Xi——(SiXi) 27 dhidX 43 万(SXi) i2,、2_、 为护耳xi)(i) 解得: Xi d2hi dX2 〔2,—(§ 27 Xi)2( 1) i2‘、2 27(SiXi) 24, —Xi(§ 27 Xi) 24/ ——(Si 27 Xi)(2xi&) d2' dX2 Xi -9S20 27 一.i 所以Xi4Si是极大值点 i3i4 Si)Si 464 i4 fi(s)S—(s 427 由丁Si未知,所以对s再求极值, * Xi i ;Si …、,i4、 maXf-i(s〔)maX(—s) 0sc0Sic64 显然Si=c时,fi(si)取得最大值 fi(Si) i——c64 * 1 1 i4 Si=c Xi si -c fi(S) 一c 4 4 64 * 3 * 2 1 43 i3 S2S-I Xi -c X2 匚S2 -c f2(S2) cS2 一c 4 3 2 27 i6 * 1 * 1 1 S3S2 X2 _c X3 S3 _c f3(S3) S3 c 4 4 4 反向追踪得各阶段最优决策及最优值: * * 4 所以最优解为: * Xi i C,X24 i一c 64 1*i —c,X3c,z 24 例6用动态规划方法解下列非线性规划问题 maXz 2 Xi X2 3 X3 Xi X2 X3 6 Xj 0 j i,2,3 解: 按变量个数将原问题分为三个阶段,阶段变量k=1,2,3; 选择Xk为决策变量; 状态变量Sk表示第k阶段至第3阶段决策变量之和; 取小区间长度△=〔,小区间数目m=6/1=6,状态变量Sk的取值点为: Sk0,1,2,3,4,5,6k2 Si6 状态转移方程: Sk+1=$—Xk; 允许决策集合: Dk(Sk)={Xk|0 X<,Sk均在分割点上取值; 阶段指标函数分别为: g〔(X1)=X12g2(X2)=X2g3(X3)=X33, 最优指标函数fk(sQ表小从第k阶段状态$出发到第3阶段所得到的最大值,动态规划的基本方程为: fk(Sk)maX[gk(Xk)fk1(Sk1)]k3,2,1 0XkSk f4(S4)1 k=3时, f3(s3)丁弩(©s3 S3及X3取值点较多,计算结果以表格形式给出,见表6.1-6.3所示。 表6.1计算结果 S3\ X3 f3(S3) * X3 0 1 2 3 4 5 6 0 0 0 0 1 1 1 1 2 8 8 2 3 27 27 3 4 64 64 4 5 125 125 5 6 216 216 6 表6.2计算结果 0 0 0 0 1 0 1X0 0 0,1 2 0 1X1 2X0 1 1 3 0 1X8 2X1 3X0 8 1 4 0 1X27 2X8 3X1 4X0 27 1 5 0 1X64 2X27 3X8 4X1 5X0 64 1 6 0 1乂125 2X64 3X27 4X8 5X1 6X0 128 2 表6.3计算结果 Xi 2「,一、 f2(Si—Xi) fi(Si) * Xi S\ 0 1 2 3 4 5 6 6 0 1X64 4X27 9x8 16xi 25X0 36X0 108 2 由表6.3知,xi=2,si=6,贝US2=si-xi=6—2=4,查表6.2得: X2=1,则 S3=S2—X2=4—1=3,查表6.1得: X3=3,所以最优解为: Xi=2,X2=1,X3=3,fi(Si)=108。 上面讨论的问题仅有一个约束条件。 对具有多个约束条件的问题,同样可以 用动态规划方法求解,但这时是一个多维动态规划问题,解法上比较繁琐一些。 例7某公司打算在3个不同的地区设置4个销售点,根据市场部门估计, 在不同地区设置不同数量的销售点每月可得到的利润如表6.4所示。 试问在各地区如何设置销售点可使每月总利润最大。 表6.4利润值 地区 销售点 0 1 2 3 4 1 0 16 25 30 32 2 0 12 17 21 22 3 0 10 14 16 17 解: 如前所述,建立动态规划数学模型: 将问题分为3个阶段,k=1,2,3; 决策变量Xk表示分配给第k个地区的销售点数; 状态变量为$表示分配给第k个至第3个地区的销售点总数; 状态转移方程: Sk+1=&—Xk,其中Si=4; 允许决策集合: Dk(Sk)={Xk|0 阶段指标函数: gk(Xk)表示Xk个销售点分配给第k个地区所获得的利润; 最优指标函数fk(Sk)表示将数量为■的销售点分配给第k个至第3个地区 所得到的最大利润,动态规划基本方程为: fk(Sk)max[gk(xk)fk1(skxk)]k3,2,1 0XkSk f4(S4)0 数值计算如表所示。 表6.5k=3时计算结果 S3\ g3O) f3⑶ * x3 0 1 2 3 4 0 0 0 0 1 10 10 1 2 14 14 2 3 16 16 3 4 17 17 4 表6.6k=2时计算结果 X? S2X g2(x2)+f3(S2—x2) f2(&) * x2 0 1 2 3 4 0 0 0 0 1 0+10 12+0 12 1 2 0+14 12+10 17+0 22 1 3 0+16 12+14 17+10 21+0 27 2 4 0+17 12+16 17+14 21+10 22+0 31 2,3 表6.7k=1时计算结果 g1(x)+f2(S1—xi) * xi s\ 0 1 2 3 4 4 0+31 16+27 25+22 30+12 32+0 47 2 所以最优解为: xi=2,x2=1,x3=1,f〔(4)=47,即在第1个地区设置2个销售点,第2个地区设置1个销售点,第3个地区设置1个销售点,每月可获利润47。 例9(生广一库存I可题) 某工厂要对一种产品制定今后四个时期的生产计划,据估计在今后四个时期内,市场对该产品的需求量分别为2,3,2,4单位,假设每批产品固定成本为 3千元,若不生产为0,每单位产品成本为1千元,每个时期最大生产能力不超过6个单位,每期期末未出售产品,每单位需付存贮费0.5千元,假定第1期初 和第4期末库存量均为0,问该厂如何安排生产与库存,可在满足市场需求的前提下总成本最小。 解: 以每个时期作为一个阶段,该问题分为4个阶段,k=1,2,3,4; 决策变量xk表小第k阶段生产的产品数; 状态变量sk表示第k阶段初的库存量; 以dk表示第k阶段的需求,则状态转移方程: sk+i=$+xk—dk;k=4,3,2,1由丁期初及期末库存为0,所以Sl=0,S5=0; 允许决策集合Dk(Sk)的确定: 当s<>dk时,xk可以为0,当$ 量,djSk,所以为的上限为min(djSk,6),故有: 4 Dk(s<)={xk|max(0,dk—s<) 阶段指标函数rk(s%xk)表示第k期的生产费用与存贮费用之和: 最优指标函数fk(Sk)表小第k期库存为Sk到第4期末的生广与存贮最低费用,动态规划基本方程为: fk(Sk)min、[「k(Sk,xk)fk1(Sk1)]k4,3,2,1 xkDk(sk) f5(S5)0 先求出各状态允许状态集合及允许决策集合,如表6.8所示。 表6.8状态允许状态集合及允许决策集合 S1 0 D1(S 1) {2,3,4,5,6 } S2 0 1 2 3 4 D2(s 2) {3,4,5,6} {2,3,4,5,6 } {123,4,5, 6} {0,1,2,3,4,5, 6} {0,123,4, 5} S3 0 1 2 3 4 5 6 D3(S 3) {2,3,4,5,6 } {123,4,5 } {0,1,2,3,4} {0,1,2,3} {0,1,2} {0,1 } {0} S4 0 1 2 3 4 D4(s {4} {3} {2} {1} {0} 由基本方程计算各阶段策略,结果如下表所示。 表6.9k=4时计算结果 S4 x4 0.5& 3x4 X40.5s4x4 0 0 S5 f5(S5) f4(S) — 0 4 7 0 0 7 1 * 3 6.5 0 0 * 6.5 2 * 2 6 0 0 * 6 3 * 1 5.5 0 0 * 5.5 4 * 0 2 0 0 * 2 表6.10k=3时计算结果 0.5S3X30 S3 X3 「3(&飞3)八clc S4=$+乂3—2 f4(S4) f3(S3) 3x30.5S3x30 2 5 0 7 12 3 6 1 6.5 12.5 0 4 7 2 6 13 5 8 3 5.5 13.5 * 6 9 4 2 * 11 1 4.5 0 7 11.5 2 5.5 1 6.5 12 1 3 6.5 2 6 12.5 4 7.5 3 5.5 13 * 5 8.5 4 2 * 10.5 * 0 1 0 7 * 8 1 5 1 6.5 11.5 2 2 6 2 6 12 3 7 3 5.5 12.5 4 8 4 2 10 —*— 0 1.5 1 6.5 —*— 8 Q 1 5.5 2 6 11.5 3 2 6.5 3 5.5 12 3 7.5 4 2 9.5 * 0 2 2 6 8* 4 1 6 3 5.5 11.5 2 7 4 2 9 * 0 2.5 3 5.5 * 8 5 1 6.5 4 2 8.5 6 * 0 3 4 2 * 5 表6.11k=2时计算结果 0.5S2x20 S2 X2 「2(3飞2)小clc S3=S2+x2-3 f3(&) f2(&) 3x20.5s2x20 3 6 0 11 17 4 7 1 10.5 17.5 0 * * 5 8 2 8 16 6 9 3 8 17 2 5.5 0 11 16.5 3 6.5 1 10.5 17 1 * 4 7.5 2 8 * 15.5 5 8.5 3 8 16.5 6 9.5 4 8 17.5 1 5 0 11 16 2 6 1 10.5 16.5 * 3 7 2 8 * 15 2 4 8 3 8 16 5 9 4 8 17 6 10 5 8 18 * 0 1.5 0 11 * 12.5 1 5.5 1 10.5 16 2 6.5 2 8 14.5 3 3 7.5 3 8 15.5 4 8.5 4 8 16.5 5 9.5 5 8 17.5 6 10.5 6 5 15.5 * 0 2 1 10.5 * 12.5 1 6 2 8 14 2 7 3 8 15 4 3 8 4 8 16 4 9 5 8 17 5 10 6 5 15 表6.12k=1时计算结果 S1 X1 0.5§X10 「1(§,X1)CCLC 3X10.5s1X10 S2=X-2 f2(S2) f1(S1) 0 2 3 4 * 5 6 5 6 7 8 9 0 1 2 3 4 16 15.5 15 12.5 12.5 21 21.5 22 * 20.5 21.5 逆向追踪可得: xi=5,S2=3,X2=0,S3=0,X3=6,S4=4,X4=0,即第1时期生产5个单位,第3时期生产6个单位,第2,4时期不生产,可使总费用最小,最小费用为20.5千元。 例10(库存一销售问题) 设某公司计划在1至4月份从事某种商品经营。 已知仓库最多可存储600 件这种商品,已知1月初存货200件,根据预测知1至4月份各月的单位购货成本及销售价格如表6.13所示,每月只能销售本月初的库存,当月进货供以后各月销售,问如何安排进货量和销售量,使该公司四个月获得利润最大(假设四月底库存为零)。 表6.13单位购货成本及销售价格 月份 购货成本C 销售价格P 1 40 45 2 38 42 3 40 39 4 42 44 解: 按月份划分阶段,k=1,2,3,4; 状态变量Sk表示第k月初的库存量,S1=200,S5=0; 决策变量: Xk表小第k月售出的货物数量,yk表小第k月购进的货物数量; 状态转移方程: Sk+1=S<+yk—Xk; 允许决策集合: 0VXk 阶段指标函数为: pkXk—o 最优指标函数fk(Sk)表小第k月初库存为$时从第k月至第4月末的最大 利润,则动态规划基本方程为: fk(Sk)maX[PkXkCkykfk〔(庄1)]k4,3,2,1 0XkSk0yk600(SkX<) f5(S5)0 k=4时, **- X4=S4y4=0 f4(S4)maX(44x442y4)44s4 0X4S40y4600(S4X4) k=3时, 为求出使44S3—5x3+4y3最大的X3,ya,须求解线性规划问题: maxz44ss5x34y3 X3& X3V3600S3 X3,y30 只有两个变重X3,y3,可用图解法也可用单纯形法求解,取得取优解,X3=0, * y3=600—S3,f3(S3)=40S3+2400 k=2时, f2(s2)maX[42x238y2f3(s3
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 动态 规划 求解 下列 整数 最优
![提示](https://static.bdocx.com/images/bang_tan.gif)