《管理运筹学第11章--图和网络模型ppt课件.ppt》由会员分享,可在线阅读,更多相关《管理运筹学第11章--图和网络模型ppt课件.ppt(40页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、管管 理理 运运 筹筹 学学 第十一章图与网络模型第十一章图与网络模型11图与网络的基本概念图与网络的基本概念22最短路问题最短路问题33最小生成树问题最小生成树问题44最大流问题最大流问题55最小费用最大流问题最小费用最大流问题1管管 理理 运运 筹筹 学学11图与网络的基本概念图与网络的基本概念一、图的概念一、图的概念(一)图的定义(一)图的定义 图论中图是由点和边构成,可以反映一些对象之间的关系。图论中图是由点和边构成,可以反映一些对象之间的关系。例如:在一个人群中,对相互认识这个关系我们可以用图来例如:在一个人群中,对相互认识这个关系我们可以用图来表示,图表示,图11-111-1就是一
2、个表示这种关系的图。就是一个表示这种关系的图。(v1)赵赵(v2)钱钱(v3)孙孙(v4)李李(v5)周周(v6)吴吴(v7)陈陈e2e1e3e4e5图图11-12管管 理理 运运 筹筹 学学 1 1图与网络的基本概念图与网络的基本概念 当然图论不仅仅是要描述对象之间关系,还要研究特定关当然图论不仅仅是要描述对象之间关系,还要研究特定关系之间的内在规律,一般情况下图中点的相对位置如何、点与系之间的内在规律,一般情况下图中点的相对位置如何、点与点之间联线的长短曲直,对于反映对象之间的关系并不是重要点之间联线的长短曲直,对于反映对象之间的关系并不是重要的,如对赵等七人的相互认识关系我们也可以用图的
3、,如对赵等七人的相互认识关系我们也可以用图11-211-2来表示,来表示,可见图论中的图与几何图、工程图是不一样的。可见图论中的图与几何图、工程图是不一样的。(v1)赵赵(v2)钱钱孙孙(v3)李李(v4)周周(v5)吴吴(v6)陈陈(v7)e2e1e3e4e5图图11-23管管 理理 运运 筹筹 学学11图与网络的基本概念图与网络的基本概念a1a2a3a4a14a7a8a9a6a5a10a12a11a13a15(v1)赵赵(v2)钱钱(v3)孙孙(v4)李李(v5)周周(v6)吴吴(v7)陈陈图图11-3 如果我们把上面例子中的如果我们把上面例子中的“相互认识相互认识”关系改为关系改为“认识
4、认识”的关系,那么只用两点之间的联线就很难刻画他们之间的的关系,那么只用两点之间的联线就很难刻画他们之间的关系了,这是我们引入一个带箭头的联线,称为弧。图关系了,这是我们引入一个带箭头的联线,称为弧。图11-3就就是一个反映这七人是一个反映这七人“认识认识”关系的图。相互认识用两条反向关系的图。相互认识用两条反向的弧表示。的弧表示。4管管 理理 运运 筹筹 学学 1 1图与网络的基本概念图与网络的基本概念(二)无向图:(二)无向图:由点和边构成的图,记作由点和边构成的图,记作G=(V,E)。)。(三)有向图:(三)有向图:由点和弧构成的图,记作由点和弧构成的图,记作D=(V,A)。)。(四)连
5、通图(四)连通图:对无向图对无向图G,若任何两个不同的点之间,至少存在一条链,则若任何两个不同的点之间,至少存在一条链,则G为为连通图。连通图。(五)回路:(五)回路:若路的第一个点和最后一个点相同,则该路为回路。若路的第一个点和最后一个点相同,则该路为回路。(六)赋权图:(六)赋权图:对一个无向图对一个无向图G的每一条边的每一条边(vi,vj),相应地有一个数相应地有一个数wij,则称图则称图G为为赋权图赋权图,wij称为边称为边(vi,vj)上的权。上的权。(七)网络:(七)网络:在赋权的有向图在赋权的有向图D中指定一点,称为发点,指定另一点称为收点,中指定一点,称为发点,指定另一点称为收
6、点,其它点称为中间点,并把其它点称为中间点,并把D中的每一条弧的赋权数称为弧的容量,中的每一条弧的赋权数称为弧的容量,D就就称为网络。称为网络。5管管 理理 运运 筹筹 学学22最短路问题最短路问题一、最短路问题一、最短路问题对一个赋权的有向图对一个赋权的有向图D中的指定的两个点中的指定的两个点Vs和和Vt找到一条从找到一条从 Vs 到到 Vt 的的路,使得这条路上所有弧的权数的总和最小,这条路被称之为从路,使得这条路上所有弧的权数的总和最小,这条路被称之为从Vs到到Vt的最短路。这条路上所有弧的权数的总和被称为从的最短路。这条路上所有弧的权数的总和被称为从Vs到到Vt的距离。的距离。二、求解
7、最短路的二、求解最短路的Dijkstra算法算法(双标号法)的步骤双标号法)的步骤 1.给出点给出点V1以标号以标号(0,s)2.找出已标号的点的集合找出已标号的点的集合I,没标号的点的集合,没标号的点的集合J以及弧的集合以及弧的集合 (Vi,Vj)ViI,Vj J 3.如果上述弧的集合是空集,则计算结束。如果如果上述弧的集合是空集,则计算结束。如果vt已标号(已标号(lt,kt),则),则 vs到到vt的距离为的距离为lt,而从,而从 vs到到vt的最短路径,则可以从的最短路径,则可以从kt 反向追踪到起点反向追踪到起点vs 而得到。如果而得到。如果vt 未标号,则可以断言不存在从未标号,则
8、可以断言不存在从 vs到到vt的有向路。如果的有向路。如果上述的弧的集合不是空集,则转下一步。上述的弧的集合不是空集,则转下一步。4.对上述弧的集合中的每一条弧,计算对上述弧的集合中的每一条弧,计算 sij=li+cij。在所有的。在所有的 sij中,找中,找到其值为最小的弧。不妨设此弧为(到其值为最小的弧。不妨设此弧为(Vc,Vd),则给此弧的终点以双标),则给此弧的终点以双标号(号(scd,c),返回步骤返回步骤2。6管管 理理 运运 筹筹 学学22最短路问题最短路问题 例例1 求下图中求下图中v1到到v6的最短路的最短路v23527531512v1v6v5v3v4(3,1)v235275
9、31512 V1(0,s)v5(8,4)v6(2,1)v3(3,3)v4解:采用解:采用Dijkstra算法,算法,各点的标号图如下:各点的标号图如下:由左图可知最短由左图可知最短路径为路径为v1v3 v4 v6,最短路,最短路径的长度为径的长度为8。7管管 理理 运运 筹筹 学学22最短路问题最短路问题 例例2 电信公司准备在甲、乙两地沿路架设一条光缆线,电信公司准备在甲、乙两地沿路架设一条光缆线,问如何架设使其光缆线路最短?下图给出了甲乙两地间的问如何架设使其光缆线路最短?下图给出了甲乙两地间的交通图。权数表示两地间公路的长度(单位:公里)。交通图。权数表示两地间公路的长度(单位:公里)。
10、V1(甲地)(甲地)151762444 31065v2V7(乙地)(乙地)v3v4v5v68管管 理理 运运 筹筹 学学22最短路问题最短路问题解:这是一个求无向图的最短路的问题。可以解:这是一个求无向图的最短路的问题。可以把无向图的每一边(把无向图的每一边(vi,vj)都用方向相反的)都用方向相反的两条弧(两条弧(vi,vj)和()和(vj,vi)代替,就化为有)代替,就化为有向图,即可用向图,即可用Dijkstra算法来求解。也可直算法来求解。也可直接在无向图中用接在无向图中用Dijkstra算法来求解。只要算法来求解。只要在算法中把从已标号的点到未标号的点的弧在算法中把从已标号的点到未标
11、号的点的弧的集合改成已标号的点到未标号的点的边的的集合改成已标号的点到未标号的点的边的集合即可。集合即可。9管管 理理 运运 筹筹 学学22最短路问题最短路问题每点的标号见下图:每点的标号见下图:(0,s)V1(甲地)(甲地)1517624431065(13,3)v2 (22,6)V7(乙地)(乙地)V5(14,3)V6(16,5)V3(10,1)V4(18,5)例例2最终解得:最短路径最终解得:最短路径v1v3 v5 v6 v7,最短,最短光缆需要光缆需要22公里。公里。10管管 理理 运运 筹筹 学学22最短路问题最短路问题 例例3 设备更新问题。某公司使用一台设备,在每年年初,公司就设备
12、更新问题。某公司使用一台设备,在每年年初,公司就要决定是购买新的设备还是继续使用旧设备。如果购置新设备,就要要决定是购买新的设备还是继续使用旧设备。如果购置新设备,就要支付一定的购置费,当然新设备的维修费用就低。如果继续使用旧设支付一定的购置费,当然新设备的维修费用就低。如果继续使用旧设备,可以省去购置费,但维修费用就高了。请设计一个五年之内的更备,可以省去购置费,但维修费用就高了。请设计一个五年之内的更新设备的计划,使得五年内购置费用和维修费用总的支付费用最小。新设备的计划,使得五年内购置费用和维修费用总的支付费用最小。已知:设备每年年初的价格表如下:已知:设备每年年初的价格表如下:年份年份
13、12345年初价格年初价格1111121213使用年数使用年数第第1年年第第2年年第第3年年第第4年年第第5年年每年维修每年维修费用费用5681118设备维修费如下表:设备维修费如下表:11管管 理理 运运 筹筹 学学22最短路问题最短路问题解:用解:用vi表示表示“第第i年年初购进一台新设备年年初购进一台新设备”,弧(弧(vi,vj)表示第)表示第i年年初购年年初购进的设备一直使用到第进的设备一直使用到第j年年初。将问题转化为最短路问题,如下图:年年初。将问题转化为最短路问题,如下图:v1v2v3v4v5v6123456116223041592162230413172331417235186
14、把所有弧的权数计算如下表:把所有弧的权数计算如下表:12管管 理理 运运 筹筹 学学22最短路问题最短路问题(继上页继上页)把权数赋到图中,再用把权数赋到图中,再用Dijkstra算法求最短路。算法求最短路。v1v2v3v4v5v6162230415916223041312317181723 V1(0,s)v3v4(41,1)v5v62230415916(22,1)3041312317181723 V2(16,1)16(30,1)(53,3)(53,4)可知,可知,v1到到v6的距离是的距离是53,最短路径有两,最短路径有两条:条:v1v3 v6和和 v1 v4 v6,即最少,即最少费用为费用
15、为53。各点的标号如下图所示:各点的标号如下图所示:13管管 理理 运运 筹筹 学学33最小生成树问题最小生成树问题一、树的概念一、树的概念(一)树的定义(一)树的定义树是图论中的重要概念,所谓树就是一个无圈的连通图。树是图论中的重要概念,所谓树就是一个无圈的连通图。图图11-11中,中,(a)就是一个树,而就是一个树,而(b)因为图中有圈所以就因为图中有圈所以就不是树,不是树,(c)因为不连通所以也不是树。因为不连通所以也不是树。图图11-11v1v2v3v4v5v6v7v8v9v1v2v3v5v8v7v6v4v1v2v3v4v5v7v6v8v9(a)(b)(c)14管管 理理 运运 筹筹
16、学学33最小生成树问题最小生成树问题 (二)生成子图(二)生成子图给了一个无向图给了一个无向图G=(V,E)G=(V,E),我们保留,我们保留G G的所有点,而删掉部分的所有点,而删掉部分G G的边或者说的边或者说保留一部分保留一部分G G的边,所获得的图,称之为的边,所获得的图,称之为G G的生成子图。的生成子图。在图在图11-12中,中,(b)和和(c)都是都是(a)的生成子图。的生成子图。(三)生成树(三)生成树如果图如果图G G的一个生成子图还是一个树,则称这个生成子图为生成树,在图的一个生成子图还是一个树,则称这个生成子图为生成树,在图11-1211-12中,中,(c)(c)就是就是
17、(a)(a)的生成树。的生成树。图图11-12(a)(b)(c)15管管 理理 运运 筹筹 学学33最小生成树问题最小生成树问题二、最小生成树问题二、最小生成树问题 最小生成树问题就是指在一个赋权的连通的无向图最小生成树问题就是指在一个赋权的连通的无向图G中中找出一个生成树,并使得这个生成树的所有边的权数之和找出一个生成树,并使得这个生成树的所有边的权数之和为最小。为最小。三、求解最小生成树的破圈算法三、求解最小生成树的破圈算法算法的步骤:算法的步骤:(一)在给定的赋权的连通图上找一个含有最大边的圈。(一)在给定的赋权的连通图上找一个含有最大边的圈。(二)在所找的圈中去掉一个权数最大的边(如果
18、有两条或(二)在所找的圈中去掉一个权数最大的边(如果有两条或两条以上的边都是权数最大的边,则任意去掉其中一条)。两条以上的边都是权数最大的边,则任意去掉其中一条)。(三)如果所余下的图已不包含圈,则计算结束,所余下的(三)如果所余下的图已不包含圈,则计算结束,所余下的图即为最小生成树,否则返回第图即为最小生成树,否则返回第1步。步。16管管 理理 运运 筹筹 学学33最小生成树问题最小生成树问题例例4 用破圈算法求图(用破圈算法求图(a)中的一个最小生成树)中的一个最小生成树v1331728541034v7v6v5v4v2v13317285434v7v6v5v4v2v133725434v7v6
19、v5v4v2v3v3v31v13372434v7v6v5v4v2v31v1337234v7v6v5v4v2v31v133723v7v6v5v4v2v31(a)(b)(c)(d)(e)(f)图图11-1317管管 理理 运运 筹筹 学学33最小生成树问题最小生成树问题 例例5、某大学准备对其所属的、某大学准备对其所属的7个学院办公室计算机联网,这个网络的个学院办公室计算机联网,这个网络的可能联通的途径如下图,图中可能联通的途径如下图,图中v1,v7 表示表示7个学院办公室,请设计一个学院办公室,请设计一个网络能联通个网络能联通7个学院办公室,并使总的线路长度为最短。个学院办公室,并使总的线路长度
20、为最短。解:此问题实际上是求图解:此问题实际上是求图11-1411-14的最小生成树,这在例的最小生成树,这在例4 4中已经求得,中已经求得,也即按照图也即按照图11-1311-13的的(f)(f)设计,可使此网络的总的线路长度为最短,为设计,可使此网络的总的线路长度为最短,为1919百米。百米。“管理运筹学软件管理运筹学软件”有专门的子程序可以解决最小生成树问题。有专门的子程序可以解决最小生成树问题。v1331728541034v7v6v5v4v2v3图图11-1418管管 理理 运运 筹筹 学学44最大流问题最大流问题一、最大流问题一、最大流问题给一个带收发点的网络,其每条弧的赋权称之为容
21、量,在不超过每条给一个带收发点的网络,其每条弧的赋权称之为容量,在不超过每条弧的容量的前提下,求出从发点到收点的最大流量。弧的容量的前提下,求出从发点到收点的最大流量。二、最大流的数学模型二、最大流的数学模型例例6 某石油公司拥有一个管道网络,使用这个网络可以把石油从采地某石油公司拥有一个管道网络,使用这个网络可以把石油从采地运送到一些销售点,这个网络的一部分如下图所示。由于管道的直径运送到一些销售点,这个网络的一部分如下图所示。由于管道的直径的变化,它的各段管道(的变化,它的各段管道(vi,vj)的流量)的流量cij(容量)也是不一样的。(容量)也是不一样的。cij的的单位为万加仑单位为万加
22、仑/小时。如果使用这个网络系统从采地小时。如果使用这个网络系统从采地 v1向销地向销地 v7运送石运送石油,问每小时能运送多少加仑石油?油,问每小时能运送多少加仑石油?v563522241263v1v2v7v4v3v6图图11-26v519管管 理理 运运 筹筹 学学44最大流问题最大流问题 我们可以为此例题建立线性规划数学模型:我们可以为此例题建立线性规划数学模型:设弧设弧(vi,vj)上流量为上流量为fij,网络上的总的流量为,网络上的总的流量为F,则有:,则有:20管管 理理 运运 筹筹 学学44最大流问题最大流问题 在这个线性规划模型中,其约束条件中的前在这个线性规划模型中,其约束条件
23、中的前6 6个方程表示个方程表示了网络中的流量必须满足守恒条件,发点的流出量必须等于了网络中的流量必须满足守恒条件,发点的流出量必须等于收点的总流入量;其余的点称之为中间点,它的总流入量必收点的总流入量;其余的点称之为中间点,它的总流入量必须等于总流出量。其后面几个约束条件表示对每一条弧须等于总流出量。其后面几个约束条件表示对每一条弧(v(vi i,v,vj j)的流量的流量fij要满足流量的可行条件,应小于等于弧要满足流量的可行条件,应小于等于弧(v(vi i,v,vj j)的容量的容量c cijij,并大于等于零,即,并大于等于零,即0 0ffijij c cijij。我们把满。我们把满足
24、守恒条件及流量可行条件的一组网络流足守恒条件及流量可行条件的一组网络流 f fijij 称之为可行流,称之为可行流,(即线性规划的可行解),可行流中一组流量最大(也即发(即线性规划的可行解),可行流中一组流量最大(也即发出点总流出量最大)的称之为最大流(即线性规划的最优解)。出点总流出量最大)的称之为最大流(即线性规划的最优解)。我们把例我们把例6 6的数据代入以上线性规划模型,用的数据代入以上线性规划模型,用“管理运筹管理运筹学软件学软件”,马上得到以下的结果:,马上得到以下的结果:f f1212=5=5,f f1414=5=5,f f2323=2=2,f f2525=3=3,f f4343
25、=2=2,f f4646=1=1,f f4747=2=2,f f3535=2=2,f f3636=2=2,f f5757=5=5,f f6767=3=3。最优值。最优值(最大流量)(最大流量)=10=10。21管管 理理 运运 筹筹 学学 44最大流问题最大流问题三、最大流问题网络图论的解法三、最大流问题网络图论的解法(一)(一)对网络上弧的容量的表示作改进。对网络上弧的容量的表示作改进。为省去弧的方向,如下图为省去弧的方向,如下图:(a)和和(b)、(c)和和(d)的意义相同。的意义相同。vivjvivjcij0(a)(b)cijcijvivj(cji)(c)vivj cij cji(d)6
26、3522241263v1v2v5v7v4v3v600000000000用以上方法对例用以上方法对例6的图的容量标号作改进,得下图:的图的容量标号作改进,得下图:22管管 理理 运运 筹筹 学学 44最大流问题最大流问题(二)求最大流的基本算法(二)求最大流的基本算法1、找出一条从发点到收点所含边数最少的路,在这条路上的每一条弧顺、找出一条从发点到收点所含边数最少的路,在这条路上的每一条弧顺流方向的容量都大于零。如果不存在这样的路,则已经求得最大流。流方向的容量都大于零。如果不存在这样的路,则已经求得最大流。2、找出这条路上各条弧的最小的顺流的容量、找出这条路上各条弧的最小的顺流的容量pf,通过
27、这条路增加网络的流,通过这条路增加网络的流量量pf。3、在这条路上,减少每一条弧的顺流容量、在这条路上,减少每一条弧的顺流容量pf,同时增加这些弧的逆流容,同时增加这些弧的逆流容量量pf,返回步骤(,返回步骤(1)。)。用此方法对例用此方法对例6求解:求解:第一次迭代:选择路为第一次迭代:选择路为v1v4 v7。弧(。弧(v4,v7)的顺流容量为)的顺流容量为2,决定了决定了pf=2,改进的网络流量图如下图:,改进的网络流量图如下图:63522241263v1v2v5v7v4v3v600000000000420223管管 理理 运运 筹筹 学学44最大流问题最大流问题 第二次迭代:选择路为第二
28、次迭代:选择路为v1 v2 v5 v7。弧(。弧(v2,v5)的顺流容量为)的顺流容量为3,决定了,决定了pf=3,改进的网络流量图如下图:,改进的网络流量图如下图:635222413v1v2v5v7v4v3v60000000042022033303222413v1v2v5v7v4v3v600000042022033333013第三次迭代:选择路为第三次迭代:选择路为v1v4 v6 v7。弧(。弧(v4,v6)的顺流容量为)的顺流容量为1,决定了,决定了pf=1,改进的网络流量图如下图:,改进的网络流量图如下图:24管管 理理 运运 筹筹 学学 第四次迭代:选择路为第四次迭代:选择路为v1 v
29、4 v3 v6 v7。弧(。弧(v3,v6)的顺流)的顺流容量为容量为2,决定了,决定了pf=2,改进的网络流量图如下图:,改进的网络流量图如下图:22243v1v2v5v7v4v3v6100001203203335031200231322v1v2v5v7v4v3v6101202033350120231315002020544最大流问题最大流问题 第五次迭代:选择路为第五次迭代:选择路为v1 v2 v3 v5 v7。弧(。弧(v2,v3)的顺流容量为的顺流容量为2,决定了,决定了pf=2,改进的网络流量图如下图:,改进的网络流量图如下图:25管管 理理 运运 筹筹 学学 经过第五次迭代后在图中
30、已经找不到从发点到收点的一条路,路上经过第五次迭代后在图中已经找不到从发点到收点的一条路,路上的每一条弧顺流容量都大于零,运算停止。得到最大流量为的每一条弧顺流容量都大于零,运算停止。得到最大流量为10。最大流量图如下图:最大流量图如下图:22v1v2v5v7v4v3v612352235544最大流问题最大流问题 “管理运筹学软件管理运筹学软件”中还有专门的子程序用于解决最大流问题。中还有专门的子程序用于解决最大流问题。26管管 理理 运运 筹筹 学学55最小费用最大流问题最小费用最大流问题一、最小费用最大流问题:一、最小费用最大流问题:给了一个带收发点的网络,对每一条弧(给了一个带收发点的网
31、络,对每一条弧(vi,vj),除了给出容量),除了给出容量cij外,外,还给出了这条弧的单位流量的费用还给出了这条弧的单位流量的费用bij,要求一个最大流,要求一个最大流F,并使得总运,并使得总运送费用最小。送费用最小。二、最小费用最大流的数学模型二、最小费用最大流的数学模型例例7 由于输油管道的长短不一,所以在例由于输油管道的长短不一,所以在例6中每段管道(中每段管道(vi,vj)除了有)除了有不同的流量限制不同的流量限制cij外,还有不同的单位流量的费用外,还有不同的单位流量的费用bij,cij的单位为万加的单位为万加仑仑/小时,小时,bij的单位为百元的单位为百元/万加仑。如图。从采地万
32、加仑。如图。从采地 v1向销地向销地 v7运送石运送石油,怎样运送才能运送最多的石油并使得总的运送费用最小?求出最油,怎样运送才能运送最多的石油并使得总的运送费用最小?求出最大流量和最小费用。大流量和最小费用。(6,6)(3,4)(5,7)(2,5)(2,4)(2,3)(4,4)(1,3)(2,8)(3,2)v1v2v5v7v4v3v6(6,3)27管管 理理 运运 筹筹 学学55最小费用最大流问题最小费用最大流问题 这个最小费用最大流问题也是一个线性规划的问题。这个最小费用最大流问题也是一个线性规划的问题。解:我们用线性规划来求解此题,可以分两步走。解:我们用线性规划来求解此题,可以分两步走
33、。第一步,先求出此网络图中的最大流量第一步,先求出此网络图中的最大流量F,这已在例,这已在例6中建中建立了线性规划的模型,通过管理运筹学软件已经获得结果。立了线性规划的模型,通过管理运筹学软件已经获得结果。第二步,在最大流量第二步,在最大流量F的所有解中,找出一个最小费用的的所有解中,找出一个最小费用的解,我们来建立第二步中的线性规划模型如下:解,我们来建立第二步中的线性规划模型如下:仍然设弧(仍然设弧(vi,vj)上的流量为)上的流量为fij,这时已知网络中最大流,这时已知网络中最大流量为量为F,只要在例,只要在例6的约束条件上,再加上总流量必须等于的约束条件上,再加上总流量必须等于F的的约
34、束条件:约束条件:f12=f14=F,即得此线性规划的约束条件,此线性规划即得此线性规划的约束条件,此线性规划的目标函数显然是求其流量的最小费用的目标函数显然是求其流量的最小费用 fijbij。由此得到线性规划模型如下:由此得到线性规划模型如下:28管管 理理 运运 筹筹 学学55最小费用最大流问题最小费用最大流问题 29管管 理理 运运 筹筹 学学55最小费用最大流问题最小费用最大流问题 用管理运筹学软件,可求得如下结果:用管理运筹学软件,可求得如下结果:f f1212=4,f=4,f1414=6,f=6,f2525=3,f=3,f2323=1,f=1,f4343=3,F=3,F5757=5
35、,f=5,f3636=2,f=2,f4646=1,f=1,f4747=2,f=2,f6767=3,f=3,f3535=2=2。其最优值。其最优值(最小费用最小费用)=145)=145。对照前面例。对照前面例6 6的结果,的结果,可对最小费用最大流的概念有一个深刻的理解。可对最小费用最大流的概念有一个深刻的理解。如果我们把例如果我们把例7 7的问题改为:每小时运送的问题改为:每小时运送6 6万加仑的石油从万加仑的石油从采地采地v v1 1到销地到销地v v7 7最小费用是多少?应怎样运送?这就变成了一最小费用是多少?应怎样运送?这就变成了一个最小费用流的问题。一般来说,所谓最小费用流的问题就是:
36、个最小费用流的问题。一般来说,所谓最小费用流的问题就是:在给定了收点和发点并对每条弧在给定了收点和发点并对每条弧(v(vi i,v,vj j)赋权以容量赋权以容量c cijij及单位及单位费用费用b bijij的网络中,求一个给定值的网络中,求一个给定值f f的流量的最小费用,这个给的流量的最小费用,这个给定值定值f f的流量应小于等于最大流量的流量应小于等于最大流量F F,否则无解。求最小费用流,否则无解。求最小费用流的问题的线性规划的模型只要把最小费用最大流模型中的约束的问题的线性规划的模型只要把最小费用最大流模型中的约束条件中的发点流量条件中的发点流量F F改为改为f f即可。在例即可。
37、在例6 6中只要把中只要把f f1212+f+f1414=F=F改为改为f f1212+f+f1414=f=6=f=6得到了最小费用流的线性规划的模型了。得到了最小费用流的线性规划的模型了。30管管 理理 运运 筹筹 学学55最小费用最大流问题最小费用最大流问题三、最小费用最大流的网络图论解法三、最小费用最大流的网络图论解法对网络上弧(对网络上弧(vi,vj)的()的(cij,bij)的表示作如下改动,用)的表示作如下改动,用(b)来表示来表示(a)。vivjvivj(cij,bij)(0,-bij)(a)(b)(cij,bij)(cij,bij)vivj(cji,bji)(cij,bij)v
38、ivj(cji,bji)(0,-bji)(0,-bji)(c)(d)用上述方法对例用上述方法对例7中的图形进行改进,得图如下页:中的图形进行改进,得图如下页:31管管 理理 运运 筹筹 学学55最小费用最大流问题最小费用最大流问题求最小费用最大流的基本算法求最小费用最大流的基本算法 在对弧的标号作了改进的网络图上求最小费用最大流的基在对弧的标号作了改进的网络图上求最小费用最大流的基本算法与求最大流的基本算法完全一样,不同的只是在步本算法与求最大流的基本算法完全一样,不同的只是在步骤(骤(1)中要选择一条总的单位费用最小的路,而不是包含)中要选择一条总的单位费用最小的路,而不是包含边数最小的路。
39、边数最小的路。(6,6)(3,4)(5,7)(2,5)(0,-4)(2,3)(4,4)(1,3)(2,8)(3,2)v1v2v5v7v4v3v6(6,3)(0,-3)(0,-8)(0,-3)(0,-2)(0,-6)(0,-4)(0,-5)(2,4)(0,-7)(0,-4)(0,-3)图图11-2811-2832管管 理理 运运 筹筹 学学55最小费用最大流问题最小费用最大流问题用上述方法对例用上述方法对例7求解:求解:第一次迭代:找到最短路第一次迭代:找到最短路v1v4 v6 v7。v5(6,6)(3,4)(5,7)(2,5)(0,-4)(2,3)(3,4)(0,3)(2,8)(3,2)v1v
40、2v7v4v3v6(5,3)(1,-3)(0,-8)(1,-3)(0,-2)(0,-6)(0,-4)(0,-5)(2,4)(0,-7)(1,-4)(0,-3)图图11-2911-29第一次迭代后总流量为第一次迭代后总流量为1,总费用,总费用(3+3+4)1=10。33管管 理理 运运 筹筹 学学55最小费用最大流问题最小费用最大流问题第二次迭代:找到最短路第二次迭代:找到最短路v1 v4 v7。(6,6)(3,4)(5,7)(2,5)(0,-4)(2,3)(3,4)(0,3)(0,8)(3,2)v1v2v5v7v4v3v6(3,3)(3,-3)(2,-8)(1,-3)(0,-2)(0,-6)(
41、0,-4)(0,-5)(2,4)(0,-7)(1,-4)(0,-3)图图11-3011-30第二次迭代后总流量为第二次迭代后总流量为1+2=3,总费用,总费用10+(3+8)2=32。34管管 理理 运运 筹筹 学学55最小费用最大流问题最小费用最大流问题第三次迭代:找到最短路第三次迭代:找到最短路v1 v4 v3 v6 v7。(6,6)(3,4)(5,7)(2,5)(0,-4)(0,3)(1,4)(0,3)(0,8)(1,2)v1v2v5v7v4v3v6(1,3)(5,-3)(2,-8)(1,-3)(2,-2)(0,-6)(0,-4)(0,-5)(2,4)(0,-7)(3,-4)(2,-3)
42、图图11-3111-31第三次迭代后总流量为第三次迭代后总流量为3+2=5,总费用,总费用32+(3+2+3+4)2=56。35管管 理理 运运 筹筹 学学55最小费用最大流问题最小费用最大流问题第四次迭代:找到最短路第四次迭代:找到最短路v1 v4 v3 v5 v7。(6,6)(3,4)(4,7)(2,5)(1,-4)(0,3)(1,4)(0,3)(0,8)(0,2)v1v2v5v7v4v3v6(1,3)(6,-3)(2,-8)(1,-3)(3,-2)(0,-6)(0,-4)(0,-5)(1,4)(1,-7)(3,-4)(2,-3)图图11-3211-32第四次迭代后总流量为第四次迭代后总流
43、量为5+1=6,总费用,总费用56+(3+2+4+7)1=72。36管管 理理 运运 筹筹 学学55最小费用最大流问题最小费用最大流问题 第五次迭代:找到最短路第五次迭代:找到最短路v1 v2 v5 v7。(3,6)(0,4)(1,7)(2,5)(1,-4)(0,3)(1,4)(0,3)(0,8)(0,2)v1v2v5v7v4v3v6(0,3)(6,-3)(2,-8)(1,-3)(3,-2)(3,-6)(3,-4)(0,-5)(1,4)(4,-7)(3,-4)(2,-3)图图11-3311-33第五次迭代后总流量为第五次迭代后总流量为6+3=9,总费用,总费用72+(6+4+7)3=123。3
44、7管管 理理 运运 筹筹 学学55最小费用最大流问题最小费用最大流问题 第六次迭代:找到最短路第六次迭代:找到最短路v1v2 v3 v5 v7。(3,6)(0,4)(1,7)(2,5)(1,-4)(0,3)(1,4)(0,3)(0,8)(0,2)v1v2v5v7v4v3v6(0,3)(6,-3)(2,-8)(1,-3)(3,-2)(3,-6)(3,-4)(0,-5)(1,4)(4,-7)(3,-4)(2,-3)图图11-3411-34第六次迭代后总流量为第六次迭代后总流量为9+1=10,总费用,总费用123+(6+5+4+7)=145。已经找不到从已经找不到从v1到到v7的每条弧容量都大于零的
45、路了,故已求得的每条弧容量都大于零的路了,故已求得最小费用最大流了,即最小费用为最小费用最大流了,即最小费用为145百元,最大流为百元,最大流为10万加仑。万加仑。38管管 理理 运运 筹筹 学学55最小费用最大流问题最小费用最大流问题 如果对例如果对例7求一个最小费用流的问题:每小时运送求一个最小费用流的问题:每小时运送6万加仑万加仑石油从石油从v1到到v7的最小费用是多少,或者每小时运送的最小费用是多少,或者每小时运送7万加仑呢万加仑呢?我们可以从第四次迭代及图?我们可以从第四次迭代及图11-32即可得到运送即可得到运送6万加仑最小万加仑最小费用费用72百元,其运送方式通过比较图百元,其运
46、送方式通过比较图11-28及图及图11-32即得图即得图11-36所示。所示。123126v1v2v5v4v3v6631v7图图11-3639管管 理理 运运 筹筹 学学55最小费用最大流问题最小费用最大流问题 12123126v1v2v5v4v3v6311v7图图11-37注:注:“管理运筹学软件管理运筹学软件”有专门的子程序用于解决这类问题。有专门的子程序用于解决这类问题。至于每小时运送至于每小时运送7万加仑,我们可以在图万加仑,我们可以在图11-36的基础上,的基础上,再按第五次迭代所选的最短路运送再按第五次迭代所选的最短路运送1万加仑即得最小费用:万加仑即得最小费用:72+117=89百元,其运送方式如图百元,其运送方式如图11-37所示。所示。40