版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第二講:圖論模型7月30日?qǐng)D論基礎(chǔ)專題(老內(nèi)容)一圖的基本概念二三最短路問題及其算法四最小生成樹問題圖的矩陣表示新內(nèi)容歐拉圖與哈密頓圖匹配問題網(wǎng)絡(luò)流圖的染色
數(shù)學(xué)建模-圖論42023年2月5日
一、圖的基本概念若將圖G的每一條邊e都對(duì)應(yīng)一個(gè)實(shí)數(shù)F(e),則稱F(e)為該邊的權(quán),并稱圖G為賦權(quán)圖,記為G=(V,E,F
).
設(shè)G=(V,E)是一個(gè)圖,v0,v1,…,vk∈V,且“1≤i≤k,vi-1vi∈E,則稱v0v1…
vk是G的一條通路.
如果通路中沒有相同的頂點(diǎn),則稱此通路為路徑,簡稱路.始點(diǎn)和終點(diǎn)相同的路稱為圈或回路.
一、圖的基本概念數(shù)學(xué)建模-圖論頂點(diǎn)u與v稱為連通的,如果存在u到v通路,任二頂點(diǎn)都連通的圖稱為連通圖,否則,稱為非連通圖。極大連通子圖稱為連通分圖。
連通而無圈的圖稱為樹,常用T表示樹.樹中最長路的邊數(shù)稱為樹的高,度數(shù)為1的頂點(diǎn)稱為樹葉。其余的頂點(diǎn)稱為分枝點(diǎn)。樹的邊稱為樹枝。設(shè)G是有向圖,如果G的底圖是樹,則稱G是有向樹,也簡稱樹。
一、圖的基本概念數(shù)學(xué)建模-圖論鄰接矩陣(結(jié)點(diǎn)與結(jié)點(diǎn)的關(guān)系)關(guān)聯(lián)矩陣(結(jié)點(diǎn)與邊的關(guān)系)路徑矩陣(任意兩結(jié)點(diǎn)之間是否有路徑)可達(dá)性矩陣直達(dá)矩陣等等……二、圖的矩陣表示數(shù)學(xué)建模-圖論1有向圖的鄰接矩陣
A=(aij)n×n
(n為結(jié)點(diǎn)數(shù))
例1:寫出右圖的鄰接矩陣:解:二、圖的矩陣表示數(shù)學(xué)建模-圖論2有向圖的權(quán)矩陣A=(aij)n×n
(n為結(jié)點(diǎn)數(shù))
例2:寫出右圖的權(quán)矩陣:解:二、圖的矩陣表示數(shù)學(xué)建模-圖論3有向圖的關(guān)聯(lián)矩陣A=(aij)n×m
(n為結(jié)點(diǎn)數(shù)m為邊數(shù))
有向圖:無向圖:
二、圖的矩陣表示數(shù)學(xué)建模-圖論例3:分別寫出右邊兩圖的關(guān)聯(lián)矩陣解:分別為:
二、圖的矩陣表示
數(shù)學(xué)建模-圖論
二、圖的矩陣表示(應(yīng)用實(shí)例及解法分析)數(shù)學(xué)建模-圖論商人過河問題:假如有三個(gè)商人各帶一名隨從要過河,只有一條船,每次最多只能坐兩個(gè)人。為安全起見,商人數(shù)不能少于隨從數(shù),否則隨從會(huì)殺人越貨。船過一次河需要5分鐘,問最短幾分鐘能使他們都過去?用鄰接矩陣來解決:設(shè)(m,n,l)表示左岸商人m人,隨從n人;設(shè)(m,n,r)表示右岸有商人m人,隨從n人。從左岸到右岸去,所有可能的狀態(tài)為:v1=(3,3,l),v2=(3,2,l),v3=(3,1,l),v4=(3,0,l),v5=(2,2,l),v6=(1,1,l),v7=(0,3,l),v8=(0,2,l),v9=(0,1,l),v10=(3,3,r),v11=(3,2,r),v12=(3,1,r),v13=(3,0,r),v14=(2,2,r),v15=(1,1,r),v16=(0,3,r),v17=(0,2,r),v18=(0,1,r).
二、圖的矩陣表示(應(yīng)用實(shí)例及解法分析)數(shù)學(xué)建模-圖論V10v11v12v13v14v15v16v17v18v1
v2v3v4v5v6v7v8v9渡河可以理解為上面狀態(tài)的轉(zhuǎn)移,例如狀態(tài)v1渡河一次可以轉(zhuǎn)化為其他狀態(tài)v15v17v18,其他狀態(tài)也易列出。以V={v1,
v2,...v18}為頂點(diǎn)集,當(dāng)兩種狀態(tài)可以互相轉(zhuǎn)化時(shí),就在相應(yīng)的來那個(gè)頂點(diǎn)間連一邊,從而建立一個(gè)二分圖G=<V,E>,如右圖所示。G=<V,E>的鄰接矩陣為:
二、圖的矩陣表示(應(yīng)用實(shí)例及解法分析)數(shù)學(xué)建模-圖論V10v11v12v13v14v15v16v17v18v1
v2v3v4v5v6v7v8v9其中,矩陣B為:記a(k)ij為Ak中的(i,j)元,目標(biāo)是使a(k)1,10不等于0的最小的自然數(shù)k.
利用matlab容易計(jì)算出k=11,且a(11)1,10=4,即小船至少11次才能把所有人全部運(yùn)到右岸,說明共有4種不同的過河方案。繼續(xù)計(jì)算可得出a(19)1,10=45060,如果允許小船過河19次的話,共有45060中不同的方案。若將圖G的每一條邊e都對(duì)應(yīng)一個(gè)實(shí)數(shù)F(e),則稱F(e)為該邊的權(quán),并稱圖G為賦權(quán)圖,記為G=(V,E,F
).
設(shè)G=(V,E)是一個(gè)圖,v0,v1,…,vk∈V,且“1≤i≤k,vi-1vi∈E,則稱v0v1…
vk是G的一條通路.如果通路中沒有相同的頂點(diǎn),則稱此通路為路徑,簡稱路.對(duì)于賦權(quán)圖,路的長度(即路的權(quán))通常指路上所有邊的權(quán)之和。最短路問題:求賦權(quán)圖上指定點(diǎn)之間的權(quán)最小的路。
三、最短路問題及其算法數(shù)學(xué)建模-圖論重要性質(zhì):若v0v1…
vm是G中從v0到vm的最短路,則對(duì)1≤k≤m,v0v1…
vk必為G中從v0到vk的最短路.即:最短路是一條路,且最短路的任一段也是最短路。數(shù)學(xué)建模-圖論
三、最短路問題及其算法
設(shè)有給定連接若干城市的公路網(wǎng),尋求從指定城市到各城市的最短路線。
2、應(yīng)用實(shí)例:最短路問題
問題的數(shù)學(xué)模型:
三、最短路問題及其算法172023年2月5日數(shù)學(xué)建模-圖論182023年2月5日
三、最短路問題及其算法數(shù)學(xué)建模-圖論254647109137106648192023年2月5日
三、最短路問題及其算法數(shù)學(xué)建模-圖論202023年2月5日
三、最短路問題及其算法數(shù)學(xué)建模-圖論212023年2月5日
三、最短路問題及其算法數(shù)學(xué)建模-圖論222023年2月5日
三、最短路問題及其算法數(shù)學(xué)建模-圖論254647109137106648232023年2月5日
三、最短路問題及其算法數(shù)學(xué)建模-圖論242023年2月5日
三、最短路問題及其算法數(shù)學(xué)建模-圖論252023年2月5日
三、最短路問題及其算法數(shù)學(xué)建模-圖論262023年2月5日
三、最短路問題及其算法數(shù)學(xué)建模-圖論254647109137106648272023年2月5日
三、最短路問題及其算法數(shù)學(xué)建模-圖論282023年2月5日
三、最短路問題及其算法數(shù)學(xué)建模-圖論292023年2月5日
三、最短路問題及其算法數(shù)學(xué)建模-圖論254647109137106648302023年2月5日
三、最短路問題及其算法數(shù)學(xué)建模-圖論312023年2月5日數(shù)學(xué)建模-圖論
三、最短路問題及其算法322023年2月5日數(shù)學(xué)建模-圖論求v1到v6的最短路問題.
三、最短路問題及其算法332023年2月5日數(shù)學(xué)建模-圖論從上圖中容易得到v1到v6只有兩條路:v1v3v6和v1v4v6.
而這兩條路都是v1到v6的最短路.
三、最短路問題及其算法頂點(diǎn)u與v稱為連通的,如果存在u-v通路,任二頂點(diǎn)都連通的圖稱為連通圖,否則,稱為不連通圖。極大連通子圖稱為連通分圖。
連通而無圈的圖稱為樹,常用T表示樹.樹中最長路的邊數(shù)稱為樹的高的度為1的頂點(diǎn)稱為樹葉。其余的頂點(diǎn)稱為分枝點(diǎn)。樹的邊稱為樹枝。設(shè)G是有向圖,如果G的底圖是樹,則稱G是有向樹,也簡稱樹。
四、最小生成樹問題及其算法數(shù)學(xué)建模-圖論若任意一個(gè)連通的圖G=<V,E>的生成子圖T=<V’,E’>(V’=V,E’為E的子集)為樹,這棵樹T稱為圖G的生成樹.設(shè)T是圖G的一棵生成樹,用F(T)表示樹T中所有邊的權(quán)數(shù)之和,F(T)稱為樹T的權(quán).一個(gè)連通圖G的生成樹一般不止一棵,圖G的所有生成樹中權(quán)數(shù)最小的生成樹稱為圖G的最小生成樹.數(shù)學(xué)建模-圖論
四、最小生成樹問題及其算法怎樣找出最小生成樹???G
T1T2T3T4T5T6T7T8T1至T8是圖G的生成樹數(shù)學(xué)建模-圖論
四、最小生成樹問題及其算法Kruskal算法思想:在不形成圈得條件下,優(yōu)先挑選權(quán)小的邊形成生成樹。76788334245v1v2v3v4v5v6v7683324v1v2v3v4v5v6v7數(shù)學(xué)建模-圖論
四、最小生成樹問題及其算法注:算法構(gòu)造的最小生成樹的邊集為E1;標(biāo)號(hào)l
具有性質(zhì):當(dāng)且僅當(dāng)u、v之間有一條僅由E1
中的邊形成的路時(shí),l(u)=l(v),因此在步驟(2)發(fā)現(xiàn)l(u)=l(v)時(shí),(u,v)不能放入E1,否則會(huì)形成一個(gè)圈。
數(shù)學(xué)建模-圖論
四、最小生成樹問題及其算法392023年2月5日
四、最小生成樹問題及其算法數(shù)學(xué)建模-圖論402023年2月5日
四、最小生成樹問題及其算法數(shù)學(xué)建模-圖論412023年2月5日
四、最小生成樹問題及其算法數(shù)學(xué)建模-圖論運(yùn)行結(jié)果如下:T=135163266674c=26上述例題的matlab程序如下:b=[11223334556;26364677677;24458378376];Krusf(b,1);76788334245v1v2v3v4v5v6v7683324v1v2v3v4v5v6v7422023年2月5日
四、最小生成樹問題及其算法數(shù)學(xué)建模-圖論
432023年2月5日
四、最小生成樹問題及其算法數(shù)學(xué)建模-圖論442023年2月5日
四、最小生成樹問題及其算法數(shù)學(xué)建模-圖論452023年2月5日
四、最小生成樹問題及其算法數(shù)學(xué)建模-圖論
運(yùn)行結(jié)果如下:T=116663263574c=24336876788334245v1v2v3v4v5v6v7歐拉圖與哈密頓圖歐拉圖定義15.1通過圖(無向圖或有向圖)中所有邊一次且僅一次行遍圖中所有頂點(diǎn)的通路稱為歐拉通路,通過圖中所有邊一次并且僅一次行遍所有頂點(diǎn)的回路稱為歐拉回路。具有歐拉回路的圖稱為歐拉圖,具有歐拉通路而無歐拉回路的圖稱為半歐拉圖。說明 歐拉通路是圖中經(jīng)過所有邊的簡單的生成通路(經(jīng)過所有頂點(diǎn)的通路稱為生成通路)。 歐拉回路是經(jīng)過所有邊的簡單的生成回路。舉例歐拉圖半歐拉圖無歐拉通路歐拉圖無歐拉通路無歐拉通路無向歐拉圖的判定定理定理15.1無向圖G是歐拉圖當(dāng)且僅當(dāng)G是連通圖,且G中沒有奇度頂點(diǎn)。證明 若G是平凡圖,結(jié)論顯然成立。下面設(shè)G為非平凡圖,設(shè)G是m條邊的n階無向圖,并設(shè)G的頂點(diǎn)集V={v1,v2,…,vn}。必要性。因?yàn)镚為歐拉圖,所以G中存在歐拉回路,設(shè)C為G中任意一條歐拉回路,vi,vj∈V,vi,vj都在C上,因而vi,vj連通,所以G為連通圖。 又vi∈V,vi在C上每出現(xiàn)一次獲得2度, 若出現(xiàn)k次就獲得2k度,即d(vi)=2k, 所以G中無奇度頂點(diǎn)。定理15.1的證明充分性。由于G為非平凡的連通圖可知,G中邊數(shù)m≥1。對(duì)m作歸納法。(1)m=1時(shí),由G的連通性及無奇度頂點(diǎn)可知,
G只能是一個(gè)環(huán),因而G為歐拉圖。(2)設(shè)m≤k(k≥1)時(shí)結(jié)論成立,要證明m=k+1時(shí),結(jié)論也成立。 由G的連通性及無奇度頂點(diǎn)可知,δ(G)≥2。 無論G是否為簡單圖,都可以用擴(kuò)大路徑法證明G中必含圈。定理15.1的證明設(shè)C為G中一個(gè)圈,刪除C上的全部邊,得G的生成子圖G,設(shè)G有s個(gè)連通分支G1,G2,…,Gs,每個(gè)連通分支至多有k條邊,且無奇度頂點(diǎn),并且設(shè)Gi與C的公共頂點(diǎn)為v*ji,i=1,2,…,s,由歸納假設(shè)可知,G1,G2,…,Gs都是歐拉圖,因而都存在歐拉回路Ci,i=1,2,…,s。最后將C還原(即將刪除的邊重新加上),并從C上的某頂點(diǎn)vr開始行遍,每遇到v*ji,就行遍Gi中的歐拉回路Ci,i=1,2,…,s,最后回到vr,得回路vr…v*j1…v*j1…v*j2…v*j2…v*js…v*js…vr,此回路經(jīng)過G中每條邊一次且僅一次并行遍G中所有頂點(diǎn),因而它是G中的歐拉回路(演示這條歐拉回路),故G為歐拉圖。定理15.2無向圖G是半歐拉圖當(dāng)且僅當(dāng)G是連通的,且G中恰有兩個(gè)奇度頂點(diǎn)。證明
必要性。設(shè)G是m條邊的n階無向圖,因?yàn)镚為半歐拉圖, 因而G中存在歐拉通路(但不存在歐拉回路), 設(shè)Г=vi0ej1vi1…vim-1ejmvim為G中一條歐拉通路,vi0≠vim。
v∈V(G),若v不在Г的端點(diǎn)出現(xiàn),顯然d(v)為偶數(shù), 若v在端點(diǎn)出現(xiàn)過,則d(v)為奇數(shù), 因?yàn)椐ぶ挥袃蓚€(gè)端點(diǎn)且不同,因而G中只有兩個(gè)奇數(shù)頂點(diǎn)。 另外,G的連通性是顯然的。半歐拉圖的判定定理定理15.2無向圖G是半歐拉圖當(dāng)且僅當(dāng)G是連通的,且G中恰有兩個(gè)奇度頂點(diǎn)。證明
充分性。設(shè)G的兩個(gè)奇度頂點(diǎn)分別為u0和v0, 對(duì)G加新邊(u0,v0),得G=G∪(u0,v0), 則G是連通且無奇度頂點(diǎn)的圖, 由定理15.1可知,G為歐拉圖, 因而存在歐拉回路C,而C=C-(u0,v0)為G中一條歐拉通路, 所以G為半歐拉圖。半歐拉圖的判定定理有向歐拉圖的判定定理定理15.3有向圖D是歐拉圖當(dāng)且僅當(dāng)D是強(qiáng)連通的且每個(gè)頂點(diǎn)的入度都等于出度。定理15.4有向圖D是半歐拉圖當(dāng)且僅當(dāng)D是單向連通的,且D中恰有兩個(gè)奇度頂點(diǎn),其中一個(gè)的入度比出度大1,另一個(gè)的出度比入度大1,而其余頂點(diǎn)的入度都等于出度。(舉例)定理15.5
G是非平凡的歐拉圖當(dāng)且僅當(dāng)G是連通的且為若干個(gè)邊不重的圈的并。例15.1例15.1設(shè)G是非平凡的且非環(huán)的歐拉圖,證明: (1)λ(G)≥2。 (2)對(duì)于G中任意兩個(gè)不同頂點(diǎn)u,v,都存在簡單回路C含u和v。證明(1)由定理15.5可知,e∈E(G),存在圈C,e在C中, 因而p(G-e)=p(G),故e不是橋。 由e的任意性λ(G)≥2,即G是2邊-連通圖。(2)u,v∈V(G),u≠v,由G的連通性可知,u,v之間必存在路徑Г1,設(shè)G=G-E(Г1),則在G中u與v還必連通, 否則,u與v必處于G的不同的連通分支中, 這說明在Г1上存在G中的橋,這與(1)矛盾。 于是在G中存在u到v的路徑Г2,顯然Г1與Г2邊不重, 這說明u,v處于Г1∪Г2形成的簡單回路上。求歐拉圖中歐拉回路的算法Fleury算法,能不走橋就不走橋
(1)任取v0∈V(G),令P0=v0。(2)設(shè)Pi=v0e1v1e2…eivi已經(jīng)行遍,按下面方法來從
E(G)-{e1,e2,…,ei}中選取ei+1: (a)ei+1與vi相關(guān)聯(lián); (b)除非無別的邊可供行遍,否則ei+1不應(yīng)該為
Gi=G-{e1,e2,…,ei}中的橋。(3)當(dāng)(2)不能再進(jìn)行時(shí),算法停止。說明 可以證明,當(dāng)算法停止時(shí)所得簡單回路
Pm=v0e1v1e2…emvm(vm=v0) 為G中一條歐拉回路。Fleury算法示例例15.2下圖是給定的歐拉圖G。某人用Fleury算法求G中的歐拉回路時(shí),走了簡單回路v2e2v3e3v4e14v9e10v2e1v1e8v8e9v2之后(觀看他的錯(cuò)誤走法),無法行遍了,試分析在哪步他犯了錯(cuò)誤?解答此人行遍v8時(shí)犯了能不走橋就不走橋的錯(cuò)誤,因而他沒行遍出歐拉回路。 當(dāng)他走到v8時(shí),G-{e2,e3,e14,e10,e1,e8}為下圖所示。此時(shí)e9為該圖中的橋,而e7,e11均不是橋,他不應(yīng)該走e9,而應(yīng)該走e7或e11,他沒有走,所以犯了錯(cuò)誤。注意,此人在行遍中,在v3遇到過橋e3,v1處遇到過橋e8,但當(dāng)時(shí)除橋外他無別的邊可走,所以當(dāng)時(shí)均走了橋,這是不會(huì)犯錯(cuò)誤的。哈密頓圖定義15.2經(jīng)過圖(有向圖或無向圖)中所有頂點(diǎn)一次且僅一次的通路稱為哈密頓通路。經(jīng)過圖中所有頂點(diǎn)一次且僅一次的回路稱為哈密頓回路。具有哈密頓回路的圖稱為哈密頓圖,具有哈密頓通路但不具有哈密頓回路的圖稱為半哈密頓圖。平凡圖是哈密頓圖。說明 哈密頓通路是圖中生成的初級(jí)通路, 哈密頓回路是生成的初級(jí)回路。 判斷一個(gè)圖是否為哈密頓圖,就是判斷能否將圖中所有頂點(diǎn)都放置在一個(gè)初級(jí)回路(圈)上,但這不是一件易事。 與判斷一個(gè)圖是否為歐拉圖不一樣,到目前為止,人們還沒有找到哈密頓圖簡單的充分必要條件。例題(1)(2)是哈密頓圖。(3)是半哈密頓圖。(4)既不是哈密頓圖,也不是半哈密頓圖。定理15.6定理15.6設(shè)無向圖G=<V,E>是哈密頓圖,對(duì)于任意V1V,且V1≠,均有
p(G-V1)≤|V1| 其中,p(G-V1)為G-V1的連通分支數(shù)。證明
設(shè)C為G中任意一條哈密頓回路, 易知,當(dāng)V1中頂點(diǎn)在C上均不相鄰時(shí),
p(C-V1)達(dá)到最大值|V1|, 而當(dāng)V1中頂點(diǎn)在C上有彼此相鄰的情況時(shí), 均有p(C-V1)<|V1|,所以有p(C-V1)≤|V1|。 而C是G的生成子圖,所以,有p(G-V1)≤p(C-V1)≤|V1|。說明 本定理的條件是哈密頓圖的必要條件,但不是充分條件。 可以驗(yàn)證彼得松圖滿足定理中的條件,但不是哈密頓圖。 若一個(gè)圖不滿足定理中的條件,它一定不是哈密頓圖。推論推論設(shè)無向圖G=<V,E>是半哈密頓圖,對(duì)于任意的V1V且V1≠,均有p(G-V1)≤|V1|+1證明 設(shè)P是G中起于u終于v的哈密頓通路, 令G=G∪(u,v)(在G的頂點(diǎn)u,v之間加新邊), 易知G為哈密頓圖, 由定理15.6可知,p(G-V1)≤|V1|。 因此,p(G-V1)=p(G-V1-(u,v)) ≤p(G-V1)+1 ≤|V1|+1例15.3例15.3在下圖中給出的三個(gè)圖都是二部圖。它們中的哪些是哈密頓圖?哪些是半哈密頓圖?為什么?易知互補(bǔ)頂點(diǎn)子集
V1={a,f}
V2={b,c,d,e}設(shè)此二部圖為G1,則G1=<V1,V2,E>。p(G1-V1)=4>|V1|=2,由定理15.6及其推論可知,G1不是哈密頓圖,也不是半哈密頓圖。例15.3設(shè)圖為G2,則G2=<V1,V2,E>,其中V1={a,g,h,i,c},V2={b,e,f,j,k,d},易知,p(G2-V1)=|V2|=6>|V1|=5,由定理15.6可知,G2不是哈密頓圖,但G2是半哈密頓圖。baegjckhfid為G2中一條哈密頓通路。設(shè)圖為G3。G3=<V1,V2,E>,其中V1={a,c,g,h,e},V2={b,d,i,j,f},G3中存在哈密頓回路。如abcdgihjefa,所以G3是哈密頓圖。例15.3的說明哈密頓通路是經(jīng)過圖中所有頂點(diǎn)的一條初級(jí)通路。哈密頓回路是經(jīng)過圖中所有頂點(diǎn)的初級(jí)回路。對(duì)于二部圖還能得出下面結(jié)論: 一般情況下,設(shè)二部圖G=<V1,V2,E>,|V1|≤|V2|,且|V1|≥2,|V2|≥2,由定理15.6及其推論可以得出下面結(jié)論: (1)若G是哈密頓圖,則|V1|=|V2|。 (2)若G是半哈密頓圖,則|V2|=|V1|+1。 (3)若|V2|≥|V1|+2,則G不是哈密頓圖,也不是半哈密頓圖。例15.4設(shè)G是n階無向連通圖。證明:若G中有割點(diǎn)或橋,則G不是哈密頓圖。證明可用定理15.6證明。定理15.7定理15.7設(shè)G是n階無向簡單圖,若對(duì)于G中任意不相鄰的頂點(diǎn)vi,vj,均有
d(vi)+d(vj)≥n-1 (15.1) 則G中存在哈密頓通路。證明
首先證明G是連通圖。 否則G至少有兩個(gè)連通分支, 設(shè)G1,G2是階數(shù)為n1,n2的兩個(gè)連通分支, 設(shè)v1∈V(G1),v2∈V(G2),因?yàn)镚是簡單圖,所以
dG(v1)+dG(v2)=dG1(v1)+dG2(v2)≤n1-1+n2-1≤n-2
這與(15.1)矛盾,所以G必為連通圖。定理15.7下面證G中存在哈密頓通路。設(shè)Г=v1v2…vl為G中用“擴(kuò)大路徑法”得到的“極大路徑”,即Г的始點(diǎn)v1與終點(diǎn)vl不與Г外的頂點(diǎn)相鄰。顯然有l(wèi)≤n。(1)若l=n,則Г為G中哈密頓通路。(2)若l<n,這說明Г不是哈密頓通路, 即G中還存在著Г外的頂點(diǎn)。 但可以證明G中存在經(jīng)過Г上所有頂點(diǎn)的圈。 (a) 若v1與vl相鄰,即(v1,vl)∈E(G), 則Г∪(v1,vl)為滿足要求的圈。定理15.7(b)若v1與vl不相鄰,設(shè)v1與Г上的vi1=v2,vi2,…,vik相鄰(k≥2) (否則d(v1)+d(vl)≤1+l-2=l-1<n-1,這與(15.1)矛盾) 此時(shí),vl至少與vi2,…,vik相鄰的頂點(diǎn)vi2-1,…,vik-1之一相鄰 (否則d(v1)+d(vl)≤k+l-2-(k-1)=l-1<n-1)
設(shè)vl與vir-1相鄰(2≤r≤k),見下圖所示。于是,回路
C=v1v2…vir-1vlvlr-1…vi…virv1過Г上的所有頂點(diǎn)。定理15.7(c)下面證明存在比Г更長的路徑。 因?yàn)閘<n,所以C外還有頂點(diǎn),由G的連通性可知, 存在vl+1∈V(G)-V(C)與C上某頂點(diǎn)vt相鄰,見下圖所示。刪除邊(vt-1,vt)得路徑Г=vt-1…v1vir…vlvir-1…vtvl+1比Г長度大1,對(duì)Г上的頂點(diǎn)重新排序,使其成為Г=v1v2…vlvl+1,對(duì)Г重復(fù)(a)~(c),在有限步內(nèi)一定得到G的哈密頓通路。定理15.7的推論推論設(shè)G為n(n≥3)階無向簡單圖,若對(duì)于G中任意兩個(gè)不相鄰的頂點(diǎn)vi,vj,均有d(vi)+d(vj)≥n (15.2) 則G中存在哈密頓回路,從而G為哈密頓圖。證明由定理15.7可知,G中存在哈密頓通路, 設(shè)Г=v1v2…vn為G中一條哈密頓通路, 若v1與vn相鄰,設(shè)邊e=(v1,vn),則Г∪{e}為G中哈密頓回路。 若v1與vn不相鄰,應(yīng)用(15.2),同定理15.7證明中的(2)類似,可證明存在過Г上各頂點(diǎn)的圈, 此圈即為G中的哈密頓回路。定理15.8定理15.8設(shè)u,v為n階無向圖G中兩個(gè)不相鄰的頂點(diǎn),且d(u)+d(v)≥n,則G為哈密頓圖當(dāng)且僅當(dāng)G∪(u,v)為哈密頓圖((u,v)是加的新邊)。證明 (略)。例15.5例15.5在某次國際會(huì)議的預(yù)備會(huì)議中,共有8人參加,他們來自不同的國家。已知他們中任何兩個(gè)無共同語言的人中的每一個(gè),與其余有共同語言的人數(shù)之和大于或等于8,問能否將這8個(gè)人排在圓桌旁,使其任何人都能與兩邊的人交談。解答
設(shè)8個(gè)人分別為v1,v2,…,v8,作無向簡單圖G=<V,E>, 其中V={v1,v2,…,v8},vi,vj∈V,且i≠j, 若vi與vj有共同語言,就在vi,vj之間連無向邊(vi,vj), 由此組成邊集合E,則G為8階無向簡單圖, vi∈V,d(vi)為與vi有共同語言的人數(shù)。 由已知條件可知,vi,vj∈V且i≠j,均有d(vi)+d(vj)≥8。 由定理15.7的推論可知,G中存在哈密頓回路, 設(shè)C=vi1vi2…vi8為G中一條哈密頓回路, 按這條回路的順序安排座次即可。哈密頓圖是能將圖中所有頂點(diǎn)都能安排在某個(gè)初級(jí)回路上的圖。定理15.9定理15.9若D為n(n≥2)階競賽圖,則D中具有哈密頓通路。證明
對(duì)n作歸納法。
n=2時(shí),D的基圖為K2,結(jié)論成立。 設(shè)n=k時(shí)結(jié)論成立。現(xiàn)在設(shè)n=k+1。 設(shè)V(D)={v1,v2,…,vk,vk+1}。 令D1=D-vk+1,易知D1為k階競賽圖, 由歸納假設(shè)可知,D1存在哈密頓通路, 設(shè)Г1=v1v2…vk為其中一條。定理15.9下面證明vk+1可擴(kuò)到Г1中去。若存在vr(1≤r≤k),有<vi,vk+1>∈E(D),i=1,2,…,r-1,而<vk+1,vr>∈E(D),見左圖所示,則Г=v1v2…vr-1vk+1vr…vk為D中哈密頓通路。否則i∈{1,2,…,k},均有<vi,vk+1>∈E(D),見右圖所示,則Г=Г∪<vi,vk+1>為D中哈密頓通路。例15.6下圖所示的三個(gè)圖中哪些是哈密頓圖?哪些是半哈密頓圖?(1)存在哈密頓回路,所以(1)為哈密頓圖。(2)取V1={a,b,c,d,e},從圖中刪除V1得7個(gè)連通分支,由定理15.6和推論可知,不是哈密頓圖,也不是半哈密頓圖。(3)取V1={b,e,h},從圖中刪除V1得4個(gè)連通分支,由定理15.6可知,它不是哈密頓圖。但存在哈密頓通路,所以是半哈密頓圖。15.3帶權(quán)圖與貨郎擔(dān)問題定義15.3給定圖G=<V,E>(G為無向圖或有向圖),設(shè)W:E→R(R為實(shí)數(shù)集),對(duì)G中任意的邊e=(vi,vj)(G為有向圖時(shí),e=<vi,vj>),設(shè)W(e)=wij,稱實(shí)數(shù)wij為邊e上的權(quán),并將wij標(biāo)注在邊e上,稱G為帶權(quán)圖,此時(shí)常將帶權(quán)圖G記作<V,E,W>。設(shè)GG,
稱W(e)為G的權(quán),并記作W(G),即W(G)=帶權(quán)圖應(yīng)用的領(lǐng)域是相當(dāng)廣泛的,許多圖論算法都是針對(duì)帶權(quán)圖的。貨郎擔(dān)問題設(shè)有n個(gè)城市,城市之間均有道路,道路的長度均大于或等于0,可能是∞(對(duì)應(yīng)關(guān)聯(lián)的城市之間無交通線)。一個(gè)旅行商從某個(gè)城市出發(fā),要經(jīng)過每個(gè)城市一次且僅一次,最后回到出發(fā)的城市,問他如何走才能使他走的路線最短? 這就是著名的旅行商問題或貨郎擔(dān)問題。這個(gè)問題可化歸為如下的圖論問題。 設(shè)G=<V,E,W>,為一個(gè)n階完全帶權(quán)圖Kn,各邊的權(quán)非負(fù),且有的邊的權(quán)可能為∞。求G中一條最短的哈密頓回路,這就是貨郎擔(dān)問題的數(shù)學(xué)模型。此問題中不同哈密頓回路的含義: 將圖中生成圈看成一個(gè)哈密頓回路,即不考慮始點(diǎn)(終點(diǎn))的區(qū)別以及順時(shí)針行遍與逆時(shí)針行遍的區(qū)別。例15.7例15.7下圖為4階完全帶權(quán)圖K4。求出它的不同的哈密頓回路,并指出最短的哈密頓回路。解答
由于貨郎擔(dān)問題中不同哈密頓回路的含義可知,求哈密頓回路從任何頂點(diǎn)出發(fā)都可以。下面先求出從a點(diǎn)出發(fā),考慮順時(shí)針與逆時(shí)針順序的不同的哈密頓回路。
C1=abcda
C2=abdca C3=acbda
C4=acdba
C5=adbca
C6=adcba帶權(quán)圖的說明n階完全帶權(quán)圖中共存在(n-1)!/2種不同的哈密頓回路,經(jīng)過比較,可找出最短哈密頓回路。n=4時(shí),有3種不同哈密頓回路。
n=5時(shí),有12種,
n=6時(shí),有60種,
n=7時(shí),有360種,…,
n=10時(shí),有5×9!=1814400種,…。由此可見貨郎擔(dān)問題的計(jì)算量是相當(dāng)大的。對(duì)于貨郎擔(dān)問題,人們一方面還在尋找好的算法,另一方面也在尋找各種近似算法。中國郵遞員問題一名郵遞員帶著要分發(fā)的郵件從郵局出發(fā),經(jīng)過要分發(fā)的每個(gè)街道,送完郵件后又返回郵局。如果他必須至少一次走過他管轄范圍內(nèi)的每一條街道,如何選擇投遞路線,使郵遞員走盡可能少的路程。這個(gè)問題是由我國數(shù)學(xué)家管梅谷先生(山東師范大學(xué)數(shù)學(xué)系教授)在1960年首次提出的,因此在國際上稱之為中國郵遞員問題。用圖論的述語,在一個(gè)連通的賦權(quán)圖G(V,E)中,要尋找一條回路,使該回路包含G中的每條邊至少一次,且該回路的權(quán)數(shù)最小。也就是說要從包含G的每條邊的回路中找一條權(quán)數(shù)最小的回路?;疽笊羁汤斫鈿W拉圖與半歐拉圖的定義及判別定理。會(huì)用Fleury算法求出歐拉圖中的歐拉回路。深刻理解哈密頓圖及半哈密頓圖的定義。會(huì)用破壞哈密頓圖應(yīng)滿足的某些必要條件的方法判斷某些圖不是哈密頓圖。會(huì)用滿足哈密頓圖的充分條件的方法判斷某些圖是哈密頓圖。嚴(yán)格地分清哈密頓圖必要條件和充分條件,千萬不能將必要條件當(dāng)充分條件,同樣地,也不能將充分條件當(dāng)成必要條件。歸納法證明示意圖例15.4例15.4設(shè)G是n階無向連通圖。證明:若G中有割點(diǎn)或橋,則G不是哈密頓圖。證明 (1)證明若G中有割點(diǎn),則G不是哈密頓圖。
設(shè)v為連通圖G中一個(gè)割點(diǎn),則V={v}為G中的點(diǎn)割集,而
p(G-V)≥2>1=|V| 由定理15.6可知G不是哈密頓圖。 (2)證明若G中有橋,則G不是哈密頓圖。 設(shè)G中有橋,e=(u,v)為其中的一個(gè)橋。 若u,v都是懸掛邊,則G為K2,K2不是哈密頓圖。 若u,v中至少有一個(gè),比如u,d(u)≥2,由于e與u關(guān)聯(lián),e為橋,所以G-u至少產(chǎn)生兩個(gè)連通分支,于是u為G中割點(diǎn)。 由(1)的討論可知,G不是哈密頓圖。匹配§1最大匹配-1具體問題描述:有n個(gè)女士和n個(gè)男士參加舞會(huì),每位女士與其中若干位男士相識(shí),每位男士與其中若干位女士相識(shí),問如何安排,使得盡量多配對(duì)的男女舞伴相識(shí)。f1f2m1f3f4f5m2m3m4m5§1匹配§1最大匹配-1下圖就是一種分配方法:f1f2m1f3f4f5m2m3m4m5(f1,m3),(f2,m1),(f3,m2),(f4,m5),(f5,m4)
匹配問題是運(yùn)籌學(xué)的重要問題之一,也是圖論的重要內(nèi)容,它在所謂“人員分配問題”和“最優(yōu)分配問題”中有重要作用。假定有一個(gè)男生有窮集合,其中每個(gè)男生認(rèn)識(shí)一些女生,在什么條件下每個(gè)男生都可以和他認(rèn)識(shí)的女生配對(duì)?類似的工作分配問題:現(xiàn)有n個(gè)人,m份工作,每個(gè)人有其擅長的工作。在什么條件下每個(gè)人都可以得到一份他擅長的工作?如何分配?§1最大匹配-定義定義:若圖G=(V,E)的頂點(diǎn)可以分成X,Y兩個(gè)子集,每個(gè)子集里的頂點(diǎn)互不相鄰,這樣的圖稱為二分圖。f1f2m1f3f4f5m2m3m4m5§1最大匹配-定義1定義:若M是圖G=(V,E)的邊子集,且M中的任意兩條邊在G中不相鄰,則稱M為G中的一個(gè)匹配,M中的每條邊的兩個(gè)端點(diǎn)稱為是M-飽和的的。f1f2m1f3f4f5m2m3m4m5M={(f1,m2),(f2,m1),(f3,m4),(f4,m5)}§1最大匹配-定義2定義:若圖G中每個(gè)頂點(diǎn)均被M許配時(shí),稱M為G中的一個(gè)完美匹配。f1f2m1f3f4f5m2m3m4m5M={(f1,m3),(f2,m1),(f3,m2),(f4,m5),(f5,m4)}§1最大匹配-定義3定義:圖G中邊數(shù)最多的匹配M,稱為G中的一個(gè)最大匹配。M={(f1,m3),(f2,m1),(f3,m2),(f5,m5)}f1f2m1f3f4f5m2m3m4m5§1最大匹配-定義4定義:若匹配M的某邊和頂點(diǎn)v關(guān)聯(lián),稱v是M-飽和的,否則就是M-不飽和的。M={(f1,m3),(f2,m1),(f3,m2),(f5,m5)}f1f2m1f3f4f5m2m3m4m5飽和的不飽和的§1最大匹配-定義5定義:若M是圖G的一個(gè)匹配,若從G中一個(gè)頂點(diǎn)到另一個(gè)頂點(diǎn)存在一條道路,此路徑由屬于M和不屬于M的邊交替出現(xiàn)組成的,則稱此路徑為M-交錯(cuò)路。f1f2m1f3f4f5m2m3m4m5M={(f1,m3),(f2,m1),(f3,m2),(f4,m5),(f5,m4)}P=f1m3f4m5f2m1f5m4§1最大匹配-定義6定義:若交錯(cuò)路的兩個(gè)端點(diǎn)為關(guān)于M的不飽和頂點(diǎn)時(shí),稱此交互道為可增廣道路。M={(f2,m5),(f3,m2),(f4,m3),(f5,m4)}P=m1f2m5f4m3f1是一條可增廣道路。f1f2m1f3f4f5m2m3m4m5f1f2m1f3f4f5m2m3m4m5§1最大匹配-定義8f1f2m1f3f4f5m2m3m4m5M={(f2,m5),(f3,m2),(f4,m3),(f5,m4)}P=m1f2m5f4m3f1是一條可增廣道路。f1f2m1f3f4f5m2m3m4m5M={(f1,m3),(f2,m1),(f3,m2),(f4,m5),(f5,m4)}§1最大匹配-Berge定理定理7.1(Berge1957):M為最大匹配的充要條件是:圖G中不存在可增廣道路。M={(f1,m3),(f2,m1),(f3,m2),(f5,m5)}f1f2m1f3f4f5m2m3m4m5[引理]
設(shè)P是匹配M-可增廣道路,則PM是一個(gè)比M更大的匹配,且|PM|=|M|+1.[定理1](Berge)設(shè)G=(V,E),M為G中匹配,則M為G的最大匹配當(dāng)且僅當(dāng)G中不存在M可增廣道。[證明]
必要性:如有M-可增廣道路,則有更大匹配。矛盾!充分性:如果有最大匹配M’,|M’|>|M|.考慮MM’,在可增廣路中,第一條邊與最后一條邊都不是中的邊,因而可增廣路中屬于的邊數(shù)比不在中邊數(shù)少一條。M實(shí)線邊,M’虛線邊MM’其中每個(gè)結(jié)點(diǎn)的最多與M邊和一個(gè)M’邊關(guān)聯(lián),每條道路是M邊和M’邊交互道路。其中回路包含相同數(shù)目的M邊和M’邊。由|M’|>|M|,必存在M’邊開始,M‘邊終止的M交互道路,即M-可增廣道路,矛盾!§2Hall定理
設(shè)有m個(gè)人,n項(xiàng)工作,每個(gè)人會(huì)做其中的若干項(xiàng)工作,能不能適當(dāng)安排,使得每個(gè)人都有工作做?w1w2m1w3w4w5m2m3m4§2Hall定理
當(dāng)m>n時(shí),肯定是不可能的,即使是m≤n也不一定。但如果每個(gè)人能做的工作越多,越容易實(shí)現(xiàn)。w1w2m1w3w4w5m2m3m4§2Hall定理-1Hall定理(1935):二分圖G存在一匹配M,使得X的所有頂點(diǎn)關(guān)于M飽和的充要條件是:對(duì)于X任一子集A,及與A鄰接的點(diǎn)集為N(A),恒有:|N(A)|≥|A|。w1w2m1w3w4w5m2m3m4YX§3人員分派問題1965年,匈牙利著名數(shù)學(xué)家Edmonds設(shè)計(jì)了一種求最大匹配的算法,稱為匈牙利(Hungarian)算法。工作分配問題:現(xiàn)有n個(gè)人,n份工作,每個(gè)人有其擅長的工作。在什么條件下每個(gè)人都可以得到一份他擅長的工作?如何分配?§3匈牙利算法
匈牙利(Hungarian)算法:(1)任給一個(gè)初始匹配;(2)若X已經(jīng)飽和,結(jié)束;否則轉(zhuǎn)(3);(3)在X中找一個(gè)非飽和點(diǎn)x0,V1={x0},V2=空集;(4)若N(V1)=V2則停止,否則任選一點(diǎn)y∈N(V1)-V2;(5)若y已飽和,M中必有(y,z);作【V1=V1∪{z},V2=V2∪
{y};轉(zhuǎn)(4)】,否則【求一條從x0到y(tǒng)的可增廣道路P,對(duì)之進(jìn)行增廣;轉(zhuǎn)(2)】§3匈牙利算法例用匈牙利算法求下圖的最大匹配:例x1x2y1x3x4x5y2y3y4y5§3匈牙利算法例解(1)任給一個(gè)初始匹配;(2)若X已經(jīng)飽和,結(jié)束;否則轉(zhuǎn)(3);解x1x2y1x3x4x5y2y3y4y5M={(x1,y1),(x3,y5),(x5,y3)}§3匈牙利算法例解1(3)在X中找一個(gè)非飽和點(diǎn)x0,V1={x0},V2=空集(4)若N(V1)=V2則停止,否則任選一點(diǎn)y∈N(V1)-V2解x1x2y1x3x4x5y2y3y4y5M={(x1,y1),(x3,y5),(x5,y3)}V1={x2},V2=空集N(V1)={y2,
y3}§3匈牙利算法例解2(5)若y已飽和,M中必有(y,z);作【V1=V1∪{z},V2=V2∪
{y};轉(zhuǎn)(4)】,否則【求一條從x0到y(tǒng)的可增廣道路P,對(duì)之進(jìn)行增廣;轉(zhuǎn)(2)】解x1x2y1x3x4x5y2y3y4y5M={(x1,y1),(x3,y5),(x5,y3)}V1=V1∪{x5}={x2,x5};V2=V2∪
{y3}
={y3}V1={x2},V2=空集§3匈牙利算法例解3(4)若N(V1)=V2則停止,否則任選一點(diǎn)y∈N(V1)-V2;解x1x2y1x3x4x5y2y3y4y5M={(x1,y1),(x3,y5),(x5,y3)}V1={x2,x5};V2={y3}N(V1)={y2,y3,y4,y5}§3匈牙利算法例解4(5)若y已飽和,M中必有(y,z);作【V1=V1∪{z},V2=V2∪
{y};轉(zhuǎn)(4)】,否則【求一條從x0到y(tǒng)的可增廣道路P,對(duì)之進(jìn)行增廣;轉(zhuǎn)(2)】解x1x2y1x3x4x5y2y3y4y5M={(x1,y1),(x3,y5),(x5,y3)}V1={x2,x5};V2={y3};V1=V1∪{x3}={x2,x5,x3};V2=V2∪
{y5}
={y3,y5}§3匈牙利算法例解5(4)若N(V1)=V2則停止,否則任選一點(diǎn)y∈N(V1)-V2;解x1x2y1x3x4x5y2y3y4y5M={(x1,y1),(x3,y5),(x5,y3)}V1={x2,x5,
x3};V2={y3,y5};N(V1)={y2,y3,y4,y5}§3匈牙利算法例解6(5)若y已飽和,M中必有(y,z);作【V1=V1∪{z},V2=V2∪
{y};轉(zhuǎn)(4)】,否則【求一條從x0到y(tǒng)的可增廣道路P,對(duì)之進(jìn)行增廣;轉(zhuǎn)(2)】解x1x2y1x3x4x5y2y3y4y5M={(x1,y1),(x3,y5),(x5,y3)}V1={x2,x5,x3};V2={y3,y5};x1x2y1x3x4x5y2y3y4y5x1x2y1x3x4x5y2y3y4y5M=ME(P)={(x1,y1),(x2,y3),(x3,y2),(x5,y5)}?§3匈牙利算法例解7(2)若X已經(jīng)飽和,結(jié)束;否則轉(zhuǎn)(3);(3)在X中找一個(gè)非飽和點(diǎn)x0,V1={x0},V2={}(4)若N(V1)=V2則停止,否則任選一點(diǎn)y∈N(V1)-V2解x1x2y1x3x4x5y2y3y4y5V1={x4};V2=空集M={(x1,y1),(x2,y3),(x3,y2),(x5,y5)}N(V1)={y3}§3匈牙利算法例解8(5)若y已飽和,M中必有(y,z);作【V1=V1∪{z},V2=V2∪
{y};轉(zhuǎn)(4)】,否則【求一條從x0到y(tǒng)的可增廣道路P,對(duì)之進(jìn)行增廣;轉(zhuǎn)(2)】解x1x2y1x3x4x5y2y3y4y5V1={x4};V2=空集M={(x1,y1),(x2,y3),(x3,y2),(x5,y5)}V1=V1∪{x2}={x4,x2};V2=V2∪{y3}
={y3}§3匈牙利算法例解9(4)若N(V1)=V2則停止,否則任選一點(diǎn)y∈N(V1)-V2解x1x2y1x3x4x5y2y3y4y5M={(x1,y1),(x2,y3),(x3,y2),(x5,y5)}V1={x4,x2,};V2={y3}N(V1)={y2,y3}§3匈牙利算法例解10(5)若y已飽和,M中必有(y,z);作【V1=V1∪{z},V2=V2∪
{y};轉(zhuǎn)(4)】,否則【求一條從x0到y(tǒng)的可增廣道路P,對(duì)之進(jìn)行增廣;轉(zhuǎn)(2)】解x1x2y1x3x4x5y2y3y4y5M={(x1,y1),(x2,y3),(x3,y2),(x5,y5)}V1={x4,x2,};V2={y3}V1=V1∪{x3}={x4,x2,x3};V2=V2∪{y2}
={y3,y2}§3匈牙利算法例解11(4)若N(V1)=V2則停止,否則任選一點(diǎn)y∈N(V1)-V2解x1x2y1x3x4x5y2y3y4y5M={(x1,y1),(x2,y3),(x3,y2),(x5,y5)}V1={x4,x2,x3};V2={y3,y2}N(V1)={y2,y3,y5}§3匈牙利算法例解12(5)若y已飽和,M中必有(y,z);作【V1=V1∪{z},V2=V2∪
{y};轉(zhuǎn)(4)】,否則【求一條從x0到y(tǒng)的可增廣道路P,對(duì)之進(jìn)行增廣;轉(zhuǎn)(2)】解x1x2y1x3x4x5y2y3y4y5M={(x1,y1),(x2,y3),(x3,y2),(x5,y5)}V1={x4,x2,x3};V2={y3,y2}V1=V1∪{x5}={x4,x2,x3,x5};V2=V2∪{y5}
={y3,y2,y5}§3匈牙利算法例解13(4)若N(V1)=V2則停止,否則任選一點(diǎn)y∈N(V1)-V2解x1x2y1x3x4x5y2y3y4y5M={(x1,y1),(x2,y3),(x3,y2),(x5,y5)}V1={x4,x2,x3,x5};V2={y3,y2,y5}N(V1)={y2,y3,y5,y4}§3匈牙利算法例解14(5)若y已飽和,M中必有(y,z);作【V1=V1∪{z},V2=V2∪
{y};轉(zhuǎn)(4)】,否則【求一條從x0到y(tǒng)的可增廣道路P,對(duì)之進(jìn)行增廣;轉(zhuǎn)(2)】解x1x2y1x3x4x5y2y3y4y5M={(x1,y1),(x2,y3),(x3,y2),(x5,y5)}V1={x4,x2,x3,
x5};V2={y3,y2,y5}x1x2y1x3x4x5y2y3y4y5x1x2y1x3x4x5y2y3y4y5M=ME(P)={(x1,y1),(x2,y2),(x3,y5),(x4,y3),(x5,y4)}?§3匈牙利算法例解15(2)若X已經(jīng)飽和,結(jié)束;否則轉(zhuǎn)(3);解x1x2y1x3x4x5y2y3y4y5
這時(shí),M={(x1,y1),(x2,y2),(x3,y5),(x4,y3),(x5,y4)}就是所求的最大匹配?!?最佳匹配
公司里有n名工作人員,他們每個(gè)人都能承擔(dān)n項(xiàng)工作的其中若干項(xiàng),因?yàn)槊總€(gè)人的特長不同,所以對(duì)每項(xiàng)工作創(chuàng)造的價(jià)值也有所不同。問如何安排,使得他們總的創(chuàng)造價(jià)值最大?§4最佳匹配x對(duì)每項(xiàng)工作創(chuàng)造的價(jià)值的如右邊的矩陣所表示:x1x2y1x3x4x5y2y3y4y53554122022244100110012133
C=x1x2x3x4x5y1y2y3y4y5§5最佳匹配算法及例Kuhn和Munkras設(shè)計(jì)了求最佳匹配的有效算法,他們把求最佳匹配的問題轉(zhuǎn)化成可用匈牙利算法求另一個(gè)圖的完美匹配的問題?!?最佳匹配算法1
為此,他們對(duì)加權(quán)的二分圖每個(gè)頂點(diǎn)v給一個(gè)頂標(biāo)l(v),當(dāng)xi∈X,yj∈Y,l(xi)+l(yj)≥cij時(shí),稱這樣的頂標(biāo)為可行頂點(diǎn)a標(biāo)號(hào)(feasiblevertexlabelling)?!?最佳匹配算法2初始的時(shí)候,令l(xi)=maxci*;l(yi)=0;x1x2y1x3x4x5y2y3y4y53554122022244100110012133
C=x1x2x3x4x5y1y2y3y4y5l(x1)=5l(x2)=2l(x3)=4l(x4)=1l(x5)=3l(y5)=0l(y1)=0l(y2)=0l(y3)=0l(y4)=0最佳匹配定理設(shè)二分圖Kn,n=G是具有正常頂標(biāo)l的加權(quán)圖,取G的邊子集El={eij|eij∈E(G),l(i)+l(j)=cij}。令Gl是以El為邊集的生成子圖,如果有Gl完美匹配M,則M即為G的最佳匹配。x1x2y1x3x4x5y2y3y4y5x1x2y1x3x4x5y2y3y4y5§5最佳匹配算法3KM算法:(1)選定初始正常標(biāo)頂l,構(gòu)作圖Gl,在Gl中用匈牙利算法求一個(gè)最大匹配;(2)若X飽和則結(jié)束,此時(shí)所得匹配就是最佳匹配,否則在X中任選一個(gè)非飽和點(diǎn)x0,令V1={x0},V2={};(3)若NGl(V1)=V2,則取α=min(l(xi)+l(yj)-cij),其中xi∈V1,yj∈NG(V1)-V2,使得
l(v)-αv∈V1
l(v)=l(v)+αv∈V2
l(v)其他
重新構(gòu)作圖Gl,在NGl(V1)-V2任取一點(diǎn)y,轉(zhuǎn)向(4);否則在NGl(V1)-V2任取一點(diǎn)y,轉(zhuǎn)向(4)§5最佳匹配算法4(4)若y已飽和,M中必有(y,z);作【V1=V1∪{z},V2=V2∪
{y};轉(zhuǎn)(3)】,否則【求一條從x0到y(tǒng)的可增廣道路P,對(duì)之進(jìn)行增廣;轉(zhuǎn)(2)】§5最佳匹配算法例求下圖的最佳匹配例x1x2y1x3x4x5y2y3y4y53554122022244100110012133
C=x1x2x3x4x5y1y2y3y4y5§5最佳匹配算法例解1(1)選定初始正常標(biāo)頂l,構(gòu)作圖Gl,在Gl中用匈牙利算法求一個(gè)最大匹配;解x1x2y1x3x4x5y2y3y4y53554122022244100110012133
C=x1x2x3x4x5y1y2y3y4y5l(x1)=5l(x2)=2l(x3)=4l(x4)=1l(x5)=3l(y5)=0l(y1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024-2030年新版中國憎水級(jí)珠光砂項(xiàng)目可行性研究報(bào)告
- 2024-2030年撰寫:中國酒店信息管理系統(tǒng)行業(yè)發(fā)展趨勢(shì)及競爭調(diào)研分析報(bào)告
- 2024-2030年撰寫:中國數(shù)碼智能電熱開水瓶項(xiàng)目風(fēng)險(xiǎn)評(píng)估報(bào)告
- 2024-2030年撰寫:中國3縮水甘油醚氧基丙基三乙氧基硅烷行業(yè)發(fā)展趨勢(shì)及競爭調(diào)研分析報(bào)告
- 2024-2030年全球及中國馬來酸酐接枝SEBS行業(yè)產(chǎn)銷動(dòng)態(tài)及未來運(yùn)營趨勢(shì)報(bào)告
- 2024-2030年全球及中國虛擬賬戶管理(VAM)行業(yè)發(fā)展態(tài)勢(shì)及投資方向預(yù)測報(bào)告
- 2024-2030年全球及中國線性酚醛樹脂行業(yè)供需現(xiàn)狀及盈利前景預(yù)測報(bào)告
- 2024-2030年全球及中國月桂醇聚醚硫酸鎂行業(yè)發(fā)展動(dòng)態(tài)及產(chǎn)銷需求預(yù)測報(bào)告
- 2024-2030年全球及中國變性乙醇行業(yè)發(fā)展?fàn)顩r及需求規(guī)模預(yù)測報(bào)告
- 2024-2030年全球及中國農(nóng)業(yè)礦物油行業(yè)發(fā)展動(dòng)態(tài)及前景趨勢(shì)預(yù)測報(bào)告
- 滬科黔科版《綜合實(shí)踐活動(dòng)》5上農(nóng)業(yè)小當(dāng)家 活動(dòng)一《花壇小暖棚》課件
- 知識(shí)圖譜構(gòu)建實(shí)踐建設(shè)方案
- 2024年度跨國業(yè)務(wù)代理合同3篇
- 內(nèi)科危重患者的護(hù)理
- 紀(jì)念抗日救亡一二九運(yùn)動(dòng)弘揚(yáng)愛國精神宣傳課件
- 青少年足球培訓(xùn)
- 【MOOC】寄生人體的惡魔-醫(yī)學(xué)寄生蟲學(xué)-南方醫(yī)科大學(xué) 中國大學(xué)慕課MOOC答案
- 大學(xué)生心理健康(上海交通大學(xué))知到智慧樹章節(jié)答案
- 鑄牢中華民族共同體意識(shí)-形考任務(wù)2-國開(NMG)-參考資料
- 2024年國家開放大學(xué)期末考試《律師實(shí)務(wù)》機(jī)考題庫(課程代碼:55742)
- 機(jī)械工程技術(shù)訓(xùn)練智慧樹知到期末考試答案章節(jié)答案2024年北京航空航天大學(xué)
評(píng)論
0/150
提交評(píng)論