2008年动态规划复习
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第八章动态规划
动态规划模型和求解方法
(1)阶段.
(2)状态.描述过程在第k阶段状态的变量,称为状态变量,用s k表示.s k取值的全体记作S k,称作第k阶段的状态集合.
状态的定义在动态规划中往往是最重要的概念.它必须具备3个特性:
①描述性.各阶段状态的演变能描述决策过程.
②无后效性.如果第k阶段的状态给定,则在这阶段以后过程的发展不受这阶段以前各个阶段状态的影响.也就是说,过程未来的发展,只与过程的现在状态有关,而与过程的过去状态无关.
③阶段状态变量的取值,直接或间接是可知的,也就是说,第k阶段的状态集合S k是给定的.
(3)决策.当第k阶段的状态s k给定后,从该状态演变为第k+1阶段状态时所作的选择称
为决策.
描述决策的变量称为决策变量,用x k(s k)表示,简记为x k.
x k(s k)取值的全体记为D k(s k),称为第k阶段的决策集合,s k取值不同,相应的决策集合也可能不同.
(4)策略.{ x1(s1),x2(s2)…,x N(s N)}称为策略.
(5)状态转移方程.第k+1阶段的状态s k+l 与第k阶段的状态s k、决策x k之间有函数关系s k+l =T k (s k,x k),
并称其为状态转移方程.
(6)权函数.在第k阶段,当状态取定s k、决策取定x k时,该阶段所实现的效益指标(例如距离、时耗、利润、成本等)称为权函数,
(7)指标函数.若第k阶段的状态为s k,当采用了最优子策略{ x*k,x*k+1,…,x*N}后,从阶段k到阶段N可获得的效益,称为指标函数,记为f k (s k).实现f k (s k) 值的x k记为x*k.
(8)递归方程.称下列方程为递归方程:
f N+1 (s N+1) =0或1,
f k(s k)=
)}
(
)
(
)
,
(
{
1
1
)
(
+
+
∈
⨯
+
k
k
k
k
k
S
D
x
s
f
x
s
w
opt
K
K
,
k=N,N一1, (1)
其中,符号opt视问题性质可取面min或max,同时,当符号⊙取加法运算时,取f N+1 (s N+1) =0;当符号⊙取乘法运算时,取f N+1 (s N+1) =1.由于用递归方程和状态转移方程求解动态规划的过程,是由第N阶段向前递归至第1阶段,故这种方法称为逆序解法.
综上所述,如果一个问题能用动态规划方法求解,那么,我们可以按下列步骤建立动态规划的数学模型:
①划分阶段,并正确地定义各阶段状态变量使之具有描述性、无后效性和可知性3个特性,同时确定状态集合;
②定义决策变量,确定决策集合:
③确定权函数;
④建立状态转移方程;
⑤确定指标函数;
⑥建立递归方程.
由状态转移方程和递归方程,用逆序解法对动态规划模型求解,在求得,f1(s1)和x*1后,则
按顺序追踪方法寻找最优策略。
例8-2(投资问题)现有资金5百万元,可对3个项目进行投资,投资额均为整数(单位为百万元).假设2#项目的投资不得超过3百万元,1#和3#项目的投资均不得超过4百万元,3#项目至少要投资1百万元.投资5年后每个项目预计可获得的收益由下表给出。问如何投资可获得最大的收益.
解:本问题是一个静态问题,但可以把它转化成动态问题:将这个投资问题分成3个阶段,在第k阶段要对项目k#进行投资决策.令
s k——对k#,…,3#项目允许的投资额;
x k——对k#项目的投资额;
w(s k,x k)——对k#项目投资x k后的收益:
w(s k,x k)= w k(x k);
T k (s k,x k)——s k+l= s k - x k;
f k (s k )——当第k 至第3项目允许的投资额为s k 时所能获得的最大收益.
为了获得最大收益,必须将5百万元资金全部用于投资.故假想有第4阶段存在时
必有s 4= 0.对于本问题,有下列递归方程:
{}4411
()()0
()max ()(),
3,2,1
k k k k k
k k k k x D s f s f s w x f s k ++∈=⎧⎪⎨=+=⎪⎩
第一步 K=3
第二步K=2
第三步K=1
s1=5 s2=4 s3=2 x1*=1 x2*=2 x3*=2 f1(5)=21
(最优分配问题)有一个仪表公司打算向它的3个营业区设立6家销售店。每个营业区至少设一家,所获利润如表。问设立的6家销售店数应如何分配,可使总利润最大?
解:s k——对k#,…,3#营业区允许设立的销售店数
x k——对k#营业区设立的销售店数
w k (s k,x k)——对k#营业区设立x k销售店后的利润:w k (s k,,x k)= w k (x k)
T k (s k, x k)——s k +1= s k - x k
f k(s k)——当第k至第3个营业区允许设立的销售店数为s k时所能获得的最大利润
递归方程:
f4(s4)=0
f k (s k)=max {w k (x k)+ f k+1(s k+1)}, k=3,2,1
x k↔D k(s k)
第一步:k=3时,有方程
f4 (s4)=0
f3(s3)= max {w3(x3)+ f4(s4) }
x3↔D3(s3)
s3=s2—x2