首页 > 其他分享 >网络流-最大流常见模型

网络流-最大流常见模型

时间:2024-07-12 13:21:13浏览次数:11  
标签:二分 连边 路径 匹配 覆盖 模型 常见 网络 节点

二分图最大匹配

问题

给定一个二分图 \(G\),即分左右两部分,各部分之间的点没有边连接,要求选出一些边,使得这些边没有公共顶点,且边的数量最大。

解决方法

保留原有部分的连边,将所有连边设为从左向右的容量为 \(1\) 的有向边。将 \(S\) 用容量为 \(1\) 的边连接所有左边的节点,把所有右边的节点用容量为 \(1\) 的边连向 \(T\)。

二分图多重匹配

问题

给定一个二分图 \(G\),即分左右两部分,各部分之间的点没有边连接,要求选出一些边,使得每一个点连接的边不超过其上限,且边的数量最大。

解决方法

所有连边方法与二分图最大匹配一致,唯一的不同点就在于与 \(S\) 与 \(T\) 连边的容量为这个点连接的边的上限。

最小不相交路径覆盖

路径的定义

对于一条迹 \(w\),若其连接的点的序列中点两两不同,则称 \(w\) 是一条路径。

注意:一个节点本身也是路径

问题

给定一个有向无环图,找出最少的路径使得这些路径覆盖所有点,并且要求这些路径没有交点。

解决方法

我们可以将 \(n\) 个点拆成 \(2n\) 个点,分别作为图的左部与右部。其中编号为 \(1\) 到 \(n\) 的为左部,编号为 \(n+1\) 到 \(2n\) 的为右部。对于原图中的边 \(x\to y\) 将 \(x\) 到 \(y+n\) 连边,得到一个拆点二分图。得到的 \(\text{最小不相交路径覆盖}=n-\text{二分图最大匹配数}\)。

证明

对于任意一个路径,除了起点和终点分别只有一个后继和前驱之外,每一个节点都有前驱和后继。对于每个点 \(x\),将其拆分成两个点 \(x\) 和 \(x+n\),其中 \(x\) 代表前驱节点。\(x+n\) 代表后驱节点,即二分图的左部分和右部分。

为了让最小路径覆盖最小,应该让二分图尽可能连接的边多,即二分图最大匹配。给每个点找到他的前驱和后继,对应选择二对于左部分没有匹配的节点,表示没有后继,对应路径的终点。这样的点的数量就是原图点个数 \(n-\) 二分图的最大匹配数。右部分没有匹配的节点,表示没有前驱,对应路径的起点。因此 \(\text{最小路径覆盖}=n-\text{二分图的最大匹配数}\)。

最小不相交路径覆盖

问题

给定一个有向无环图,找出最少的路径使得这些路径覆盖所有点,不强制要求这些路径没有交点。

传递闭包

传递闭包可以使用 floyd 求解,其中 \(f_{x,y}\) 不表示从 \(x\) 到 \(y\) 的最短距离,而表示 \(x\) 是否可以到大 \(y\)。

解决方法

使用 Floyd 进行传递闭包,如果 \(f_{x,y}=1\) 那么增加边 \(x\to y\),然后对这个新建出的图进行最小不相交路径覆盖即可。

证明

因为原图在求解 \(x\to y\) 时可能会与其他的边相交导致路线出现相交的情况,但是一旦将 \(x\to y\) 连接起来,那么 \(x\to y\) 的路径就可以直接通过 \(x\to y\) 到达,并不会出现问题。

标签:二分,连边,路径,匹配,覆盖,模型,常见,网络,节点
From: https://www.cnblogs.com/liudagou/p/18298171

