Khái niện tô màu đồ thị: tô màu đồ thị tiếng Anh: graph coloring là trường hợp đặc biệt của gán nhãn đồ thị, mà trong đó mỗi đỉnh hay mỗi cạnh hay mỗi miền của đồ thị có thể được gán
Trang 1THUẬT TOÁN TÔ MÀU ĐỒ
THỊ
Trang 2 Khái niện tô màu đồ thị: tô màu đồ thị (tiếng
Anh: graph coloring) là trường hợp đặc biệt của gán
nhãn đồ thị, mà trong đó mỗi đỉnh hay mỗi cạnh hay mỗi miền của đồ thị có thể được gán bởi một màu hay một tập hợp các màu nào đó.
Trang 3VÍ DỤ VỀ ĐỒ THỊ
Trang 4 Tô màu đồ thị có 3 loại:
Tô theo đỉnh **: là gán cho mỗi đỉnh của đồ thị một màu nào đó sao cho không có hai đỉnh nào liền kề lại trùng màu nhau.
Tô theo cạnh: là gán cho mỗi cạnh của đồ thị một màu nào đó sao cho sao cho không có 2 cạnh nào trùng màu.
Tô theo miền: là gán cho mỗi miền của đồ thị phẳng một màu sao cho không có 2 miền có chung đường biên lại cùng màu.
Trang 5Một số định lí liên quan:
Mọi chu trình độ dài lẻ
đều có sắc số là 3
Nếu G có chứa một đồ thị con
đẳng cấu với Kn thì x(G)>=n;
Một đơn đồ thị có thể tô bằng 2 màu khi và chỉ khi nó không có chu trình độ dài lẻ.
Mọi đồ thị phẳng đều có số sắc số
không lớn hơn 4
Trang 6tô màu theo đỉnh.
Giải thuật Tham lam(Greedy) Welch- PowellGiải thuật
Tô màu theo
bậc
Trang 7Tô màu theo bậc
Ý tưởng:
While(tất cả các đỉnh đã được tô)
{
Bước 1: tô màu I cho đỉnh có bậc lớn nhất
Bước 2: + Bậc của đỉnh được tô màu thi hạ xuống 0
+ Bậc của đỉnh kề với đỉnh đã tô thị: bậc=bâc-1 Bước 3: cấm tô màu I cho các đỉnh vừa bị hạ bậc
}
Ưu khuyết của thuật toán:
Chương trình chạy khá tốt, độ phức tạp O(n^2) nhưng chưa chắc đã cho sắc số nhỏ nhất
Trang 8Ý tưởng: Dùng màu thứ nhất tô cho tất cả các đỉnh của đồ thị có thể tô được, sau đó dùng màu thứ hai tô tất cả các đỉnh của đồ thị còn lại có thể và cứ như thế cho đến khi tô hết tất cả các đỉnh của đồ thị.
Ưu, khuyết điểm của thuật toán: Với thuật toán trên việc cài đặt dễ dàng hơn nhưng hiệu quả không cao, thuật toán chỉ đáp ứng được yêu cẩu bài toán đặt ra, nhưng không phải với số màu ít nhất có thể tô
được.
Giải thuật tham lam (greedy)
Trang 9Ví dụ ta có hình dưới:
Vz
Với đồ thị này áp dụng giải thuật tham lam trên
ta cần phải dùng đến bốn màu trong khi chỉ cần ba mầu là đủ.
Trang 10Thuật giải Welch -
Powell
Giải thuật:Về ý tưởng thuật giống như thuật giải vừa nêu, nhưng ta sẽ sắp
xếp các đỉnh theo thứ tự bậc đỉnh giảm dần,việc làm như thế sẽ hạn chế được
số màu cần tô cho đô thị, mã giải tương tự như thuật giải trên:
1 Sắp xếp các đỉnh của G theo bậc giảm dần
2 Dùng một màu để tô đỉnh đầu tiên và cũng dùng màu này
để tô màu các đỉnh liên tiếp trong danh sách mà không kề
với đỉnh đầu tiên
3 Bắt đầu trở lại danh sách, tô màu thứ hai cho đỉnh chưa
được tô và lập lại quá trình cho đến khi tất cả các đỉnh được
tô màu
Trang 11 Chú ý: Thuật toán Welch-Powell chưa cho ta sắc số của một đồ thị G,
nó chỉ giúp ta một cách tiếp cận để tìm sắc số của một đồ thị Để tìm sắc số của một đồ thị thì sau khi tô màu xong ta phải sử dụng các
định lý, các tính chất đã học của lý thuyết đồ thị để khẳng định số
màu được dùng là ít nhất và từ đó suy ra sắc số của đồ thị Bài toán tìm sắc số của một đồ thị là một bài toán khó và không phải đồ thị
nào cũng tìm được sắc số của nó một cách dễ dàng.
Trang 12Ví dụ về giải thuật:
Ta có đỉnh v1 v3 v4 v6 v2 v5
bậc: 4 4 3 3 2 2 màu a b c b c a
Ta lại có G chứa đồ thị con đẳng cấu với K3 bao gồm các đỉnh v1, v2, v3 (G) 3.
Do G có chứa đồ thị con là K3 nên theo định lý 2 ta có (G) Ta có thể dùng 3 màu để tô G là ít nhất
(G) = 3
Trang 13Ứng Dụng