动态规划习题答案Word格式.docx
《动态规划习题答案Word格式.docx》由会员分享,可在线阅读,更多相关《动态规划习题答案Word格式.docx(17页珍藏版)》请在冰豆网上搜索。
S3
f3(S3)
X3*
第二步:
K=2f2(S2)=max{W2(X2)+f3(S3)}
X2∈D2(S2)
S3=S2-X2
W2(X2)+f3(S2-X2)
S2
X2=0
X2=1
X2=2
X2=3
f2(S2)
X2*
40+64
104
40+68
42+64
108
40+78
42+68
50+64
118
40+84
42+78
50+68
60+64
124
0,3
第三步:
K=1f1(S1)=max{W1(X1)+f2(S2)}
X1∈D1(S1)
S2=S1-X1
W1(X1)+f2(S1-X1)
S1
X1=0
X1=1
X1=2
X1=3
f1(S1)
X1*
41+118
48+108
60+104
164
S1=4→S2=1→S3=1
↓↓↓
X1*=3X2*=0X3*=1
A投资3百万,B不投资C投资1百万。
总收益164百万元。
3.(最优分配问题)有一个仪表公司打算向它的3个营业区设立6家销售店。
每个营业区至少设一家,所获利润如表。
问设立的6家销售店数应如何分配,可使总利润最大?
利润
wk(x)
营业区Ak
A1
A2
A3
销售
店数x
200
280
330
340
210
220
225
230
180
260
sk——对k#,…,3#营业区允许设立的销售店数
xk——对k#营业区设立的销售店数
wk(sk,xk)——对k#营业区设立xk销售店后的利润:
wk(sk,,xk)=wk(xk)
Tk(sk,xk)——sk+1=sk-xk
fk(sk)——当第k至第3个营业区允许设立的销售店数为sk时所能获得的最大利润
递归方程:
f4(s4)=0
fk(sk)=max{wk(xk)+fk+1(sk+1)},k=3,2,1
xk∈Dk(sk)
k=3时,有方程
f4(s4)=0
f3(s3)=max{w3(x3)+f4(s4)}
x3∈D3(s3)
s3=s2—x2
s3
f3(s3)
x3*
k=2,有方程
f2(s2)=max{w2(x2)+f3(s3)}
x2∈D2(s2)
s2
w2(x2)+f3(s2—x2)
f2(s2)
x2*
x2=1
x2=2
x2=3
x2=4
210+180
/
390
210+230
220+180
440
210+260
220+230
225+180
470
5
210+280
220+260
225+230
230+180
490
k=1,有方程
f1(s1)=max{w1(x1)+f2(s2)}
x1∈D1(s1)
s2=s1—x1
s1
w1(x1)+f2(s1—x1)
f1(s1)
x1*
x1=1
x1=2
x1=3
x1=4
6
200+490
280+470
330+440
340+390
770
s1=6→s2=3→s3=2
x1*=3x2*=1x3*=2
分别A1、A2、A3营业区设立3家、1家、2家销售店,最大利润为770
4.用动态规划方法求解下列模型:
maxf=10X1+4X2+5X3
s.t.3X1+5X2+4X3≤15
0≤X1≤20≤X2≤2X3≥0,Xj为整数j=1,2,3
收费C1=10C2=4C3=5
X1为货物1的装载件数
X2为货物2的装载件数
X3为货物3的装载件数
分3阶段
S1为货物1、2、3允许的装载重量(3X1+5X2+4X3的允许值)
S2为货物2、3允许装载的重量(5X2+4X3的允许值)
S3为货物3允许装载的重量(4X3的允许值)
第一步:
K=3
f4(S4)=0
f3(S3)=max{5X3+f4(S4)|X3∈D3(S3)}
S4=S3-4X3
0~3
4~7
8~11
12~15
D3(S3)
{0}
{0,1}
{0,1,2}
{0,1,2,3}
X3=0
X3=1
X3=2
X3=3
0+0
______
5+0
10+0
10
15+0
15
K=2
f2(S2)=max{4X2+f3(S3)|X2∈D2(S2)}
S3=S2-5X2
0~4
5~9
10~15
D2(S2)
划分点:
8
12
9
13
17
14
18
22
4X2+f3(S2-5X2)
X2*
X2=0
X2=1
X2=2
0+5
5~7
4+0
0+10
4+5
10~11
8+0
0+15
4+10
14~15
8+5
K=1
f1(S3)=max{10X1+f2(S2)|X1∈D1(S1)}
S2=S1-3X1
10X1+f2(S1-3X1)
X1*
10+15
20+10
30
顺序追踪:
最优策略为
S1=15→S2=9→S3=9
X1*=2X2*=0X3*=2
最优装载方案为:
货物1装2件;
货物2不装;
货物3装2件
装载收费为30元
5.用动态规划方法解下列0—1背包问题:
Maxf=12x1+12x2+9x3+16x4+30x5;
s.t.3x1+4x2+3x3+4x4+6x5≤12;
xj=0,1,j=1,……,5
本问题分为5个阶段。
令
sk——akxk+…+a4x4的允许值
xk——第k阶段xk取值,xk=0,1
wk(sk,xk)——xk产生的价值:
wk(sk,xk)=ckxk
Tk(sk,xk)——sk+1=sk-akxk
fk(sk)——在akxk+…+a4x4≤sk的条件下,ckxk+…+c4x4能取得的最大值。
fk(sk)=max{ckxk+fk+1(sk+1)},k=5,4,3,2,1
f6(s6)=0
递归方程为
x5∈D5(s5)
k=5f5(s5)=max{30x5}
s5
30x5
f5(s5)
x5*
x5=0
x5=1
0~5
——
6~12
s5=s4-4x4
x4∈D4(s4)
f4(s4)=max{16x4+f5(s5)}
k=4
s4
16x4+f5(s4-4x4)
f4(s4)
x4*
x4=0
x4=1
4~5
16+0
16
6~9
0+30
10~12
16+30
46
9x3+f4(s3-3x3)
x3=0
x3=1
0~2
——
9+0
0+16
0+30
7~8
9+16
9+30
39
0+46
s4=s3-3x3
f3(s3)=max{9x3+f4(s4)}
k=3
12x2+f3(s2-4x2)
x2=0
x2=1
0+0
0+9
0+16
12+0
7
12+9
12+16
0+39
12+30
11~12
s3=s2-4x2
f2(s2)=max{12x2+f3(s3)}
k=2
s2=s1-3x1s1=12
f1(s1)=max{12x1+f2(s2)}
k=1
12x1+f2(s1-3x1)
x1=0
0+46
12+39
51
s1=12s2=9s3=9s4=6s5=6
x1*=1x2*=0x3*=1x4*=0x5*=1
11.今设计一种由4个元件串联而成的部件,为提高部件的可靠性,每一元件可以由1个、2个或3个并联的单位元件组成。
关于元件K(K=1,2,3,4)配备j个并联单位元件(j=1,2,3)后的可靠性Rkj和成本Ckj由表给出,假设该部件的总成本允许为15个单位,试问如何确定各元件的单位元件配备数目,使系统的可靠性最高?
j
K=4
R1j
C1j
R2j
C2j
R3j
C3j
R4j
C4j
0.7
0.6
0.9
0.8
0.75
0.82
0.85
逆序解法。
Sk——仪表上配备k#,…,4#元件时允许使用的费用
Xk——K#元件所选用的单位元件
Wk(Sk,Xk)——K#元件采用单位元件时的可靠性,有
Wk(Sk,Xk)=Rkxk
Tk(Sk,Xk)——Sk+1=Sk-Ckxk
fk(Sk)——在费用限额为Sk的条件下,k#,…,3#元件串联时相应部分可获得的最大可靠性
递归方程f4(S5)=1
fk(Sk)=max{Wk(Sk,Xk)﹒fk+1(Sk+1)},K=4,3,2,1.
第一步,对K=4,
S4
R4x4
F4(S1)
X4*
X4=1
X4=2
—
第二步:
R3x3﹒f1(S3–C3x3)
f2(S2)
0.9×
0.72
0.738
第三步,对K=2,
R2x2﹒f3(S2–C2x2)
0.6×
0.432
0.8×
0.576
11
第四步,对K=4,f4(S4)=max{R4x4﹒f3(S3)}
S3=S4–C4x4,S4=15
R1x1﹒f2(S41–C1x1)
f1(S4)
X*1
X1=1X1=2X1=3
0.7×
0.5760.75×
0.5760.85×
S1=15→S3=10→S2=6→S1=3
↓↓↓↓
X1*=2X2*=2X3*=1X4*=1
元件1为2个,元件2为2个,元件3为1个,元件4为1个,可靠性为0.432。
顺序解法:
Sk——仪表上配备1#,…,K#元件时允许使用的费用
Tk(Sk,Xk)——Sk-1=Sk-Ckxk
fk(Sk)——在费用限额为Sk的条件下,1#,…,K#元件串联时相应部分可获得的最大可靠性
递归方程f0(S0)=1
fk(Sk)=max{Wk(Sk,Xk)﹒fk-1(Sk-1)},K=1,2,3,4
第一步,对K=1,f1(S1)=max{R1x1}
4<=S1<=7
S1={4,5,6,7}
D1(S1)
{1}
{1,2}
{1,2,3}
R1x1
f1(S1)
第二步,对K=2,f2(S2)=max{R2x2﹒f1(S1)}
S1=S2–C2x2
6<=S2<=9
S2={6,7,8,9}
D2(S2)
R2x2﹒f1(S2–C2x2)
0.42
0.45
0.56
第三步,对K=3,f3(S3)=max{R3x3﹒f2(S2)}
S2=S3–C3x3
9<=S2<=12
S2={9,10,11,12}
R3x3﹒f2(S3–C3x3)
f3(S3)
0.378
0.405
0.504
0.54
R4x4﹒f3(S4–C4x4)
f4(S4)
0.82×
S4=15→S3=12→S2=9→S1=5
X4*=1X3*=1X2*=2X1*=2