多重背包单调队列优化问题.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
机器分配 ◆总公司拥有高效生产设备M台,准备分给下属的N个公司 各分公司若获得这些设备,可以为国家提供一定的盈利。 问:如何分配这M台设备才能使国家得到的盈利最大? 求出最大盈利值。其中MK=15,N=10。分配原则:每个 公司有权获得任意数目的设备,但总台数不得超过总设 备数M。 ◆数据文件格式为:第一行保存两个数,第一个数是设备 台数M,第二个数是分公司数N。接下来是一个M*N的 矩阵,表明了第Ⅰ个公司分配J台机器的盈利。 分析 ◆用机器数来做状态,数组F[IL,J表示前I 个公司分配J台机器的最大盈利。则状态 转移方程为: Fll, J=MaxF[I-1, K]+Valuell, J-Kl (1=I=N,1=J=M,0=K=J) ◆初始值:F(0,0)=0 ◆时间复杂度O(N*M2) 系统可靠性 个系统由若干部件串联而成,只要有一个部件故障,系统就不能正 常运行,为提高系统的可靠性,每一部件都装有备用件,一旦原部件 故障,备用件就自动进入系统。显然备用件越多,系统可靠性越高 但费用也越大,那么在一定总费用限制下,系统的最高可靠性等于多 ◆给定一些系统备用件的单价C,以及当用Mk个此备用件时部件的正常 工作概率Ⅳk(Mk),总费用上限C。求系统可能的最高可靠性。 输入文件格式 第一行:nC 第二行:C1P1(0)P1(1)..P1(X1)(0=X1=[C/Ck]) 第n行:CnPn(0)Pn(1)….Pn(Xn)(0=Xn=[/Cn]) 分析 ◆例:输入:220 30.60.650.70.750.80.850.9 50.70.750.80.80.90.95 输出:0.6375 ◆设F[I, money]表示将 money的资金用到前I项备用件中去的最大可靠 性,则有 FLI, money]= max(F[I-1, money-k*Cost[I] J*PLI, k]] (O=I=n, 0=K= money div Cost(I)) 初始:F[0,0]=0 目标:F[n,C] 快餐问题 ◆ Peter最近在R市开了一家快餐店,为了招揽顾客,该快餐店准备 推出一种套餐,该套餐由A个汉堡,B个薯条和C个饮料组成。价格 便宜。为了提高产量, Peter从著名的麦当劳公司引进了N条生产 线。所有的生产线都可以生产汉堡,薯条和饮料,由于每条生 线每天所能提供的生产时间是有限的、不同的,而汉堡,薯条和 饮料的单位生产时间又不同。这使得 Peter很为难,不知道如何安 排生产才能使一天中生产的套餐产量最大。请你编一程序,计算 天中套餐的最大生产量。为简单起见,假设汉堡、薯条和饮料 的日产量不超过100个。 ◆输入:第一行为三个不超过100的正整数A、B、C中间以一个空格分 开。第二行为3个不超过100的正整数p1,p2,p3分别为汉堡,薯条 和饮料的单位生产耗时。中间以一个空格分开。第三行为 N(0=0=10),第四行为N个不超过10000的正整数,分别为各条生 流水线每天提供的生产时间,中间以一个空格分开 ◆输出:每天套餐的最大产量 分析 ◆本题是一个非常典型的资源分配问题。由于每条生产线的生产是相 互独立,不互相影响的,所以此题可以以生产线为阶段用动态规划 求解。 状态表示:用p[i,j,k]表示前i条生产线生产j个汉堡,k个薯条的 情况下最多可生产饮料的个数 用r[i,j,k]表示第i条生产线生产j个汉堡,k个薯条的情况下最多 可生产饮料的个数。 态转移方程:p[i,j,k]=Max{p[i-1,j1,k1]+r[i,j-j,k-k1] (0=j1=j=100,0=k1=k=100, 且(j-)*1+(k-k1)*p2T[i]—第i条生产线的生产时间) r[i,j-j1,k-k1]=(T[i]-(j-j)*p1+(k-k1)*p2)divp3 ◆此算法的时间复杂度为O(N*1004) 优化 ◆在本题中,可以在动态规划方法中加入了贪心算法思想:即首先计 算出每天生产套数的上限值(由A,B,C计算,即min{100divA, 100divB,100divc}),接着,用贪心法计算出这N条流水线可 以生产的套数,并与上限比较,大于则输出上限值并退出,否则再 调用动态规划;同时,在运行动态规划的过程中,也可以每完成 阶段工作便与上限值进行比较,这样以来,便可望在动态规划完成 前提前结束程序。其算法设计为: S1:读入数据。 S2:贪心求上限并计算出一可行解,判断是否需进行下一步 ◆S3:动态规划求解 ◆S4:输出 其他优化方法 1.存储结构:由于每一阶段状态只与上一

文档评论(0)

151****1926 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档