ImageVerifierCode 换一换
格式:DOCX , 页数:10 ,大小:50.99KB ,
资源ID:1216145      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-1216145.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(动态规划的技巧——阶段的划分和状态的表示.docx)为本站会员(cjc2202537)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

动态规划的技巧——阶段的划分和状态的表示.docx

1、动态规划的技巧阶段的划分和状态的表示在动态规划的设计过程中,阶段的划分和状态的表示是非常重要的两步,这两步会直接影响该问题的计算复杂性,有时候阶段划分或状态表示的不合理还会使得动态规划法不适用。例 9 街道问题在下图中找出从左下角到右上角的最短路径,每步只能向右方或上方走。这是一道简单而又典型的动态规划题,许多介绍动态规划的书与文章中都拿它来做例子。通常,书上的解答是这样的:按照图中的虚线来划分阶段,即阶段变量 k 表示走过的步数,而状态变量 xk表示当前处于这一阶段上的哪一点。这时的模型实际上已经转化成了一个特殊的多段图。用决策变量 uk=0 表示向右走,u k=1 表示向上走,则状态转移方

2、程如下:(这里的 row 是地图竖直方向的行数)我们看到,这个状态转移方程需要根据 k 的取值分两种情况讨论,显得非常麻烦。相应的,把它代入规划方程而付诸实现时,算法也很繁。因而我们在实现时,一般是不会这么做的,而代之以下面方法:(这里 Distance 表示相邻两点间的边长)这样做确实要比上面的方法简单多了,但是它已经破坏了动态规划的本来面目,而不存在明确的阶段特征了。如果说这种方法是以地图中的行(A、B、C、D)来划分阶段的话,那么它的“状态转移“就不全是在两个阶段之间进行的了。也许这没什么大不了的,因为实践比理论更有说服力。但是,如果我们把题目扩展一下:在地图中找出从左下角到右上角的两条

3、路径,两条路径中的任何一条边都不能重叠,并且要求两条路径的总长度最短。这时,再用这种“简单“的方法就不太好办了。如果非得套用这种方法的话,则最优指标函数就需要有四维的下标,并且难以处理两条路径“不能重叠“的问题。而我们回到原先“标准“的动态规划法,就会发现这个问题很好解决,只需要加一维状态变量就成了。即用 xk=(ak,bk)分别表示两条路径走到阶段 k 时所处的位置,相应的,决策变量也增加一维,用 uk=(xk,yk)分别表示两条路径的行走方向。状态转移时将两条路径分别考虑在写规划方程时,只要对两条路径走到同一个点的情况稍微处理一下,减少可选的决策个数:从这个例子可以看出,合理地划分阶段和选

4、择状态可以给解题带来方便。例 10 LITTLE SHOP OF FLOWERS (IOI99)PROBLEMYou want to arrange the window of your flower shop in a most pleasant way. You have F bunches of flowers, each being of a different kind, and at least as many vases ordered in a row. The vases are glued onto the shelf and are numbered consecutiv

5、ely 1 through V, where V is the number of vases, from left to right so that the vase 1 is the leftmost, and the vase V is the rightmost vase. The bunches are moveable and are uniquely identified by integers between 1 and F. These id-numbers have a significance: They determine the required order of a

6、ppearance of the flower bunches in the row of vases so that the bunch imust be in a vase to the left of the vase containing bunch j whenever i 以花束的编号来划分阶段。在这里,第 k 阶段布置第 k 束花,共有 F束花,有 F+1 个阶段,增加第 F+1 阶段是为了计算的方便;状态变量xk表示第 k 束花所在的花瓶。而对于每一个状态 xk,决策 uk就是第k+1 束花放置的花瓶号;最优指标函数 fk(xk)表示从第 k 束花到第 n 束花所得到的最大美学

7、值;A(i,j)是花束 i 插在花瓶 j 中的美学值,V 是花瓶总数,F 是花的总数。状态转移方程为 规划方程为边界条件为:,事实上这是一个虚拟的边界。最后要求的最大美学价值是方法 1 的规划方程中的允许决策空间:x k+1u kV-(F-k)+1 比较麻烦,因此有待改进。还是以花束的编号来划分阶段,第 k 阶段布置第 k 束花;状态变量 xk表示第 k 束花所在的花瓶;注意,这里我们考虑倒过来布置花瓶,即从第 F 束花开始布置到第 1 束花。于是状态变量 uk表示第 k-1 束花所在的花瓶;最优指标 fk(xk)表示从第一束花到第 k 束花所获得的美学价值;A(i,j)是花束 i 插在花瓶

8、j 中的美学值,V 是花瓶总数,F 是花的总数。则状态转移方程为:规划方程为:增加的虚拟边界条件为:最后要求的最大美学价值是:可以看出,这种方法实质上和方法 1 没有区别,但是允许决策空间的表示变得简单了。以花瓶的数目来划分阶段,第 k 个阶段决定花瓶 k 中是否放花;状态变量 xk表示前 k 个花瓶中放了多少花;而对于任意一个状态 xk,决策就是第 xk束花是否放在第 k 个花瓶中,用变量 uk=1 或 0 来表示。最优指标函数 fk(xk)表示前 k 个花瓶中插了 xk束花,所能取得的最大美学值。注意,这里仍然是倒过来考虑。状态转移方程为规划方程为边界条件为三种不同的方法都成功地解决了问题,只不过因为阶段的划分不同,状态的表示不同,决策的选择有多有少,所以算法的时间复杂度也就不同。这个例子具有很大的普遍性。有很多的多阶段决策问题都有着不止一种的阶段划分方法,因而往往就有不止一种的规划方法。有时各种方法所产生的效果是差不多的,但更多的时候,就像我们的例子一样,两种方法会在某个方面有些区别。所以,在用动态规划解题的时候,可以多想一想是否有其它的解法。对于不同的解法,要注意比较,好的算法好在哪里,差一点的算法差在哪里。从各种不同算法的比较中,我们可以更深刻地领会动态规划的构思技巧。

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报