相关文章

  • 网络流-上下界
    定义上下界网络流就是在原本网络流的基础上添加了每一条边流量的上界\(r(x\toy)\)和下界\(l(x\toy)\),也就是说\(f(x\toy)\)必须满足\(l(x\toy)\lef(x\toy)\ler(x\toy)\)。无源汇上下界可行流无源汇界网指的是没有源点和汇点但是每一个点的出边与入边都满足流量守......
  • 网络流-费用流常见模型
    二分图最大权匹配问题选择一些边,如果满足任意两条边都没有公共端点,那么这些边被称为二分图的一组匹配。二分图最大权匹配就是寻找所有的二分图的匹配中权最大的,注意权最大是第一关键字,而是否是匹配最多的无关紧要。求解方法首先,在图中新增源点\(S\)与汇点\(T\)。从\(S\)......
  • 网络流-费用流
    定义给定一个有\(n\)个点\(m\)条边的网络,每条边有一个容量限制\(C_{x\toy}\)和一个使用的代价\(w_{x\toy}\)。当边\(x\toy\)使用的流量为\(f_{x\toy}\)时,其花费的代价为\(w_{x\toy}\timesf_{x\toy}\)。这个网络中总共代价最少的最大流被称为最小费用最大流,总......
  • 山东大学数据结构与算法课程设计实验4网络放大器设置问题
    问题描述 一个汽油传送网络可由加权有向无环图G表示。图中有一个称为源点的顶点S。从S出发,汽油被输送到图中的其他顶点。S的入度为0,每一条边上的权给出了它所连接的两点间的距离。通过网络输送汽油时,压力的损失是所走距离的函数。为了保证网络的正常运转,在网络传输中必须保......
  • 最新AI一站式系统源码-ChatGPT商业版系统源码,支持自定义AI智能体应用、AI绘画、AI视频
     一、前言人工智能语言模型和AI绘画在多个领域都有广泛的应用.....SparkAi创作系统是一款基于ChatGPT和Midjourney开发的智能问答和绘画系统,提供一站式AIB/C端解决方案,涵盖AI大模型提问、AI绘画、AI视频、文档分析、图像识别和理解、TTS&语音识别、AI换脸等多项功能。......
  • 【 2024!深入了解 大语言模型(LLM)微调方法(总结)】
    文末有福利!引言众所周知,大语言模型(LLM)正在飞速发展,各行业都有了自己的大模型。其中,大模型微调技术在此过程中起到了非常关键的作用,它提升了模型的生成效率和适应性,使其能够在多样化的应用场景中发挥更大的价值。那么,今天这篇文章就带大家深入了解大模型微调。其中主要......
  • 大模型时代(上):大模型的出现,会对未来产生什么影响?
    OpenAI将通用大模型训练的结果通过ChatGPT的应用形式带到大家面前,意味着发展了大半个世纪的人工智能领域正式步入了广泛意义生产力提升的新纪元。可预见的未来,大模型的时代会逐渐拉开序幕。那么,大模型的出现会对未来产生什么影响呢?一起来看一下吧。随着OpenAI将通用大......
  • 简单几步,免费微调大语言模型
    我总是受大脑运行方式的启发…大脑收集信息,然后对信息进行加权再输出,问题就在于,怎么调整这些权重使这些信息发挥作用。——杰弗里·辛顿今天和大家分享下,怎么用开源工具免费微调大模型。要用到的工具有:autotrain:huggingface开放的零代码大模型微调平台,无需编程,只需要通......
  • 苹果被大模型打得措手不及
    生成式AI发布已经快2年了,国内外不少公司都有自己的大模型,但作为科技龙头之一的苹果却一直没有消息;显然,苹果是落后于AI发展的时间线了。2023来,英伟达凭借其AI硬件业务的强劲表现,实现市值6.3倍增长,达到2.36万亿美元。ChatGPT、Sora等生成式AI的发布,更使科技行业迈入全新的......
  • 经典再现,回顾常见排序算法之冒泡排序,附Java源码及优化改进实现
    回顾一下排序算法,老酒装新瓶,给自己的技能点做个回放。排序(Sorting)是计算机程序设计中的一种重要操作,它的功能是将一个数据元素(或记录)的任意序列,重新排列成一个有序的序列,也可以理解为高矮个站队。衡量排序算法的两个指标,时间复杂度和稳定性。举个例子,如果我们的数据......