Chapter 5 Fundamental Properties of Graphs and Digraphs

Slides:



Advertisements
Similar presentations
Course 1 演算法: 效率、分析與量級 Algorithms: Efficiency, Analysis, and Order
Advertisements

Introduction to Computer Science
企业简介及未来发展规划.
励步英语授权流程.
Chapter 10 Graphs.
Network Optimization: Models & Algorithms
Chapter 12 圖形結構 12.1 圖形的一些專有名詞 12.2 圖形資料結構表示法 12.3 圖形追蹤 12.4 擴展樹
离 散 数 学 计算机科学与工程学院 示 范 性 软 件 学 院 电子科技大学 2017年3月21日星期二.
資料結構與C++程式設計進階 資料結構概論 講師:林業峻 CSIE, NTU 6/ 7, 2010.
第7章 图论基础与应用 PART A 《可视化计算》.
Graph Theory Chapter 1 An Introduction to Graphs
Minimum Spanning Trees
Large-Scale Malware Indexing Using Function-Call Graphs
THE BI-CRITERIA DOUBLY WEIGHTED CENTER-MEDIAN PATH PROBLEM ON A TREE
Chap5 Graph.
Chapter 4 歸納(Induction)與遞迴(Recursion)
Chapter 4 Spanning Trees
Chap5 Graph.
第8章 圖形結構(Graphs) 8-1 圖形的基本觀念 8-2 圖形的表示法 8-3 圖形的走訪 8-4 擴張樹
Chapter 6 Graph Chang Chi-Chung
第八章 图 图的基本概念 图的存储结构 图的遍历与连通性 最小生成树 最短路径 活动网络.
The Greedy Method.
演算法方式總覽 The Divide-and-Conquer Strategy (個各擊破)(binary Searching、Quick Sort…. ) The Greedy Method(貪婪演算法) (Prim MST、Kruskal MST、Djikstra's algorithm) Dynamic.
圖論 (Graph Theory) B 電機四 大鳥 B 電機四 酋長 B 電機四 炫大
Graph 2 Michael Tsai 2012/5/1 連載: 學生上課睡覺姿勢大全
三位審查委員大家好 我是研究生洪蔚齊 報告的論文題目是基於索引技術之淹水區域路徑規劃 指導教授 張雅惠 研究生 洪蔚齊
Course 9 NP Theory序論 An Introduction to the Theory of NP
Graph Theory Graph theory is the study of the properties of graph structures. It provides us with a language with which to talk about graphs.
Simulated Annealing 報告者:李怡緯 OPLAB in NTUIM.
本章大綱 2.1 The Limit of a Function函數的極限 2.2 Limit Laws極限的性質
普通物理 General Physics 29 - Current-Produced Magnetic Field
Chapter 7 圖形與網路 資料結構導論 - C語言實作.
第16讲 图的矩阵表示, 赋权图与最短路径 主要内容: 1.图的矩阵表示. 2.赋权图与最短路径..
子博弈完美Nash均衡 我们知道,一个博弈可以有多于一个的Nash均衡。在某些情况下,我们可以按照“子博弈完美”的要求,把不符合这个要求的均衡去掉。 扩展型博弈G的一部分g叫做一个子博弈,如果g包含某个节点和它所有的后继点,并且一个G的信息集或者和g不相交,或者整个含于g。 一个Nash均衡称为子博弈完美的,如果它在每.
Chapter12 Graphs Definitions Applications Properties
Yuzhong Qu Nanjing University
Ch07 圖形與網路 淡江大學 周清江
Chapter 2 Basic Concepts in Graph Theory
数据结构概论 第7章 图 董黎刚 浙江工商大学信电学院 2019年4月8日.
每周三交作业,作业成绩占总成绩的15%; 平时不定期的进行小测验,占总成绩的 15%;
VRP工具or-tools调研 王羚宇
计算机问题求解 – 论题 算法方法 2016年11月28日.
今天, AC 你 了吗? 2019/4/21.
圖論的介紹 第二組 徐榮德 鄭又齊 陳俊嘉.
第15讲 路与回路, 图的连通性 主要内容: 1.路与回路. 2.图的连通性..
Tournament (graph theory)
Graph Theory Chapter 2 An Introduction to Algorithms
Course 10 削減與搜尋 Prune and Search
生成树.
Course 8 回溯、分枝與限制 Backtracking, Branch-and-Bound
鄧姚文 資料結構 第八章:圖(Graph) 鄧姚文
Efficient Query Relaxation for Complex Relationship Search on Graph Data 李舒馨
最短通路问题.
网络模型 Network Modeling Operations Research 运 筹 学
赵才荣 同济大学,电子与信息工程学院,智信馆410室
第6章 运输系统及运输优化.
计算机问题求解 – 论题 图的连通度 2018年11月13日.
ACM 程序设计 计算机学院 刘春英 2019/5/23.
Konig 定理及其证明 杨欣然
複習 2013/12/24 Jehn-Ruey Jiang 江振瑞.
Advanced Competitive Programming
An Optimal Minimum Spanning Tree Algorithm
圖形結構 Graph Structure chapter 9 德明科技大學資訊科技系.
Homework (2011/12/23) Use Algorithm 5.1 to find a maximum flow and a minimum cut for the network shown below. (Assume f(a)=0 for each arc a.) s y x u.
Maximum Flow.
Graph 1 Michael Tsai 2012/4/24 連載: 學生上課睡覺姿勢大全
圖 論 簡 介.
计算机问题求解---论题3-12 图中的匹配与因子分解
JAVA 程式設計與資料結構 第二十一章 Graph.
Presentation transcript:

Chapter 5 Fundamental Properties of Graphs and Digraphs Graph Theory Chapter 5 Fundamental Properties of Graphs and Digraphs 大葉大學 資訊工程系 黃鈴玲 2011.11

Contents 5.1 Bipartite Graphs 5.2 Eulerian Graph 5.3 Hamiltonian Graphs 5.4 Hamiltonian Cycles in Weighted Graphs 5.7 On the Adjacency Matrix of a Digraph

5.1 Bipartite Graphs Definition 5.1 Theorem 5.3 Observation 5.4

5.2 Eulerian Graphs Definition 5.6 Theorem 5.7 Corollary 5.8

edges: 所有黑色邊形成的集合 L: 紅色邊,每一步驟加一條邊 CurrentVertex edges: 所有黑色邊形成的集合 L: 紅色邊,每一步驟加一條邊 e 此時e是G[edges]的bridge, 能不走就不走 重複此做法至結束, 最後一條邊必定是e, Eulerian Circuit就找到了。

HW Find an Eulerian circuit for the following graph. (請試著trace前述的演算法) v2 v1 v3 v7 v4 v5 v6

5.3 Hamiltonian Graphs Example 5.12

Definition 5.13 Note 5.15

4個component 刪掉7點後,最多剩下7個component Thm 5.16: If G is a simple Hamiltonian graph, then for each S  V(G), the number of components of G- S is at most |S|. Example S={a, b, c, d, e, f, g} c a e d b g f 4個component 刪掉7點後,最多剩下7個component

故G- S 最多分成n個component. Thm 5.16: If G is a simple Hamiltonian graph, then for each S  V(G), the number of components of G- S is at most |S|. pf: G is hamiltonian   a hamiltonian cycle C Suppose S={v1, v2, …, vn}. 故G- S 最多分成n個component. v1 v3 vn v2 G1 G3 Gn G2 C …

證明下面兩圖 都不是Hamilton 的方法: 刪除紅點後,變成7個component 紅點只有6個 不是Hamiltonian 刪除紅點後,變成5個component 紅點只有4個 不是Hamiltonian

Lemma 5.19: Corollary 5.20: Corollary 5.21:

上述定理提供了判斷圖形是否 hamiltonian 的一種方法  重複將不相連但degree 和  n 的兩點連一條邊 新圖形是否 hamiltonian 決定了原圖是否hamiltonian 4+3  7 且不相連 4+3  7 且不相連 4+3  7 且不相連 Not hamiltonian!

n=7     若重複一直做,原圖會變成complete graph  原圖是Hamiltonian

 e3 e1 e2 e4 e5 e6 從K6任挑一個 Hamiltonian Cycle C(藍色) e5 e6 e1  e2 e3 e4 重複加邊變成K6 找ut使得 {u0, ut}, {u1, ut+1}為原圖的邊  e1 e2 C= u0, u1, u2, u3, u4, u5, u0 C= u0, u4, u3, u2, u1, u5, u0 u0 u2 u1 u4 u3 u5  e1 e2 將C中加入邊{u0, ut}, {u1, ut+1} 刪除 {u0, u1}及 {ut, ut+1} u0 u1 u2 u3 u4 u5 e6 C e5 C e4 C e3 C e2 C 重複此法至所有紅邊都刪除為止

HW:已知下圖任2個不相鄰的點degree和n, 試用Restricted Hamiltonian Cycle Algorithm找出一條 Hamiltonian cycle. v0 v1 v5 v2 v4 v3

5.4 Hamiltonian Cycles in Weighted Graphs Traveling Salesman Problem (TSP): Suppose that a salesman is required to make a round trip through a given collection of n(3) cities. What route should he take to minimize the total distance traveled? (本節以下內容取材自另一本課本)  G: connected weighted graph, vi  V(G): the cities, w(vivj) of edge vivj: the distance to travel directly between vi and vj . (Assume that G is complete) ※ TSP asks for a Hamiltonian cycle of minimum weight.

∵TSP is a NP-complete problem ∴改成 find low weight 的 HC TSP: Given a weighted complete graph G and a positive constant B, does there exist a hamiltonian cycle C in G so that w(C)  B? 此處提供兩種作法 前提: 需先符合triangle inequality (三角不等式) w(vi,vk)  w(vi,vj) + w(vj,vk) vi vj vk

Algorithm TSP-1 (a greedy algorithm) [ To determine a low weight HC in a weighted complete graph G of order(點數) p3 satisfying the triangle inequality. ] n  1. (n is the cycle length) Select any vertex of G to form Cn. (Cn剛開始只有一個點) If n < p, then find a vertex vn not on Cn s.t. w(unvn) is minimum for some un is on Cn, and go to Step 4. Otherwise, Cn is the desired HC. Let Cn+1 be the (n+1)-cycle obtained by inserting vn immediately before un on Cn. n  n +1 and return to Step 3.

1. C1: v1 2. ∵ v2, …, v6中,w(v1v4)最小 ∴C2: v1v4v1 3. v1 v2 v3 v4 v5 G若不是complete graph,要先加邊,使之成為complete。 加邊方式:若u,v兩點不相連,就加uv這條邊, 邊的權重為G中u-v shortest path上的權重和。 1. C1: v1 2. ∵ v2, …, v6中,w(v1v4)最小 ∴C2: v1v4v1 3. ∵ w(v3v4) 最小 ∴C3: v1v3v4v1 (加在要連的點之前) v1 v2 v3 v4 v5 v6 v1 v2 v3 v4 v5 v6 v2 v3 v5 v6 v1 v4

C6的 weight 總和為24, 而min weight 為18. v2 v5 v6 v1 v3 v4 3 7 3 3 4 4 4 5 5 4. ∵ w(v1v2) 最小 ∴C4: v1v3v4v2v1 v5 v1 v2 v3 v4 v6 7 5 4 6. 5. 7 3 5 5 4 4 v5 v6 v1 v2 v3 v4 C5: v1v3v4v2v6v1 C6: v1v5v3v4v2v6v1 C6的 weight 總和為24, 而min weight 為18. 原圖G若不是complete, 找到的HC要對應變成G 的closed walk 若改選別的點當C1,可能 weight 總和更小.

Theorem C : a HC given by Algorithm TSP-1 Cm : min weight HC  w(C)  2  w(Cm) (Algorithm TSP-1不保證能找出min HC, 但用 Algorithm TSP-1 找出的cycle 其weight 不會 大於 min HC 的兩倍.)

AlgorithmTSP-2 (利用 min spanning tree) [ To determine a low weight HC in a weighted complete graph G of order p3 satisfying the triangle inequality. ] 1. Find a min spanning tree T of G. 2. Conduct a depth-first search of T. (起點為 T 的leaf) 3. If vi1, vi2, …, vip is the order in which the vertices of T are visited in step 2, then output the hamiltonian cycle vi1, vi2, …, vip, vi1. (Algorithm TSP-2 找出的cycle 其 weight 也不會大於 min HC 的兩倍.)

A min spanning tree T (a) 3 v2 v5 v4 v3 v1 v6 A min spanning tree T (a) 3 4 2 1  v2 v5 v4 v3 v1 v6 A HC (c) 5 3 4 2 1      A depth-first search 從 leaf v2開始 (b) weight 總和為19 C: v2,v1,v4,v3,v5,v6,v2

Exercise Use Alg. TSP-1 and TSP-2 to find a closed walk whose weight does not exceed twice the weight of a shortest closed walk in the given weighted graph G. G v2 v5 v4 v3 v1 1 3 2 5 4 Sol: 先把 G 變成 complete v1 v2 v3 v4 v5 v1 v2 v3 v4 v5 0 4 2 5 1 4 0 3 7 3 2 3 0 5 3 5 7 5 0 4 1 3 3 4 0 G v2 v5 v4 v3 v1 4 1 3 2 5 7

5.7 On the Adjacency Matrix of a Digraph u1 u2 u3 u4 u5 u1 u2 u3 u4 u5

u1 u2 u3 u4 u5 u1 u2 u3 u4 u5 u1 u2 u3 u4 u5 u1 u2 u3 u4 u5 有 2 條從u3到u4且長度為 3 的walk: u3  u1  u3  u4 u3  u4  u4  u4 (點及邊可重複的路徑) e2 e3 e5 e6

A(G)k 矩陣中的元素aij(k), 代表了由ui節點到uj節點且長度為 k 的walk數 Theorem 5.39 A(G)k 矩陣中的元素aij(k), 代表了由ui節點到uj節點且長度為 k 的walk數