热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

mysql最小费用最大流问题_最小费用最大流问题

复杂网络中,单源单点的最小费用最大流算法(MCMF)应用广泛。在实际网络问题中,不仅考虑从Vs到Vt的流量最大,还要考虑可行流在网络传送过

复杂网络中,单源单点的最小费用最大流算法(MCMF)应用广泛。

在实际网络问题中,不仅考虑从 Vs到 Vt的流量最大,还要考虑可行流在网络传送过程中的费用问题,这就是网络的最小费用最大流问题。

最小费用最大流问题的一般提法:已知容量网络 D=(V ,A ,C),每条弧 (Vi,Vj) 除了已给出容量 Cij 外,还给出单位流量的传输费用 bij≥0,记作D=(V, A, C, B),其中bij ∈B。要在费用、容量网络 D 中寻找 Vs→Vt的最大流 f={fij},且使流的总传输费用:

b(f)=Σbijfij 最小

从上一讲可知,最大流的求法就是在容量网络上从某个可行流出发,设法找到一条从 Vs→Vt 的增广链,然后沿着此增广链调整流量,作出新的流量增大了的可行流。在这个新的可行流基础上再寻找它的增广链。如此反复进行,直至再找不出增广链,就得到了该网络的最大流。

例子:给定费用、容量网络图(bij,cij),试求网络的最小费用最大流。

409ccb50a8d959dc5c677e1e40b4ab7f.png

解:

(1)、初始取0流量,此时总费用为 f(0) = 0。

(2)、由原始网络构建费用网络图(费用网络图每条线路上的权重为bij,bij为单位流量的费用)。

(3)、通过当前费用网络图找到一个费用最少的路径,即vs->v3->v2->vt。通过该路径上每条线段的容量得出该线路能通过的最大流量,即调整量θ = min{8,5,7} = 5,即流量为5,当前的最小费用为 f(1) = 5*1+5*2+5*1 = 20。下图为流量网络图。

06630b53d197ed26739112aa5871cab4.png

(4)、在(3)的基础上构造新的费用网络图,构造方法为:当线路没流量通过时,流量方向不变,费用为原始费用。如vs->v2;

当线路流量等于该线路的最大容量时,则流量方向改变,费用为原始费用的负数。如v3->v2变为v2->v3;

当线路流量小于该线路的最大容量时,则增加反向流量,费用为原始费用的负数。如vs->v3新增v3->vs;

f841fa9ba40effaa97bc7de2e6e58728.png

(5)、在(4)中得到的费用网络图上,找到费用最少的路径,即vs->v2->vt,通过该路径上每条线段的容量得出该线路能通过的最大流量,即调整量θ = min{10,7-5} = 2,得到的最小费用流的流量为7,当前的最小费用为 f(2) = 2*4+5*1+5*2+7*1 = 30。

32a2e7c5ed0972e50233a84ef2389860.png

(6)、构造可行流 f2的费用网络图。

c888f6e862344bd1e0d2fe217f7511ff.png

(7)、在(6)中得到的费用网络图上,找到费用最少的路径,即vs->v3->v4->vt,通过该路径上每条线段的容量得出该线路能通过的最大流量,即调整量θ = min{8-5,10,4} = 3,得到的最小费用流的流量为10,当前的最小费用为 f(3) = 2*4+8*1+5*2+7*1+3*3+3*2 = 42

75060eccdafcb8de177b27a55de6a24b.png

(8)、构造可行流 f3 的费用网络图。

acc6e0a89d0b6a049adf31f97edf8721.png

(9)、在(8)的费用网络图上,找到费用最少的路径,即vs->v2->v3->v4->vt,通过该路径上每条线段的容量得出该线路能通过的最大流量,即调整量θ = min{10-2, 10-3, 4-3, 5} = 1,得到的最小费用流的流量为11,当前最小费用为 f(4) = 3*4+8*1+4*2+7*1+4*3+4*2 = 55

ee905d2acc3423eef56588d7bf9fc075.png

(10)、构造可行流 f4 的费用网络图。

3fd189f25db4cde32ff346affcd8f6b5.png

