Lý thuyết Matroid đã tổng quát hóa được những tính chất về sự độc lập tuyến tính, phụ thuộc tuyến tính trong không gian vector và còn nhiều ứng dụng đối với lý thuyết đồ thị, tổ hợp.. Kh
Trang 1TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2
KHOA TOÁN
NGUYỄN THỊ THANH THỦY
TÌM HIỂU VỀ LÝ THUYẾT MATROID
KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC
Chuyên ngành: Toán Ứng Dụng
Người hướng dẫn khoa học:
TS TRẦN MINH TƯỚC
Xuân Hòa - 2015
Trang 2LỜI CAM ĐOAN
Tôi đã thực hiện đề tài Tìm hiểu về lý thuyết Matroid.
Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi Kết quả nghiêncứu của đề tài này đảm bảo tính khách quan, trung thực, không trùng lặp với các tácgiả khác
Hà Nội, tháng 5 năm 2015
Sinh viên
Nguyễn Thị Thanh Thủy
Trang 3LỜI CẢM ƠN
Trước khi trình bày nội dung chính của khóa luận tốt nghiệp, em xin bày tỏ lòng
biết ơn sâu sắc tới Tiến sĩ Trần Minh Tước người đã tận tình hướng dẫn để em có
thể hoàn thành đề tài này
Em cũng xin bày tỏ lòng biết ơn chân thành tới toàn thể các thầy cô giáo trongkhoa Toán, Trường Đại học Sư phạm Hà Nội 2 đã dạy bảo em tận tình trong suốtquá trình học tập tại khoa
Nhân dịp này em cũng xin được gửi lời cảm ơn chân thành tới gia đình, bạn bè
đã luôn bên em, động viên, giúp đỡ em trong suốt quá trình học tập và thực hiện đềtài này
Hà Nội, tháng 5 năm 2015
Sinh viên
Nguyễn Thị Thanh Thủy
Trang 4Mục lục
Chương 1 KHÁI NIỆM MATROID VÀ HỆ THỐNG TIÊN ĐỀ 2
1.1 Khái niệm matroid 2
1.2 Tiên đề cơ sở 4
1.3 Tiên đề hạng 6
1.4 Tiên đề vòng 9
Chương 2 SỰ LIÊN HỆ GIỮA MATROID VÀ LÝ THUYẾT ĐỒ THỊ 12 2.1 Matroid vòng của đồ thị 13
2.2 Matroid đối ngẫu 18
2.2.1 Đồ thị đối ngẫu 18
2.2.2 Maroid đối ngẫu 19
Chương 3 SỰ LIÊN HỆ GIỮA MATROID VỚI TRANSVERSAL 20
3.1 Khái niệm transversal 20
3.2 Sự liên hệ giữa matroid với transversal 21
Chương 4 SỰ LIÊN HỆ GIỮA MATROID VÀ TỐI ƯU TỔ HỢP 23
4.1 Thuật toán tham lam 23
4.2 Ví dụ 24
Trang 5MỞ ĐẦU
1.Lí do chọn đề tài
Lý thuyết Matroid là một dạng hiện đại của hình học được đề cập lần đầu tiênbởi nhà toán học Bill Tutte
Lý thuyết Matroid là lý thuyết về tập hợp với cấu trúc độc lập xác định trên
chúng Như vậy, vẫn theo lý thuyết chung, nghiên cứu những đối tượng (hình thức)trong mối quan hệ với các đối tượng khác dựa trên một cấu trúc nào đó
Lý thuyết Matroid đã tổng quát hóa được những tính chất về sự độc lập tuyến
tính, phụ thuộc tuyến tính trong không gian vector và còn nhiều ứng dụng đối với lý
thuyết đồ thị, tổ hợp Hơn nữa, càng về sau người ta càng thấy Matroid có ý nghĩa
với Toán học hiện đại
2 Mục đích và nhiệm vụ nghiên cứu
Bước đầu tiếp cận để tìm hiểu về Lý thuyết Matroid
3 Phương pháp nghiên cứu
Nghiên cứu Lý thuyết, vận dụng các phép suy luận logic để tìm cách chứngminh một số định lý, tính chất chưa được trình bày
Chương 1: Khái niệm Matroid và hệ thống tiên đề
Chương 2: Sự liên hệ giữa Matroid với lý thuyết đồ thị
Chương 3: Sự liên hệ giữa Matrid với transversal
Chương 4: Sự liên hệ giữa Matroid với tối ưu tổ hợp
Kết luận
Do thời gian thực hiện đề tài không nhiều, kiến thức còn hạn chế nên khóa luậnkhông tránh khỏi những thiếu sót Tác giả mong nhận được sự góp ý và những ýkiến phản biện của thầy cô và bạn đọc Xin chân thành cảm ơn!
Trang 6Chương 1
KHÁI NIỆM MATROID VÀ
HỆ THỐNG TIÊN ĐỀ
Đầu tiên ta sẽ tìm hiểu matroid là gì? Khái niệm được đưa ra sau đây dựa trên
các tập con độc lập của tập nền S cùng với một số ví dụ giúp ta có hình dung đầu
tiên về Matroid Ngoài ra ta có thể định nghĩa Matroid bằng các khái niệm tươngđương dựa trên tập cơ sở, tập vòng hay hàm hạng được được trình bày trong cácmục sau
Định nghĩa 1.1.1 Matroid là một cặp M gồm tập hữu hạn S và họ F các tập con của S được gọi là các tập độc lập của M nếu thỏa mãn các điều kiện sau:
Trang 7là độc lập tuyến tính Khi đóF gồm các tập con của E −{7} có nhiều nhất ba phần
tử loại trừ {1, 2, 4}, {2, 3, 5}, {2, 3, 6} và loại cả các tập chứa {5, 6} Ta được (E,F)
là matroid
Tính chất "độc lập" của các phần tử ở đây chính là tính chất độc lập tuyến tính
của hệ vector cột của ma trận đã cho
Ví dụ 1.1.2.
Xét đồ thị G cho bởi hình vẽ.
Hình 1.1: Đồ Thị G
Xét họF các tập cạnh của G mà không chứa chu trình nào của G Như vậy, các
tập của F sẽ không chứa bất kỳ tập nào trong các tập sau: {7}, {5,6}, {1,2,4},{2, 3, 5}, {1, 3, 4, 5}, {1, 3, 4, 6} Khi đó, E(G) với họF xác định trên lập thành một
Trang 8Ví dụ 1.1.3.
Cho tập S hữu hạn phần tử.
Xét họ F1 = { /0} khi đó ta có (S,F1) là một matroid được gọi là matroid tầm
Xét họF2=P(S) = 2Skhi đó ta có thể chứng minh được (S,F2) là một matroid
được gọi là matroid rời rạc.
Trên đây khái niệm matroid được định nghĩa dựa trên tính độc lập của các phần
tử Người ta có thể định nghĩa matroid với những cách khác, tất nhiên là chúngtương đương Sau đây ta tìm hiểu điều này thông qua các tiên đề
1.2 Tiên đề cơ sở
Cho matroid M = (S,F) Xét họ không rỗng B có phần tử là các tập con độc lập
lớn nhất của S trong M Vì các phần tử của B là các tập độc lập nên B là họ các tập
độc lập của M.
Bổ đề 1.2.1 Nếu B1, B2 là cơ sở của matroid M thì |B1| = |B2|.
Chứng minh
Cho B1, B2 là hai cơ sở của M, |B1| < |B2| Vì B1 và B2 là hai tập độc lập nên
thỏa mãn điều kiện M(3i), tồn tại phần tử e ∈ (B2− B1) sao cho (B1∪ e) ∈F Nhưvậy B1 không phải là tập độc lập lớn nhất, mâu thuẫn với B1 là cơ sở, suy ra giả sửsai Vì thế |B1| ≥ |B2|
Đổi vai trò của B1 và B2, tương tự ta chứng minh được |B2| ≥ |B1|
Trang 9Cho B1− x và B2 là hai tập độc lập, |B1− x| < |B2| Theo điều kiện M(3i),
∃y ∈ (B2− (B1− x)) sao cho ((B1− x) ∪ y) ∈F Hiển nhiên y ∈ (B2− B1) Đặt
B3 = (B1− x) ∪ y Theo bổ đề 1.2.1 ta có |B3| = |(B1− x) ∪ y| = |B1| Hơn nữa,(B1− x) ∪ y là tập độc lập, suy ra B3 là cơ sở của M Vậy B(2i) được thỏa mãn.
Bây giờ ta sẽ chứng minh họB và tập S là một matroid theo định nghĩa 1.1.1.
ChoI = {I ⊆ B|B ∈ B} Ta sẽ chứng minh (S,I) là một matroid
TừB thỏa mãn B(1i) nên I thỏa mãn M(1i).
Nếu I ∈I, I0 ⊆ I ⇒ I0 ⊂ B, B ∈B, thỏa mãn M(2i).
Cho I1, I2∈I với |I1| < |I2| sao cho ∀e ∈ I2− I1, I1∪ e /∈I Theo định nghĩa, B
có chứa phần tử B1, B2 Như vậy, I1 ⊆ B1 và I2 ⊆ B2 Cho rằng tập B2 được chọnsao cho |B2− (I2 ⊆ B1)| là nhỏ nhất Bởi vậy ta chọn I1, I2 để
I2− B1 = I2− I1 (1)Giả sử rằng B2− (I2∪ B1) là khác rỗng Khi đó, ta có thể chọn phần tử x từ tập này, theo B(2i), có một phần tử y ∈ B1− B2 sao cho (B2− x) ∪ y ∈B Nhưng sau
đó |((B2− x) ∪ y) − (I2∪ B1)| < |B2− (I2∪ B1)| và việc chọn B2 là mâu thuẫn, nên
B2− (I2∪ B1) là rỗng và B2− B1= I2− B1 Mà theo (1)I1 = B1 nên
B2− B1 = I2− I1 (2)Tiếp theo ta chứng minh B1− (I1∪ B2) là rỗng Giả sử B1− (I1∪ B2) là khôngrỗng, thì có x ∈ B1− (I1∪ B2) và y ∈ B2− B1 sao cho (B1− x) ∪ y ∈B
Bây giờ thì (I1∪ y) ⊆ ((B1− x) ∪ y) nên I1∪ y ∈I
Từ y ∈ (B2− B1), theo (2), y ∈ (I2− I1), mâu thuẫn với điều giả sử Suy ra
Trang 10Trong trường hợp này ta thấy tính chất B(2i), được thỏa mãn.Và điều này cũng
chứng tỏ không có cơ sở nào chứa cơ sở khác
Một cách mô tả khác về khái niệm matroid là nhờ vào hàm hạng
Cho M = (S,F) và họ tất cả các tập con của S là 2S
Trang 11Gọi hàm số r(A) = max{|X | với X ⊆ A và X ∈ (F)} là hạng của A Hạng của matroid M kí hiệu là r(M), hay r(S).
độc lập thì r(A) = |A|
Định lý 1.3.1 Cho S là tập hữu hạn khác rỗng và hàm số r : 2S−→ N Khi đó r là hàm hạng của matroid trên S khi và chỉ khi thỏa mãn các điều kiện sau ∀X ,Y của S:
Theo M(1i), /0 ∈ F nên r(/0) = 0 Cho X là tập con độc lập của A, dễ thấy |X| ≤
|A| ⇔ r(A) ≤ |A|, R(1i) được thỏa mãn.
Xét X ∈F,Y ⊆ X theo M(2i) ta có, Y ∈ F Y là tập độc lập ⇔ r(Y) = |Y| Có
Y ⊆ X nên |Y | ≤ |X| và r(X) = |X|, suy ra r(Y ) ≤ r(X), R(2i) được thỏa mãn.
Xét U,V ∈ F và |U| = |V| + 1 Theo M(3i) thì tồn tại x ∈ (U − V) sao cho(V ∪U ) ∈ (F), suy ra V ∪ x là tập độc lập
Ta có r(U ) = |U |, r(V ) = |V |, r(V ∪ x) = |V ∪ x|,
r(U ∪V ) ≤ |U ∪V |, r(U ∩V ) ≤ |U ∩V |
|U| + |V | = |U ∪V | + |U ∩V |
⇔ |U| + |V | ≥ r(U ∪V ) + r(U ∩V )
⇔ r(U) + r(V ) ≥ r(U ∪V ) + r(U ∩V )
⇔ r(U ∪V ) ≤ r(U) + r(V ) − r(U ∩V ) R(3i)được thỏa mãn
Cho I = {X ⊆ S|r(X) = |X|}, bây giờ ta sẽ chứng minh (S,I) là một matroid
Để làm được điều này, trước tiên ta đưa ra bổ đề sau
Bổ đề 1.3.1 Cho E là một tập hữu hạn và r là một hàm trên 2E thỏa mãn điều kiện
Chứng minh
Cho X −Y = {y1, y2, , yk} Ta xét phép quy nạp theo k.
Nếu k = 1 bài toán hiển nhiên là đúng
Giả sử bài toán đúng với k = n, cần chứng minh bài toán đúng với k = n + 1
Trang 12Ta trở lại phần chứng minh (S,I) là matroid Theo R(1i), 0 ≥ r(/0) ≥ |/0| nên
r| /0| = | /0| suy ra /0 ∈I M(1i) được thỏa mãn.
Cho I ∈I,I0 ⊆ I Khi đó r(I) = |I| Theo R(3i)
r(I0∪ (I − I0)) + r(I0∩ (I − I0)) ≥ r(I0) + r(I − I0) ≥ r(I0) + r(I − I0)
⇔ r(I) + r( /0) ≥ r(I0) + r(I − I0) (1)
Nhưng r(I) = |I| và r( /0) = 0 Ngoài ra, theo R(2i), r(I0) ≥ |I0| và r(I − I0) ≥
|I − I0| và (1) suy ra
|I| ≥ r(I0) + r(I − I0) ≥ |I0| + |I − I0| = |I|
⇒ r(I0) = |I0| ⇔ I0 ∈I M(2i) được thỏa mãn.
Để chứng minhI thỏa mãn M(3i), giả sử ngược lại.
Cho I1, I2∈I với |I1| < |I2| và ∀e ∈ (I2− I1), I1∪ e ∈I Khi đó , ∀e,r(I1∪ e) 6=
|I1∪ e| Do đó, theo R(1i), R(2i) và I ∈I ta nhận được ∀e:
Trang 13Vì đây có 4 vector trong cơ sở và là tập độc lập tuyến tính lớn nhất nên hạng của
Kích thước của C là 5, hạng của C là 4 nên R(2i) được thỏa mãn.
Cho tập D sao cho D ⊆ C ⊆ A
Ta thấy rằng 3 = r(D) < r(C) = 4 nên điều kiện R(2i) được thỏa mãn.
Từ định nghĩa của matroid, điều kiện R(3i) được thỏa mãn với hai tập C, D ⊆ E.
Nhận xét : Nếu bớt đi một phần tử của C thì ta được tập độc lập.
Định lý 1.4.1 Cho tập hữu hạn S và C là họ các tập con của S Khi đó C là tập vòng của matroid M trên S khi và chỉ khi thỏa mãn các điều kiện sau:
C(1i) /0 /∈C.
C(2i) Nếu C1,C2 ∈C và C1 ⊆ C2 thì C1= C2.
C(3i) Nếu C1,C2 ∈C và e ∈ C1∩C2 thì tồn tại C3 ∈C, C3 ⊆ (C1∪C2) − e.
Trang 14Chứng minh
Ta chứng minh tậpC được xây dựng như trên sẽ thỏa mãn ba điều kiện của Định
lý 1.4.1
Theo M(1i) ta có /0 ∈ F nên hiển nhiên /0 /∈ C, C(1i) được thỏa mãn.
Theo M(2i), nếu X ∈F,Y ⊆ X thì Y ∈ F Khi ta thêm cùng một phần tử vào mỗi
tập X, Y thì được X0,Y0 là các tập phụ thuộc tối tiểu và Y0 ⊆ X0 Nếu Y0 ⊂ X0 thì vô
lý vì một tập phụ thuộc tối tiểu không thể là con thực sự của một tập phụ thuộc tốitiểu khác, suy ra Y0 = X0, C(2i) được thỏa mãn.
Cho C1,C2∈C,C1∩C2= e Giả sử không có C3∈C sao cho C3⊆ (C1∪C2) − e
Ta có C1− e,C2− e,C3 ⊆ (C1∪ C2) − e đều là các tập độc lập và |(C1∪ C2) − e| >
|C1− e|, |(C1∪C2) − e| > |C2− e| Theo M(3i), xét hai tập C1− e,C3⊆ (C1∪C2) − eđộc lập và |(C1∪ C2) − e| > |C1− e| thì ∃ f ∈ ((C1∪ C2) − e) − (C1− e) sao cho(C1− e) ∪ f ∈F Mà f ∈ ((C1∪C2) − e) ⇔ f ∈ (C2− e) suy ra |C2− e| > |C1− e|.Tương tự ta có |C1− e| > |C2− e|, mâu thuẫn chứng tỏ giả sử sai Vậy điều kiện
ChoC là họ tập con của S thỏa mãn các điều kiện của định lý 1.4.1, C0
là họ cáctập C0 với C0 ⊂ C Như vậy C0 là tập độc lập, suy ra C0 ⊆F Theo định nghĩa 1.1.1
(S,C0) là một matroid
Ví dụ 1.4.1 Cho đồ thị H bởi hình vẽ.
Hình 1.2: Đồ thị H
Ta có thể nhìn nhận một vòng là một chu trình trong lý thuyết đồ thị Ta sẽ lấy
một vòng trong matroid M, là chu trình của H Tập vòng của đồ thị H gồm:
{a, b, c, d, e}
Trang 15{a, e, f }{a, e, d, g}
{d, f , g}
{b, c, g}
{b, c, d, f }
Quan sát các vòng trên ta thấy điều kiện C(1i), C(2i) được thỏa mãn.
Xét vòng C1 = {a, e, f } ,C2 = {a, b, c, d, e} thuộc C Ta thấy hai vòng đều chứahai phần tử {a} và {e} Xét X = C1∪C2
Trang 16Chương 2
SỰ LIÊN HỆ GIỮA
MATROID VÀ LÝ THUYẾT
ĐỒ THỊ
Sự liên hệ giữa matroid với lý thuyết đồ thị sẽ cung cấp thêm công cụ mang tính
lý thuyết có thể làm sáng tỏ nhiều vấn đề trong lý thuyết đồ thị Tuy nhiên sự thaythế hoàn toàn là không thể Chẳng hạn trong ví dụ sau đây, hai đồ thị Q1 và Q2 làkhông đẳng cấu nhưng hai matroid vòng M(Q1) và M(Q2) là hai matroid đẳng cấu
Ta nhắc lại, M1 = (S1,F1) và M2 = (S2,F2) được gọi là đẳng cấu nếu có songánh ϕ : S1 −→ S2 sao cho X ⊆ S1, X ∈F khi và chỉ khi ϕ(X) ∈ F2
Trang 17Ở ví dụ trên, chỉ cần xét matroid rời rạc trên E(G1) và E(G2) hiển nhiên ta thấy
M(G1) và M(G2) là đẳng cấu
Sau đây chúng ta sẽ tìm hiểu một số mối liên hệ giữa matroi với lý thuyết đồthị Các kí hiệu liên quan tới lý thuyết đồ thị nói tới trong chương này được sử dụngtheo [5]
2.1 Matroid vòng của đồ thị
Cho đồ thị G = (V, E), khái niệm matroid vòng của G, kí hiệu M(G) đã được
nói đến trong chương 1 Ở đó, cấu trúc độc lập của M(G) được xây dựng bởi các
tập cạnh không chứa chu trình của G.
Trong mục này ta sẽ nói đến sự liên hệ giữa matroid với đồ thị thông qua kháiniệm matroid vòng của đồ thị Định lý sau có thể suy ra ngay từ định nghĩa
Định lý 2.1.1 Cho đồ thị G = (V, E), khi đó mỗi chu trình của G sẽ tạo thành một
vòng của matroid M(G) trên tập cạnh E của G.
Từ tính chất trên, hiển nhiên ta thấy hệ quả sau
Hệ quả 2.1.1 Nếu G không liên thông thì mỗi cơ sở của M(G) là một rừng khung
của G Mỗi cây thuộc rừng khung là cây khung của một thành phần liên thông của G.
Trang 18Tính chất 2.1.2 Nếu G liên thông thì r(M(G)) = |V (G) − 1| (bằng số cạnh của
cây khung)
Chứng minh
Hàm hạng của một tập A là số phần tử của tập độc lập lớn nhất trong A Theo
lớn nhất Vậy r(M(G)) bằng số cạnh của cây khung
Từ tính chất này, hiển nhiên ta có hệ quả sau
Hệ quả 2.1.2 Khi G không liên thông, r(M(G)) = |V (G) − k(G)| với k(G) là số
thành phần liên thông của đồ thị G.
Với mọi X ⊆ E(G), X là một đồ thị độc lập thỏa mãn tính chất trên Từ đó hiểnnhiên ta có tính chất tiếp theo
Tính chất 2.1.3 ∀X ⊆ E(G), r(X ) = |V (X )| − k(X ) với k(X) là số thành phần liên
thông của X
Ví dụ 2.1.1.
Cho đồ thị K như hình vẽ:
Hình 2.1: Đồ Thị K
Theo tính chất 2.1.1 ta có tập cơ sở của đồ thị gồm:
{a, b, c, d, e} , {a, b, c, d, f }, {b, c, d, e, f } , {a, c, d, e, f }{a, b, d, e, f } , {a, b, c, e, f }, {a, b, c, d, g} , {a, b, c, g, e}
{a, f , e, d, g} , {a, f , g, e, c}, {c, d, g, f , a} , {b, c, d, g, f }
{b, g, f , e, d} , {b, c, g, f , e}
Theo tính chất 2.1.2 ta có:
Trang 19Quan sát danh sách trên ta thấy điều kiện B(1i) được thỏa mãn vì không có cơ
sở nào chứa cơ sở khác Ta có thể chứng minh điều kiện B(2i) bằng việc xét hai cơ
sở Nếu ta chọn B1 = {a, b, c, d} và B2 = {c, g, a, e}, khi đó ta thấy cây khung của
B1 và B2 trong hình 2.2 và hình 2.3
Hình 2.2: Cây khung B1
Hình 2.3: Cây khung B2
Trang 20Ta thấy, cây khung của đồ thị G có 5 đỉnh và 4 cạnh Chúng ta có thể chứng minh B(2i) bằng cách thay cạnh a của B1 bởi cạnh e của B2 sao cho B3 là một cơ sởmới B3= B1− {a} ∪ {e}.
Hình 2.4: Cây khung B3
Làm tương tự với bất kỳ cơ sở nào ta đều thấy B(2i) được thỏa mãn.
Ta xem xét ví dụ sau để thấy rõ hơn hạng của matroid trong lý thuyết đồ thị
Vì A là tập con độc lập của M(G) nên r(A) = |A| = 2 = 3 − 1.
Xét B cho bởi hình 2,7 là đồ thị con liên thông không có chu trình của G Hạng của B là 3 bởi vì tập con có số phần tử lớn nhất của B mà không chứa vòng là
{b, c, d}, {b, c, e}, {b, e, d}, có 3 phần tử B có 4 đỉnh, r(B) = 3 = 4 − 1
Trang 222.2 Matroid đối ngẫu
2.2.1 Đồ thị đối ngẫu
Cho đồ thị phẳng G Xây dựng đồ thị đối ngẫu G* của G như sau.
Mỗi đỉnh của G* biểu diễn một miền của đồ thị phẳng G.
Với mỗi cạnh e của G, nếu e nằm trên ranh giới của hai miền thì G* có một cạnh nối hai đỉnh của G* biểu diễn hai miền đó và gán cho nó nhãn chính là e Nếu e nằm trong một miền duy nhất thì G* một khuyên ở đỉnh tương ứng của G* rồi gán cho nó nhãn là e.
Ví dụ 2.2.1.
Xây dựng đối ngẫu G* của đồ thị G được cho bởi Hình 1.1
Hình 2.1: Đồ thị G* là đối ngẫu của đồ thị G
Họ các chu trình của đồ thị G* chính là họ các vòng của matroid M(G*) :
{{1, 4} , {1, 2, 3} , {2, 3, 4} , {3, 5, 6} , {1, 2, 5, 6} , {2, 4, 5, 6}}
Mỗi vòng của G*, nếu loại đi các cạnh tương ứng ở G thì đồ thị G bị chia thành hai phần Một tập cạnh như thế gọi là lát cắt của đồ thị G Từ ví dụ trên ta thấy một lát cắt của đồ thị G là một vòng của M(G).