2022年动态规划√ .pdf

上传人:C****o 文档编号:40218324 上传时间:2022-09-08 格式:PDF 页数:12 大小:277.59KB
返回 下载 相关 举报
2022年动态规划√ .pdf_第1页
第1页 / 共12页
2022年动态规划√ .pdf_第2页
第2页 / 共12页
点击查看更多>>
资源描述

《2022年动态规划√ .pdf》由会员分享,可在线阅读,更多相关《2022年动态规划√ .pdf(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、-56-第四章动态规划1 引言1.1 动态规划的发展及研究内容动态规划(dynamic programming)是运筹学的一个分支,是求解决策过程(decision process)最优化的数学方法。20 世纪 50 年代初 R.E.Bellman 等人在研究多阶段决策过程(multistep decision process)的优化问题时,提出了著名的最优性原理(principle of optimality),把多阶段过程转化为一系列单阶段问题,逐个求解,创立了解决这类过程优化问题的新方法动态规划。1957 年出版了他的名著Dynamic Programming ,这是该领域的第一本著作。

2、动态规划问世以来,在经济管理、生产调度、工程技术和最优控制等方面得到了广泛的应用。例如最短路线、库存管理、资源分配、设备更新、排序、装载等问题,用动态规划方法比用其它方法求解更为方便。虽然动态规划主要用于求解以时间划分阶段的动态过程的优化问题,但是一些与时间无关的静态规划(如线性规划、非线性规划),只要人为地引进时间因素,把它视为多阶段决策过程,也可以用动态规划方法方便地求解。应指出,动态规划是求解某类问题的一种方法,是考察问题的一种途径,而不是一种特殊算法(如线性规划是一种算法)。因而,它不象线性规划那样有一个标准的数学表达式和明确定义的一组规则,而必须对具体问题进行具体分析处理。因此,在学

3、习时,除了要对基本概念和方法正确理解外,应以丰富的想象力去建立模型,用创造性的技巧去求解。例 1 最短路线问题图 1 是一个线路网,连线上的数字表示两点之间的距离(或费用)。试寻求一条由A到G距离最短(或费用最省)的路线。图 1 最短路线问题例 2 生产计划问题工厂生产某种产品,每单位(千件)的成本为1(千元),每次开工的固定成本为3(千元),工厂每季度的最大生产能力为6(千件)。经调查,市场对该产品的需求量第一、二、三、四季度分别为2,3,2,4(千件)。如果工厂在第一、二季度将全年的需求都生产出来,自然可以降低成本(少付固定成本费),但是对于第三、四季度才能上市的产品需付存储费,每季每千件

4、的存储费为0.5(千元)。还规定年初和年末这种产品均无库存。试制定一个生产计划,即安排每个季度的产量,使一年的总费用(生产成本和存储费)最少。1.2 决策过程的分类根据过程的时间变量是离散的还是连续的,分为离散时间决策过程(discrete-time 名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 12 页 -57-decision process)和连续时间决策过程(continuous-time decision process);根据过程的演变是确定的还是随机的,分为确定性决策过程(deterministic decision process)和随机性决策过程(stocha

5、stic decision process),其中应用最广的是确定性多阶段决策过程。2 基本概念、基本方程和计算方法2.1 动态规划的基本概念和基本方程一个多阶段决策过程最优化问题的动态规划模型通常包含以下要素。2.1.1 阶段阶段(step)是对整个过程的自然划分。通常根据时间顺序或空间顺序特征来划分阶段,以便按阶段的次序解优化问题。阶段变量一般用nk,2,1L=表示。在例 1 中由A出发为1=k,由)2,1(=iBi出发为2=k,依此下去从)2,1(=iFi出发为6=k,共6=n个阶段。在例2 中按照第一、二、三、四季度分为4,3,2,1=k,共四个阶段。2.1.2 状态状态(state)

6、表示每个阶段开始时过程所处的自然状况。它应能描述过程的特征并且无后效性,即当某阶段的状态变量给定时,这个阶段以后过程的演变与该阶段以前各阶段的状态无关。通常还要求状态是直接或间接可以观测的。描述状态的变量称状态变量(state variable)。变量允许取值的范围称允许状态集合(set of admissible states)。用kx表示第k阶段的状态变量,它可以是一个数或一个向量。用kX表示第k阶段的允许状态集合。在例1 中2x可取21,BB,或将iB定义为)2,1(=ii,则12=x或2,而2,12=X。n个阶段的决策过程有1+n个状态变量,1+nx表示nx演变的结果。在例 1 中7x

7、取G,或定义为1,即17=x。根据过程演变的具体情况,状态变量可以是离散的或连续的。为了计算的方便有时将连续变量离散化;为了分析的方便有时又将离散变量视为连续的。状态变量简称为状态。2.1.3 决策当一个阶段的状态确定后,可以作出各种选择从而演变到下一阶段的某个状态,这种选择手段称为决策(decision),在最优控制问题中也称为控制(control)。描述决策的变量称决策变量(decision variable),变量允许取值的范围称允许决策集合(set of admissible decisions)。用)(kkxu表示第k阶段处于状态kx时的决策变量,它是kx的函数,用)(kkxU表示k

8、x的允许决策集合。在例 1 中)(12Bu可取21,CC或3C,可记作3,2,1)1(2=u,而3,2,1)1(2=U。决策变量简称决策。2.1.4 策略决策组成的序列称为策略(policy)。由初始状态1x开始的全过程的策略记作)(11xpn,即)(,),(),()(221111nnnxuxuxuxpL=.由第k阶段的状态kx开始到终止状态的后部子过程的策略记作)(kknxp,即)(,),()(nnkkkknxuxuxpL=,1,2,1-=nkL.类似地,由第k到第j阶段的子过程的策略记作名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 12 页 -58-)(,),()(jjkk

9、kkjxuxuxpL=.可供选择的策略有一定的范围,称为允许策略集合(set of admissible policies),用)(),(),(11kkjkknnxPxPxP表示。2.1.5.状态转移方程在确定性过程中,一旦某阶段的状态和决策为已知,下阶段的状态便完全确定。用状态转移方程(equation of state transition)表示这种演变规律,写作.,2,1),(1nkuxTxkkkkL=+(1)在例 1 中状态转移方程为)(1kkkxux=+。2.1.6.指标函数和最优值函数指标函数(objective function)是衡量过程优劣的数量指标,它是定义在全过程和所有后

10、部子过程上的数量函数,用),(11,+nkkknkxxuxVL表示,nk,2,1L=。指标函数应具有可分离性,即nkV,可表为nkkkVux,1,+的函数,记为),(,(),(111,111,+=nkknkkkknkkknkxuxVuxxxuxVLL?并且函数k?对于变量nkV,1+是严格单调的。过程在第j阶段的阶段指标取决于状态jx和决策ju,用),(jjjuxv表示。指标函数由),2,1(njvjL=组成,常见的形式有:阶段指标之和,即=+=nkjjjjnkkknkuxvxxuxV),(),(11,L,阶段指标之积,即=+=nkjjjjnkkknkuxvxxuxV),(),(11,L,阶段

11、指标之极大(或极小),即),(min)max),(11,jjjnjknkkknkuxvxxuxV+=L.这些形式下第k到第j阶段子过程的指标函数为),(1,+jkkjkxuxVL。根据状态转移方程指标函数nkV,还可以表示为状态kx和策略knp的函数,即),(,knknkpxV。在kx给定时指标函数nkV,对knp的最优值称为最优值函数(optimal value function),记为)(kkxf,即),(opt)(,)(knknkxPpkkpxVxfkknkn=,其中opt可根据具体情况取max或min。2.1.7 最优策略和最优轨线使指标函数nkV,达到最优值的策略是从k开始的后部子过

12、程的最优策略,记作,*nkknuupL=。*1np是全过程的最优策略,简称最优策略(optimal policy)。从初始状 态)(*11xx=出 发,过 程 按 照*1np和 状 态 转 移 方 程 演 变 所 经 历 的 状 态 序 列,*1*2*1+nxxxL称最优轨线(optimal trajectory)。名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 12 页 -59-2.1.8 递归方程如下方程称为递归方程?=?=+1,),(),(opt)(10)(11)(11LnkxfuxvxfxfkkkkkxUukknnkkk或(2)在上述方程中,当?为加法时取0)(11=+n

13、nxf;当?为乘法时,取1)(11=+nnxf。动态规划递归方程是动态规划的最优性原理的基础,即:最优策略的子策略,构成最优子策略。用状态转移方程(1)和递归方程(2)求解动态规划的过程,是由1+=nk逆推至1=k,故这种解法称为逆序解法。当然,对某些动态规划问题,也可采用顺序解法。这时,状态转移方程和递归方程分别为:nkuxTxkkrkk,1),(1L=+,?=?=-+nkxfuxvxfxfkkkkkxUukkkrkk,1),(),(opt)(10(11)(11011L或)例 3 用 lingo 求解例 1 最短路线问题。model:Title Dynamic Programming;set

14、s:vertex/A,B1,B2,C1,C2,C3,C4,D1,D2,D3,E1,E2,E3,F1,F2,G/:L;road(vertex,vertex)/A B1,A B2,B1 C1,B1 C2,B1 c3,B2 C2,B2 C3,B2 C4,C1 D1,C1 D2,C2 D1,C2 D2,C3 D2,C3 D3,C4 D2,C4 D3,D1 E1,D1 E2,D2 E2,D2 E3,D3 E2,D3 E3,E1 F1,E1 F2,E2 F1,E2 F2,E3 F1,E3 F2,F1 G,F2 G/:D;endsets data:D=5 3 1 3 6 8 7 6 6 8 3 5 3 3

15、8 4 2 2 1 2 3 3 3 5 5 2 6 6 4 3;L=0,;enddata for(vertex(i)|i#GT#1:L(i)=min(road(j,i):L(j)+D(j,i);end 纵上所述,如果一个问题能用动态规划方法求解,那么,我们可以按下列步骤,首先建立起动态规划的数学模型:(i)将过程划分成恰当的阶段。(ii)正确选择状态变量kx,使它既能描述过程的状态,又满足无后效性,同时确定允许状态集合kX。(iii)选择决策变量ku,确定允许决策集合)(kkxU。(iv)写出状态转移方程。(v)确定阶段指标),(kkkuxv及指标函数knV的形式(阶段指标之和,阶段指标之积,

16、阶段指标之极大或极小等)。(vi)写出基本方程即最优值函数满足的递归方程,以及端点条件。3 逆序解法的计算框图名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 12 页 -60-以自由终端、固定始端、指标函数取和的形式的逆序解法为例给出计算框图,其它情况容易在这个基础上修改得到。一般化的自由终端条件为1,1,11,2,1),()(+=nininnnixxfL?(3)其中?为已知。固定始端条件可表示为*111xxX=。如果状态kx和决策ku是连续变量,用数值方法求解时需按照精度要求进行离散化。设状态kx的允许集合为nkninixXkkkik,2,1,2,1,2,1|LLL=.决策)(

17、kikixu的允许集合为nkninjuUkkijkiki,2,1,2,1,2,1|)(LLL=.状态转移方程和阶段指标应对kx的每个取值kix和kiu的每个取值)(jkiu计算,即),()(jkikikkuxTT=,),()(jkikikuxvv=。最优值函数应对kx的每个取值kix计算。基本方程可以表为.1,2,2,1,2,1),(opt)(),(),()()()(1)()(LLLnkninjxfxfuxTfuxvxfkkikijkjkikjkikikkjkikikkijk=+=+(4)图 2 解法框图名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 12 页 -61-按照(3)

18、,(4)逆向计算出)(*11xf,为全过程的最优值。记状态kix的最优决策为)(*kikixu,由*1x和)(*kikixu按照状态转移方程计算出最优状态,记作*kx。并得到相应的最优决策,记作)(*kkxu。于是最优策略为)(,),(),(*2*2*1*1nnxuxuxuL。算法程序的框图如图2 所示。图的左边部分是函数序列的递推计算,可输出全过程最优值)(*11xf,如果需要还可以输出后部子过程最优值函数序列)(kikxf和最优决策序列)(*kikxu。计算过程中存)(kikxf是备计算1-kf之用,在1-kf算完后可用1-kf将kf替换掉;存)(*kikxu是备右边部分读)(*kkxu之

19、用。图 的 右 边 部 分 是 最 优 状 态 和 最 优 决 策 序 列 的 正 向 计 算,可 输 出 最 优 策 略)(,),(),(*2*2*1*1nnxuxuxuL和最优轨线,*2*1nxxxL。4 动态规划与静态规划的关系动态规划与静态规划(线性和非线性规划等)研究的对象本质上都是在若干约束条件下的函数极值问题。两种规划在很多情况下原则上可以相互转换。动态规划可以看作求决策nuuu,21L使指标函数),(2111nnuuuxVL,达到最优(最大或最小)的极值问题,状态转移方程、端点条件以及允许状态集、允许决策集等是约束条件,原则上可以用非线性规划方法求解。一些静态规划只要适当引入阶

20、段变量、状态、决策等就可以用动态规划方法求解。下面用例子说明。例 4 用动态规划解下列非线性规划=nkkkug1)(max;s.t.=nkkkuau10,.其中)(kkug为任意的已知函数。解按变量ku的序号划分阶段,看作n段决策过程。设状态为121,+nxxxL,取问题中的变量nuuu,21L为决策。状态转移方程为.,2,1,11nkuxxaxkkkL=-=+取)(kkug为阶段指标,最优值函数的基本方程为(注意到01=+nx))()(max)(110+=kkkkxukkxfxgxfkk;1,2,1,0L-=nnkaxk;0)0(1=+nf.按照逆序解法求出对应于kx每个取值的最优决策)(*

21、kkxu,计算至)(1af后即可利用状态转移方程得到最优状态序列*kx和最优决策序列)(*kkxu。与静态规划相比,动态规划的优越性在于:(i)能够得到全局最优解。由于约束条件确定的约束集合往往很复杂,即使指标函数较简单,用非线性规划方法也很难求出全局最优解。而动态规划方法把全过程化为名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 12 页 -62-一系列结构相似的子问题,每个子问题的变量个数大大减少,约束集合也简单得多,易于得到全局最优解。特别是对于约束集合、状态转移和指标函数不能用分析形式给出的优化问题,可以对每个子过程用枚举法求解,而约束条件越多,决策的搜索范围越小,求解也

22、越容易。对于这类问题,动态规划通常是求全局最优解的唯一方法。(ii)可以得到一族最优解。与非线性规划只能得到全过程的一个最优解不同,动态规划得到的是全过程及所有后部子过程的各个状态的一族最优解。有些实际问题需要这样的解族,即使不需要,它们在分析最优策略和最优值对于状态的稳定性时也是很有用的。当最优策略由于某些原因不能实现时,这样的解族可以用来寻找次优策略。(iii)能够利用经验提高求解效率。如果实际问题本身就是动态的,由于动态规划方法反映了过程逐段演变的前后联系和动态特征,在计算中可以利用实际知识和经验提高求解效率。如在策略迭代法中,实际经验能够帮助选择较好的初始策略,提高收敛速度。动态规划的

23、主要缺点是:(i)没有统一的标准模型,也没有构造模型的通用方法,甚至还没有判断一个问题能否构造动态规划模型的准则。这样就只能对每类问题进行具体分析,构造具体的模型。对于较复杂的问题在选择状态、决策、确定状态转移规律等方面需要丰富的想象力和灵活的技巧性,这就带来了应用上的局限性。(ii)用数值方法求解时存在维数灾(curse of dimensionality)。若一维状态变量有m个取值,那么对于n维问题,状态kx就有nm个值,对于每个状态值都要计算、存储函数)(kkxf,对于n稍大的实际问题的计算往往是不现实的。目前还没有克服维数灾的有效的一般方法。5 若干典型问题的动态规划模型5.1 最短路

24、线问题对于例 1 一类最短路线问题(shortest Path Problem),阶段按过程的演变划分,状态由各段的初始位置确定,决策为从各个状态出发的走向,即有)(1kkkxux=+,阶段指标为相邻两段状态间的距离)(,(kkkkxuxd,指标函数为阶段指标之和,最优值函数)(kkxf是由kx出发到终点的最短距离(或最小费用),基本方程为;1,),()(,(min)(11)(Lnkxfxuxdxfkkkkkkxukkkk=+=+.0)(11=+nnxf利用这个模型可以算出例l 的最短路线为GFEDCAB22121,相应的最短距离为18。5.2 生产计划问题对于例2 一类生产计划问题(Prod

25、uction planning problem),阶段按计划时间自然划分,状态定义为每阶段开始时的储存量kx,决策为每个阶段的产量ku,记每个阶段的需求量(已知量)为kd,则状态转移方程为.,2,1,0,1nkxduxxkkkkkL=-+=+(5)设每阶段开工的固定成本费为a,生产单位数量产品的成本费为b,每阶段单位数量产品的储存费为c,阶段指标为阶段的生产成本和储存费之和,即?+=00,),(kkkkkkubuacxuxv(6)名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 12 页 -63-指标函数knV为kv之和。最优值函数)(kkxf为从第k段的状态kx出发到过程终结的最

26、小费用,满足.1,),(),(min)(11LnkxfuxvxfkkkkkUukkkk=+=+其中允许决策集合kU由每阶段的最大生产能力决定。若设过程终结时允许存储量为01+nx,则终端条件是.0)(011=+nnxf(7)(5)(7)构成该问题的动态规划模型。5.3 资源分配问题一种或几种资源(包括资金)分配给若干用户,或投资于几家企业,以获得最大的效益。资源分配问题(resource allocating Problem)可以是多阶段决策过程,也可以是静态规划问题,都能构造动态规划模型求解。下面举例说明。例 5 机器可以在高、低两种负荷下生产。u台机器在高负荷下的年产量是)(ug,在 低

27、负 荷 下 的 年 产 量 是)(uh,高、低 负 荷 下 机 器 的 年 损 耗 率 分 别 是1a和1b(1011),即高、低负荷下每台机器的年产量分别为和,结果将有什么特点。解年度为阶段变量nk,2,1L=。状态kx为第k年初完好的机器数,决策ku为第k年投入高负荷运行的台数。当kx或ku不是整数时,将小数部分理解为一年中正常工作时间或投入高负荷运行时间的比例。机器在高、低负荷下的年完好率分别记为a和b,则11aa-=,11bb-=,有ba=+3,2,10)0(321iuccuuui解:按问题的变量个数划分阶段,把它看作为一个三阶段决策问题。设状态变量为4321,xxxx,并记cx=1;

28、取问题中的变量321,uuu为决策变量;各阶段指标函数按乘积方式结合。令最优值函数)(kkxf表示第k阶段的初始状态为kx,从k阶段到 3阶段所得到的最大值。设33ux=,223xux=+,cxux=+112则有33xu=,220 xu,110 xu 用逆推解法,从后向前依次有3333max)(33xuxfxu=及最优解3*3xu=),(max)(max)(max)(2220222203322022222222xuhuxuxfuxfxuxuxu=-=由032222222=-=uxududh,得2232xu=和02=u(舍去)又22222262uxduhd-=,而02232222222-=xdu

29、hdxu,故2232xu=为极大值点。所以3222274)(xxf=及最优解2*232xu=。)(274max)(max)(311102210111111uxuxfuxfxuxu-=同样利用微分法易知4111641)(xxf=,最优解1*141xu=。由于1x已知,因而按计算的顺序反推算,可得各阶段的最优决策和最优值。即cu41*1=,411641)(cxf=由cccuxx4341*112=-=-=名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 12 页 -66-所以cxu21322*2=,322161)(cxf=由cccuxx412143*223=-=-=所以cu41*3=,

30、cxf41)(33=因此得到最优解为:cu41*1=,cu21*2=,cu41*3=;最大值为:41641)(maxccfz=。习 题 四1.用 Matlab 编程求例 6 的解。2.有四个工人,要指派他们分别完成4 项工作,每人做各项工作所消耗的时间如表 1 所示。表 1 工作工人ABCD甲15 18 21 24 乙19 23 22 18 丙26 17 16 19 丁19212317问指派哪个人去完成哪项工作,可使总的消耗时间为最小?试对此问题用动态规划方法求解。3.为保证某一设备的正常运转,需备有三种不同的零件321,EEE。若增加备用零件的数量,可提高设备正常运转的可靠性,但增加了费用,

31、而投资额仅为8000 元。已知备用零件数与它的可靠性和费用的关系如表2 所示。表 2 增加的可靠性设备的费用(千元)备件数1E2E3E1E2E3E1 2 3 0.3 0.4 0.5 0.2 0.5 0.9 0.1 0.2 0.7 1 2 3 3 5 6 2 3 4 现要求在既不超出投资额的限制,又能尽量提高设备运转的可靠性的条件下,问各种零件的备件数量应是多少为好?4.某工厂购进100 台机器,准备生产I、II 两种产品,若生产产品I,每台机器每年可收入45 万元,损坏率为65;若生产产品II,每台机器每年收入为35 万元,损坏率为35,估计三年后将有新型机器出现,旧的机器将全部淘汰。试问每年

32、应如何名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 12 页 -67-安排生产,使在三年内收入最多?53 名商人各带1 名随从乘船渡河,一只小船只能容纳2 人,由他们自己划行。随从们密约,在河的任一岸,一旦随从人数比商人多,就杀商人。此密约被商人知道,如何乘船渡河的大权掌握在商人们手中,商人们怎样安排每次乘船方案,才能安全渡河呢?6某一印刷厂有六项加工任务,对印刷车间和装订车间所需时间(单位:天)如表 3 所示,试求最优的加工顺序和总加工天数。表 3 任务车间1 2 3 4 5 6 印刷车间装订车间3 8 10 12 5 9 2 6 9 5 11 2 名师资料总结-精品资料欢迎下载-名师精心整理-第 12 页,共 12 页 -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