由于无法找到从 vs->vt 的最短路,所以 f(4) 就是该网络的最小费用最大流。



推荐阅读
  • 本文深入探讨了CART(分类与回归树)的基本原理及其在随机森林中的应用。重点介绍了CART的分裂准则、防止过拟合的方法、处理样本不平衡的策略以及其在回归问题中的应用。此外,还详细解释了随机森林的构建过程、样本均衡处理、OOB估计及特征重要性的计算。 ... [详细]
  • 智慧城市建设现状及未来趋势
    随着新基建政策的推进及‘十四五’规划的实施,我国正步入以5G、人工智能等先进技术引领的智慧经济新时代。规划强调加速数字化转型,促进数字政府建设,新基建政策亦倡导城市基础设施的全面数字化。本文探讨了智慧城市的发展背景、全球及国内进展、市场规模、架构设计,以及百度、阿里、腾讯、华为等领军企业在该领域的布局策略。 ... [详细]
  • Spring Cloud因其强大的功能和灵活性,被誉为开发分布式系统的‘一站式’解决方案。它不仅简化了分布式系统中的常见模式实现,还被广泛应用于企业级生产环境中。本书内容详实,覆盖了从微服务基础到Spring Cloud的高级应用,适合各层次的开发者。 ... [详细]
  • Imreadingthisdocument:http:software.intel.comen-usarticlesinteractive-ray-tracing我正在阅读这个文 ... [详细]
  • 本文介绍了在CentOS 6.4系统中安装MySQL 5.5.37时遇到的启动失败和PID文件问题,并提供了详细的解决方案,包括日志分析、权限检查等步骤。 ... [详细]
  • 在Java开发中,使用BASE64编码通常可以直接利用JDK内置的库。然而,在Android平台上,由于安全性和兼容性的考虑,直接引用JDK中的`sun.misc.BASE64Decoder`会导致错误,因此需要引入第三方库来实现相同的功能。 ... [详细]
  • 本文详细介绍了如何使用 PHP 编程语言输出 99 乘法表,包括使用不同的循环结构如 do-while、for 循环等方法,并提供了具体的代码示例。 ... [详细]
  • 本文档旨在帮助开发者回顾游戏开发中的人工智能技术,涵盖移动算法、群聚行为、路径规划、脚本AI、有限状态机、模糊逻辑、规则式AI、概率论与贝叶斯技术、神经网络及遗传算法等内容。 ... [详细]
  • 本文介绍了如何在MATLAB中实现单变量线性回归,这是基于Coursera上Andrew Ng教授的机器学习课程中的一个实践项目。文章详细讲解了从数据可视化到模型训练的每一个步骤。 ... [详细]
  • 本文探讨了随着并发需求的增长,MySQL数据库架构如何从简单的单一实例发展到复杂的分布式系统,以及每一步演进背后的原理和技术解决方案。 ... [详细]
  • 迎接云数据库新时代:程序员如何应对变革?
    在数据无处不在的时代,数据库成为了管理和处理数据的核心工具。从早期的信息记录方式到现代的云数据库,数据库技术经历了巨大的变革。本文将探讨云数据库的特点及其对程序员的影响。 ... [详细]
  • 本文介绍了如何在 GitHub 的 Markdown 文件中正确显示数学公式的方法,适用于非博客环境。 ... [详细]
  • 使用ASP.NET与jQuery实现TextBox内容复制到剪贴板
    本文将介绍如何利用ASP.NET结合jQuery插件,实现将多行文本框(TextBox)中的内容复制到用户的本地剪贴板上。该方法主要适用于Internet Explorer浏览器。 ... [详细]
  • 本文详细介绍了使用ZooKeeper构建高可用集群的方法,包括必要的软件环境准备、配置文件调整及集群启动等关键步骤。通常,一个ZooKeeper集群由奇数个节点组成,以确保Leader选举的有效性。 ... [详细]
  • 数据结构与算法基础:第六章 图的基本概念
    本文介绍了图的基本定义、术语及其分类,包括图的表示方法、顶点与边的关系、以及不同类型图的特点。 ... [详细]
author-avatar
峰的紫色摩天轮
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有