试谈网络流的构造与算法

上传人:ba****u6 文档编号:191780443 上传时间:2023-03-04 格式:DOCX 页数:6 大小:81.75KB
收藏 版权申诉 举报 下载
试谈网络流的构造与算法_第1页
第1页 / 共6页
试谈网络流的构造与算法_第2页
第2页 / 共6页
试谈网络流的构造与算法_第3页
第3页 / 共6页
资源描述:

《试谈网络流的构造与算法》由会员分享,可在线阅读,更多相关《试谈网络流的构造与算法(6页珍藏版)》请在装配图网上搜索。

1、试谈网络流的构造与算法1.引论A. 对网络流算法的认识网络流算法是一种高效实用的算法,相对于其它图论算法来说,模型更加复杂,编程复杂度也更 高,但是它综合了图论中的其它一些算法(如最短路径),因而适用范围也更广,经常能够很好 地解决一些搜索与动态规划无法解决的,看似NP的问题。B. 具体问题的应用网络流在具体问题中的应用,最具挑战性的部分是模型的构造。这没用现成的模式可以套 用,需要对各种网络流的性质了如指掌(比如点有容量、容量有上下限、多重边等等),并且 归纳总结一些经验,发挥我们的创造性。2. 例题分析【问题1】项目发展规划(Develop)Macrosoft公司准备制定一份未来的发展规划

2、。公司各部门提出的发展项目汇总成了一张规划 表,该表包含了许多项目。对于每个项目,规划表中都给出了它所需的投资或预计的盈利。由于 某些项目的实施必须依赖于其它项目的开发成果,所以如果要实施这个项目的话,它所依赖的项 目也是必不可少的。现在请你担任Macrosoft公司的总裁,从这些项目中挑选出一部分,使你 的公司获得最大的净利润。输入输入文件包括项目的数量N,每个项目的预算Ci和它所依赖的项目集合Pi。格式如下:第1行是N;接下来的第i行每行表示第i个项目的信息。每行的第一个数是Ci,正数表示盈利,负数表示投 资。剩下的数是项目i所依赖的项目的编号。每行相邻的两个数之间用一个或多个空格隔开。

3、输出第1行是公司的最大净利润。接着是获得最大净利润的项目选择方案。若有多个方案,则输出挑 选项目最少的一个方案。每行一个数,表示选择的项目的编号,所有项目按从小到大的顺序输出。数据限制0WNW1000-1000000WCiW 1000000输入输出范例Sample InputSample Output642 2-1 1 2-3 35 3 43【分析解答】1. 抽象原题(图论模型)给定包含N个顶点的有向图G= (V, E),每个顶点代表一个项目,顶点有一权值Ci表示项目的 预算。用有向边来表示项目间的依赖关系,从u指向v的有向边表示项目u依赖于项目V。问题:求顶点集的一个子集V,满足对任意有向边

4、u,vEE,若uEV,则vEV,使得V 中所有顶点的权值之和最大。2. 搜索枚举V的所有符合条件的子集,时间复杂度O(2n),指数级。无论如何剪枝优化,也摆脱不了非 多项式。3. 动态规划本题的结构是有向无环图,而非树形结构,不适合动态规划。如果一定要做,实质类似于搜索, 由于状态数量众多,仍是指数级的时间复杂度。4. 网络流流网络的构造方法:建立N顶点代表N个项目,另外增加源s与汇t。若项目i必须依赖于项目j,则从顶点i向顶点 j引一条容量为无穷大的弓瓜。对于每个项目i,若它的预算C为正(盈利),则从源s向顶点i引 一条容量为C的边;若它的预算C为负(投资),则从顶点i向汇t引一条容量为-C

5、的边。求这个网络的最小割(S, T),设其容量C(S,T)=F。设R为所有盈利项目的预算之和(净利润上 界),那么R-F就是最大净利润;S中的顶点就表示最优方案所选择的项目。最小割:S=s,1,2,3,4,6; T=5,tC(S,T)=5净利润 R- C(S,T) = 85 = 3证明算法的正确性:建立项目选择方案与流网络的割(S,T)的一一对应关系:任意一个项目选择方案都可以对应网络中的一个割(S,T), S=s+所有选择的项目, T=V-S。对于任意一个不满足依赖关系的项目选择方案,其对应的割有以下特点:存在一条容量为+8孤3“,u属于S而v属于T。这时割的容量是无穷大,显然不可能是网络

6、的最小割。 对于任意一个割(S,T),如果其对应一个符合条件的方案,它的净利润是R-C(S,T)。导致实 际净利润小于上届R的原因有:1. 未选取盈利项目i,即顶点i包含在T中,那么存在一条从源s至顶点i的容量为Ci的弓瓜2. 选取投资项目i,即顶点i包含在S中,那么存在一条从顶点i至汇的容量为一Ci的弓瓜C(S,T)就是上述两种孤的容量之和。综上所述,割的容量越小,方案的净利润就越大。最小割的求法:根据最大流最小割定理,网络的最小割可以通过最大流的方法求得。本题解题的关键在于流网络数学模型的建立。本题建模的独到之处在于:以前的网络流问题通常 使用流量表示解答方案,而本题使用割表示解答方案,并充分利用了割的性质,流只是求得最小 割的手段。这为我们开辟了一条构造网络流解决问题的新思路。初看这个问题,要把它和网络流联系起来,有相当的难度。必须熟练地掌握流网络的各种性质, 经过反复的类比尝试,才能发现它们之间的共性。【联想思考】作为本题的一个衍生,给每个项目估计一个完成时间,并假设公司同时只能进行一个项目。现在 的问题是:如何选择一些能在给定时间内完成的项目,使得公司得到最大收益。这个问题我至今 还没有找到有效算法,希望有兴趣的同学来共同研究。3.编程技巧数据结构:邻接表直接表示原问题优点:节省空间缺点:编程复杂度大,不具有通用性

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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