动态规划教案.doc

  1. 1、本文档共130页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:400-050-0739(电话支持时间:9:00-19:00)。
PAGE 15 TOC \h \z \t "章标题,1,节标题,2,集训作业标题,1" 动态规划基本原理 1 机器分配(HNOI’95) 3 最长不下降序列(HNOI’97) 4 凸多边形三角划分(HNOI’97) 6 系统可靠性(HNOI’98) 8 快餐问题(HNOI’99) 9 求函数最大值(CTSC'95) 14 石子合并(NOI’95) 15 游览街区(NOI’97) 17 积木游戏(NOI’97) 20 免费馅饼(NOI’98) 24 棋盘分割(NOI’99) 27 钉子和小球(NOI’99) 30 Subset(NOI’99) 33 陨石的秘密(NOI’2001) 38 商店购物(IOI’95) 42 最长前缀(IOI’96) 48 多边形(IOI’98) 52 花店橱窗布置(IOI’99) 56 选课(CTSC’98) 59 拯救大兵瑞恩(CTSC’99) 63 补丁VS错误(CSTS’99) 69 迷宫改造(WC’99) 72 奶牛浴场(WC’2002) 80 HPC (WC’2001) 85 交叉匹配 (WC’2001 练习题) 90 Codes (IOI‘99) 93 快乐的蜜月 (CTSC 2000) 102 Integer (HNOI 2000) 108 Bar 110 序关系计数问题 (福建试题) 113 Chain 116 Land (IOI’99) 119 理想收入 125 动态规划基本原理 近年来,涉及动态规划的各种竞赛题越来越多,每一年的NOI几乎都至少有一道题目需要用动态规划的方法来解决;而竞赛对选手运用动态规划知识的要求也越来越高,已经不再停留于简单的递推和建模上了。 要了解动态规划的概念,首先要知道什么是多阶段决策问题。 一、多阶段决策问题 如果一类活动过程可以分为若干个互相联系的阶段,在每一个阶段都需作出决策(采取措施),一个阶段的决策确定以后,常常影响到下一个阶段的决策,从而就完全确定了一个过程的活动路线,则称它为多阶段决策问题。 各个阶段的决策构成一个决策序列,称为一个策略。每一个阶段都有若干个决策可供选择,因而就有许多策略供我们选取,对应于一个策略可以确定活动的效果,这个效果可以用数量来确定。策略不同,效果也不同,多阶段决策问题,就是要在可以选择的那些策略中间,选取一个最优策略,使在预定的标准下达到最好的效果. 图4-1 带权有向多段图让我们先来看下面的例子:如图所示的是一个带权有向的多段图,要求从A到D的最短路径的长度(下面简称最短距离)。 图4-1 带权有向多段图 我们可以搜索,枚举图中的每条路径,但当图的规模大起来时,搜索的效率显然不可能尽人意。让我们来试用动态规划的思路分析这道题:从图中可以看到,A点要到达D点必然要经过B1和B2中的一个,所以A到D的最短距离必然等于B1到D的最短距离加上5,或是B2到D的最短距离加上2。同样的,B1到D的最短距离必然等于C1到D的最短距离加上3或是C2到D的最短距离加上2,……。 我们设G[i]为点i到点D的距离,显然G[C1]=4,G[C2]=3,G[C3]=5,根据上面的分析,有: G[B1]=min{G[C1]+3,G[C2]+2}=5, G[B2]=min{G[C2]+7,G[C3]+4}=9, 再就有G[A]=min{G[B1]+5,G[B2]+2}=10, 所以A到D的最短距离是10,最短路径是A?B1?C2?D。 二、动态规划的术语 1.阶段 把所给求解问题的过程恰当地分成若干个相互联系的阶段,以便于求解,过程不同,阶段数就可能不同.描述阶段的变量称为阶段变量。在多数情况下,阶段变量是离散的,用k表示。此外,也有阶段变量是连续的情形。如果过程可以在任何时刻作出决策,且在任意两个不同的时刻之间允许有无穷多个决策时,阶段变量就是连续的。 在前面的例子中,第一个阶段就是点A,而第二个阶段就是点A到点B,第三个阶段是点B到点C,而第四个阶段是点C到点D。 2.状态 状态表示每个阶段开始面临的自然状况或客观条件,它不以人们的主观意志为转移,也称为不可控因素。在上面的例子中状态就是某阶段的出发位置,它既是该阶段某路的起点,同时又是前一阶段某支路的终点。 在前面的例子中,第一个阶段有一个状态即A,而第二个阶段有两个状态B1和B2,第三个阶段是三个状态C1,C2和C3,而第四个阶段又是一个状态D。 过程的状态通常可以用一个或一组数来描述,称为状态变量。一般,状态是离散的,但有时为了方便也将状态取成连续的。当然,在现实生活中,由于变

文档评论(0)

pqsczlx
该用户很懒,什么也没介绍

相关文档

相关课程推荐