CuuDuongThanCong.com
Đồ thị có hướng
Trần Vĩnh Đức
Ngày 24 tháng 7 năm 2018
/>
1 / 34
Tài liệu tham khảo
▶ Eric Lehman, F Thomson Leighton & Albert R Meyer,
Mathematics for Computer Science, 2013 (Miễn phí)
▶ Ngơ Đắc Tân, Lý thuyết Tổ hợp và Đồ thị, NXB ĐHQG Hà
Nội, 2004.
▶ Douglas B. West. Introduction to Graph Theory. 2nd Edition,
2000.
CuuDuongThanCong.com
/>
2 / 34
Nội dung
Định nghĩa và ví dụ
Đồ thị thi đấu
CuuDuongThanCong.com
/>
Định nghĩa
Một đồ thị có hướng là một cặp có thứ tự G = (V, E), ở đây V là
một tập, cịn E là một tập con của tích đề các V × V, tức E là
một quan hệ hai ngôi trên V.
▶ Các phần tử của V thường được gọi là các đỉnh.
▶ Các phần của E gọi là các cung.
▶ Cụ thể hơn, nếu (a, b) ∈ E thì (a, b) được gọi là cung của G
với đỉnh đầu là a và đỉnh cuối là b,
▶ và ta viết a → b
CuuDuongThanCong.com
/>
4 / 34
Đồ thị có hướng
v2
V = {v1 , v2 , v3 }
v1
CuuDuongThanCong.com
Đồ thị có hướng G =
(V, E):
E = {v1 → v1 , v1 → v2 , v1 → v3 ,
v2 → v3 , v3 → v2 }
v3
/>
5 / 34
Bậc vào & bậc ra
v2
Đỉnh
v1
v2
v3
v1
CuuDuongThanCong.com
indeg
1
2
2
5
outdeg
3
1
1
5
v3
/>
6 / 34
v2
Mệnh đề
∑
indeg(v) =
v∈V
CuuDuongThanCong.com
∑
outdeg(v) = |E|
v1
v∈V
v3
/>
7 / 34
Hành trình có hướng và đường đi có hướng
Hành trình
Lặp cạnh
Lặp đỉnh
CuuDuongThanCong.com
✓
✓
Hành trình đơn
/>
✗
✓
Đường đi
✗
✗
8 / 34
Định nghĩa
Xét G = (V, E) là đồ thị có hướng với V = {v1 , v2 , . . . , vn }.
Ma trận kề A = (aij ) của G định nghĩa bởi
{
1 nếu vi → vj
aij =
0 ngược lại.
Ví dụ
CuuDuongThanCong.com
v2
1 1 1
A = 0 0 1
0 1 0
v1
v3
/>
9 / 34
Định lý
Xét G = (V, E) là đồ thị có hướng với n đỉnh
V = {v1 , v2 , . . . , vn }.
(k)
và A = (aij ) là ma trận kề của G. Xét (pij ) là số hành trình có
hướng từ vi tới vj . Khi đó
CuuDuongThanCong.com
(k)
Ak = (pij ).
/>
10 / 34
Ví dụ
v2
v1
CuuDuongThanCong.com
v3
1
A= 0
0
1
A2 = 0
0
1 1
0 1
1 0
2 2
1 0
0 1
/>
A3
1 3 3
= 0 0 1
0 1 0
11 / 34
Chứng minh
▶ Bằng quy nạp theo độ dài hành trình.
▶ Ta ký hiệu aij(k) là phần tử ở hàng i cột j của ma trận Ak .
▶ Ta đặt
(k)
(k)
P(k) := ∀i, j aij = pij
▶ Bước cơ sở: k = 1.
CuuDuongThanCong.com
✓
Tại sao?
/>
12 / 34
Chứng minh: Bước quy nạp
▶ Giả sử P(k) ✓
▶ Hành trình độ dài k + 1 từ vi đến vj có thể tách thành
vi
k
vh → vj
▶ với vi k vh là một hành trình độ dài k từ vi tới vh
▶ và h : vh → vj là một cạnh trong G.
CuuDuongThanCong.com
/>
13 / 34
Chứng minh: Bước quy nạp (tiếp)
(k+1)
pij
CuuDuongThanCong.com
=
∑
(k)
pih
=
h: vh →vj
n
∑
(k)
pih · ahj
h=1
=
=
n
∑
(k)
aih · ahj
h=1
(k+1)
aij
(giả thiết quy nạp)
(quy tắc nhân ma trận)
✓
/>
14 / 34
Định nghĩa
Một đồ thị có hướng G = (V, E) là liên thông mạnh nếu với mọi
u, v ∈ V, tồn tại một đường đi có hướng từ u tới v trong G.
CuuDuongThanCong.com
/>
15 / 34
Định nghĩa
Một đồ thị có hướng được là phi chu trình (DAG) nếu nó khơng
chứa chu trình có hướng.
CuuDuongThanCong.com
v2
v1
v4
v5
v3
/>
16 / 34
Nội dung
Định nghĩa và ví dụ
Đồ thị thi đấu
CuuDuongThanCong.com
/>
Định nghĩa
▶ Một đồ thị định hướng của một đồ thị (vô hướng)
G = (V, E) là một đồ thị có hướng thu được từ G bằng cách
chọn một hướng
x→y
hoặc y → x
cho mỗi cạnh xy ∈ E.
▶ Đồ thị thi đấu là một đồ thị định hướng của một đồ thị đầy
đủ nào đó.
CuuDuongThanCong.com
/>
18 / 34
Ví dụ
▶ Đồ thị định hướng của đồ thị đầy đủ cho phép mơ hình hóa
các giải đấu thể thao kiểu “round-robin”.
▶ Giải đấu gồm n đội và mỗi đội thi đấu với tất cả các đội khác.
▶ Với mỗi cặp u, v, ta có cạnh u → v nếu u thắng v.
▶ Cuối giải ta có một đồ thị định hướng của Kn .
▶ “Điểm số” của mỗi đội chính là bậc ra của đội đó, là số lần
thắng.
CuuDuongThanCong.com
/>
19 / 34
Đội nào vô địch?
CuuDuongThanCong.com
/>
20 / 34
Định nghĩa
Một đường đi Hamilton có hướng là hành trình đi qua mỗi đỉnh
của G đúng một lần.
CuuDuongThanCong.com
/>
21 / 34
Có phải mọi đồ thị thi đấu đều có đường Hamilton?
CuuDuongThanCong.com
/>
22 / 34
Định lý
Mọi đồ thị thi đấu đều chứa một đường đi Hamilton.
CuuDuongThanCong.com
/>
23 / 34
Chứng minh
▶ Bằng quy nạp theo số đỉnh n của đồ thị. Đặt
P(n) := “Mọi đồ thị thi đấu với n đỉnh đều chứa đường đi Hamilton
▶ Bước cơ sở: n = 1 ✓
▶ Bước quy nạp: Giả sử P(n) đúng.
▶ Xét đồ thị thi đấu n + 1 đỉnh.
▶ Bỏ đi một đỉnh v bất kỳ, ta còn đồ thị thi đấu n đỉnh:
{v1 , v2 , . . . , vn }.
▶ Theo quy nạp ta có đường đi
CuuDuongThanCong.com
v1 → v2 → · · · → vn .
/>
24 / 34
Trường hợp 1
Nếu v → v1 , vậy ta có đường Hamilton
CuuDuongThanCong.com
v → v1 → v2 → · · · → vn
/>
25 / 34