问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

什么是增广路?网络流的。给个详细清楚的定义和解释,搜资料的免了

发布网友 发布时间:2022-04-29 18:47

我来回答

1个回答

热心网友 时间:2023-10-05 04:57

2.网络与网络流

给一个有向图N=(V,E),在V中指定一点,称为源点(记为vs,和另一点,称为汇点(记为vt),其余的点叫中间点,对于E中每条弧(vi,vj)都对应一个正整数c(vi,vj)≥O(或简写成cij),称为f的容量,则赋权有向图N=(V,E,c,vs,vt)称为一个网络。如图5-1所给出的一个赋权有向图N就是一个网络,指定v1是源点,v4为汇点,弧旁的数字为cij。 所谓网络上的流,是指定义在弧集合E上一个函数f={f(vi,vj)},并称f(vi,vj)为弧(vi,vj)上的流量(下面简记为fij)。如图5-2所示的网络N,弧上两个数,第一个数表示容量cij,第二个数表示流量fij。

3.可行流与最大流
在运输网络的实际问题中,我们可以看出,对于流有两个显然的要求:一是每个弧上的流量不能超过该弧的最大通过能力(即弧的容量);二是中间点的流量为0,源点的净流出量和汇点的净流入量必相等且为这个方案的总输送量。因此有:
(1)容量约束:0≤fij≤cij,(vi,vj)∈E,
(2)守恒条件
对于中间点:流入量=流出量;对于源点与汇点:源点的净流出量vs(f)=汇点的净流入量(-vt(f))
的流f,称为网络N上的可行流,并将源点s的净流量称为流f的流值v(f)。
网络N中流值最大的流f*称为N的最大流。

4.可增广路径
所谓可增广路径,是指这条路径上的流可以修改,通过修改,使得整个网络的流值增大。

设f是一个可行流,P是从源点s到汇点t的一条路,若p满足下列条件:
(1)在p上的所有前向弧(vi→vj)都是非饱和弧,即0≤fij<cij
(2)在p上的所有后向弧(vi←vj)都是非零弧,即0<fij≤cij
则称p为(关于可行流f的)一条可增广路径。

5.最大流定理
当且仅当不存在关于f*的增广路径,可行流f*为最大流。

5. 2 最大流算法

算法思想:最大流问题实际上是求一可行流{fij},使得v(f达到最大。若给了一个可行流f,只要判断N中有无关于f的增广路径,如果有增广路径,改进f, 得到一个流量增大的新的可行流;如果没有增广路径,则得到最大流。
1.寻求最大流的标号法(Ford,Fulkerson)
从一个可行流(一般取零流)开始,不断进行以下的标号过程与调整过程,直到找不到关于f的可增广路径为止。
(1)标号过程
在这个过程中,网络中的点分为已标号点和未标号点,已标号点又分为已检查和未检查两种。每个标号点的标号信息表示两个 部分:第一标号表明它的标号从哪一点得到的,以便从vt开始反向追踪找出也增广路径;第二标号是为了表示该顶点是否已检查过。
标号开始时,给vs标上(s,0),这时vs是标号但末检查的点,其余都是未标号的点,记为(0,0)。
取一个标号而未检查的点vi,对于一切未标号的点vj:
A.对于弧(vi,vj),若fij<cij,则给vj标号(vi,0),这时,vj点成为标号而未检查的点。
B.对于弧(vi,vj),若fji>0,则给vj标号(-vi,0),这时,vj点成为标号而未检查的点。
于是vi成为标号且已检查的点,将它的第二个标号记为1。重复上述步骤,一旦vt被标上号,表明得到一条从vi到vt的增广路径p,转入调整过程。
若所有标号都已检查过去,而标号过程进行不下去时,则算法结束,这时的可行流就是最大流。
(2)调整过程
从vt点开始,通过每个点的第一个标号,反向追踪,可找出增广路径P。例如设vt的第一标号为vk(或-vk),则弧(vk,vt)(或 相应地(vt,vk))是p上弧。接下来检查vk的第一标号,若为vi(或-vi),则找到(vi,vk)(或相应地(vk,vi))。再检查vi的第一 标号,依此类推,直到vs为止。这时整个增广路径就找到了。在上述找增广路径的同时计算Q:
Q=min{min(cij-fij),minf*ij}
对流f进行如下的修改:
f'ij = fij+Q (vi,vj)∈ P的前向弧的集合
f'ij = fij-Q (vi,vj)∈ P的后向弧的集合
f'ij = f*ij (vi,vj)不属于P的集合
接着,清除所有标号,对新的可行流f’,重新进入标号过程。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
说课包括哪些方面 说课内容包括()。 如何在手机百度上删除对话记录? 结核病是什么样的疾病? 曹丕17岁得了肺痨,明知自己命不长久,还要强争王位,是不是很自私呢?_百... 古代小说常出现的病名 急求一篇"生活小窍门"(500字)的作文 至今最有什么小妙招 健康的戒烟方法 笔记本电池锁死是什么原因引起的? 怎么做黄鳝,让黄鳝体内的寄生虫 500万日元等于多少人民币 540万日元可以换人民币多少钱 今日40万日元兑换多少人民币 那些建什么佣金单群的,免单群的,群主都是怎么赚钱的啊??? 日薪40万日元,人民币是多少?/ ,,. 40万日元等于多少RMB? 群主怎么做营销? 40万日元是人民币多少 我拥有这个五百多个人的群,我是群主,我们都是大学生,是网友,我们可以做点什么,赚钱,我们怎么利用这 40万日元等于多少人民币多少 40万日元等于人民币多少钱 我有一个五百人的拼多多互砍群,请问我如何用这个群挣钱呢,我是群主 假如自己是20个大学qq群的群主,每个群有30到500人,怎么利用这些资源赚钱? 中国人寿保险总打电话 人寿保险打电话说身份信息不对咋回事 人寿保险打电话干嘛 怎样教小孩学数学元角分比较容易入门 一年级元角分口诀表 小学一年级元角分公式家长怎么讲解 快递公司的文员需要具备什么? 孔子的学生是什么样的? augmenting path是什么意思 孔子和他的四位学生,是怎样一个人? 请问孔子的学生闵损是一个什么样的人 后向弧定义 二分图匹配(匈牙利算法)中增广路,交错路的确定方式,以及什么是增广路? 孔子培养出了怎样的学生 物流文员都是做些什么 运筹学中的最大流是指什么吖,读不懂!!要容易理解的中文解释,是指网络中能通过的最大流量的数值么?还 孔子的学生都是哪些人? Hungarain algorithm是什么 物流文员,办公室文员,仓库管理员,这三份工作选哪个好一点,长久,给点建议? 最大流算法中的Edmonds-Karp算法为什么用广度优先搜索增广路径 物流文员出路在哪? 从《孔子和学生》中看出孔子是一个什么样的人 孔子学生具体是那些人? 简单编程 快递行业的文员主要职责有哪些? 你认为孔子是个什么样的人?