网络流(1)——网络、流网络和网络流
在现实世界中,我们的生活受到大量网络的支配。网络流可以表示很多模型,比如管道中的石油、高压线中电流,或者计算机网络中的数据。网络流也可以解决很多问题,比如如何进行道路交通管控,以便有效地缓解早高峰的拥堵;在物流网运输中,在满足供需关系的同时,怎样使渠道成本最低;在轰炸机执行轰炸任务时,怎样才能给敌军补给线造成更严重的打击。这些问题都有现成的网络流算法,别再以为网络流仅仅是网络中的比特流。 网络和流网络 简单地说,流网络是一种有加权边的有向图。在数学中,网络是这样定义的:网络(Networks) G= ( V,E,s,t,C ) 是一个五元组。其中( V, E )是一个有向图, V 是顶点的集合, E 是边的集合,它们都是非负实数集; s 和 t 是( V, E )中的两个不同顶点; s 的入度为0(没有指向 s 的边),是 G 的源点(source); t 的出度为0(没有边从 t 发出),是G的汇点(sink); C 是容量函数,对于( V, E )中的任意有向边 a,称 C(a)是边 a 的容量(capacity)。对于仅有一个指定的原点 s 和指定的汇点 t 的网络,称为 st -网。 实际上网络的概念相当直白,我们以一个简单的物理模型直观地解释网络。假设有一组联通的输油管道,管道连接处的中转站设有控制开关。这组管道的源头是一个油田,汇点是一个炼油厂