欢迎来到天天文库
浏览记录
ID:19692096
大小:212.00 KB
页数:27页
时间:2018-10-05
《国家集训队2005论文集 汪汀》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、参数搜索的应用芜湖市第一中学 汪汀引言参数搜索是解决最优解问题的一种常见的方法。其本质就是对问题加入参数,先解决有参数的问题,再不断调整参数,最终求得最优解。下面通过几个例子来说明这一点。问题一分石子问题有N个石子,每个石子重量Qi;按顺序将它们装进K个筐中;求一种方案,使最重的筐尽量轻。问题一分石子问题N=9,K=3975684327161916最大为19975684327211812最大为21
2、
3、
4、
5、问题一分石子问题——分析本题可采用动态规划时间复杂度O(N2)能否找到实现更简单,更优秀的算法呢?太高了9问题一分石子问题——分析685?85问题一
6、分石子问题——分析引入参数P,求一个判定可行解问题:判断是否存在最大重量不超过P的方案问题一分石子问题——分析可以用贪心法解决,具体方法如下:按顺序把石子放入筐,若一个筐中石子总重量不足P,我们就继续对这个筐加入新的石子;如果超过P,则我们将石子放入新的筐中。9问题一分石子问题——分析6853N=5,K=3,P=12问题一分石子问题——分析回到最初的问题:从小到大枚举P,找到第一个可行解,该解即为问题所求令T=∑Qi,则这个算法的时间复杂度为O(TN)需要进一步优化!问题一分石子问题——分析若我们能找到一个最大重量不超过P的方案,则我们可以找出一个最
7、大重量不超过P+1的方案二分法!问题一分石子问题——分析不断重复以上步骤即可找到问题的最优解。时间复杂度O(NlogT)特别地,由于答案必定为某一段连续石子的重量和所以可以得到一个时间复杂度为O(Nlog3N)的算法1TM尝试区间[1,M-1]尝试区间[M+1,T]小结首先引入参数P,解决带参数的问题;用贪心法可以判断是否存在最大重量和不超过p的方案;枚举P求出问题的最优解;二分法降低了算法的时间复杂度,最终解决了问题。小结Ⅰ首先引入参数P,解决带参数的问题;判断是否存在结果优于P的方案Ⅱ调整P得到最优解。通过二分法或迭代法减少调整次数,降低算法时间
8、复杂度。问题二最大比率问题有N道题目,每道题目有不同的分值和难度,分别为Ai,Bi(分值及难度均为正数);要求从某一题开始,连续选至少K道题目,满足分值和与难度和的比最大。问题二最大比率问题例如N=7,K=3A4321B2213选择第3题到第6题,比为(9+8+9+9)/(1+1+2+1)=7这是上例的最优解98991121问题二最大比率问题先来解决一个与之类似的简化版问题:在一个数列中找连续多个数(至少K个),总和最大。建立一个队列Q,开始时队列只有K个元素,按顺序往队列中添加新的元素,添加后计算Q1+Q2..+QL-K的和,记为S。若S<0,则将
9、Q1,Q2..QL-K从队列中删除,否则暂时保留这些数。并不断更新最大值。问题二最大比率问题——分析-12-33-164和为-1和为2和为-1和为12这就是最优解扫描一遍的复杂度是线性的问题二最大比率问题——分析现在我们已经能在O(N)的时间内解决简化后的问题了。这个方法能不能应用于原题?很遗憾,由于原题中每个数据有两个参数,故它们对最终结果产生的影响是不确定的,因此对于原题我们不能直接套用这个算法。现在必须消除这个不确定因素。问题二最大比率问题——分析为此,我们必须引入参数p,求一个判定可行解问题:判断是否存在一个比大于p的方案问题二最大比率问题—
10、—分析新的问题可以这样描述:求两个下标i’,j’,满足j’-i’+1≥k①(Ai’+Ai’+1....+Aj’)/(Bi’+Bi’+1…+Bj’)>p②②Ai’+Ai’+1....+Aj’>p(Bi’+Bi’+1…+Bj’)(Ai’-pBi’)+(Ai’+1-pBi’+1)…+(Aj’-pBj’)>0问题二最大比率问题——分析(Ai’-pBi’)+(Ai’+1-pBi’+1)…+(Aj’-pBj’)>0令Ci=Ai-pBi,Ci’+Ci’+1…+Cj’>0在数列C中找一段连续的数(至少K个),和为正数。我们能在O(N)的时间内找到中和最大的一段,记为
11、S:若S>0则找到了一个可行方案若S≤0,则问题无解可以借用刚才的结论问题二最大比率问题——分析O(N)的时间判断出是否存在比不小于P的方案。通过二分法,调整参数P的大小,不断逼近最优解。时间复杂度O(NlogT)小结上例的难点在于每道题有难度和分值两个数据,使我们无法确定它们对最终结果的影响,因此不能直接套用之前的扫描法。引入参数后,成功的消除了这个不确定因素,从而轻松的解决了问题。总结回顾两个例子:分石子问题:动态规划时空编程复杂度都很高参数搜索时空复杂度比较优秀效率比较高最大比率问题:直接扫描无法解决参数搜索问题豁然开朗降低思维复杂度总结参数搜
12、索主要解决最优解问题,它的应用非常广泛,优点也十分突出,使得我们解此类问题又多了一种有力的武器。通常情况下,
此文档下载收益归作者所有