Tải bản đầy đủ (.ppt) (33 trang)

Chuong_4_DTphang_Tomau

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (794.29 KB, 33 trang )

<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1>

<b>Chương 4</b>



<b>Đồ thị phẳng – Bài toán </b>



<b>Đồ thị phẳng – Bài tốn </b>



<b>tơ màu đồ thị</b>



</div>
<span class='text_page_counter'>(2)</span><div class='page_container' data-page=2></div>
<span class='text_page_counter'>(3)</span><div class='page_container' data-page=3>

<b>Đồ thị phẳng</b>



 <i><b>Bài toán mở đầu:</b></i>


 Có 3 gia đình, 3 nhà cung cấp điện, nước, gas.


 Các gia đình đều cần điện, nước, gas và đều muốn đi dây riêng.


 Cần nối dây từ các gia đình đến các nhà cung cấp sao cho không dây
nào cắt dây nào.


04/20/21


Lý thuyết đồ thị 3


<b>A</b>


<b>B</b>


<b>C</b>



</div>
<span class='text_page_counter'>(4)</span><div class='page_container' data-page=4>

<b>Đồ thị phẳng</b>



 <b>Định nghĩa: </b>Đồ thị vơ hướng G là đồ thị phẳng nếu



ta có thể biểu diễn nó trên một mặt phẳng sao cho
khơng có cạnh nào cắt nhau.


<b>VD:</b>


<b>Đồ thị</b>
<b> phẳng</b>


</div>
<span class='text_page_counter'>(5)</span><div class='page_container' data-page=5>

<b>Đồ thị phẳng (tt)</b>



 Các đồ thị không phẳng nổi tiếng


04/20/21


Lý thuyết đồ thị 5


<b>Đồ thị K<sub>5</sub> – đồ thị </b>
<b>đầy đủ</b>


</div>
<span class='text_page_counter'>(6)</span><div class='page_container' data-page=6>

<b>Công thức Euler</b>



 Xét đồ thị sau:


 <b>Định lý: </b>Cho G là đồ thị phẳng, liên thông với n đỉnh và
m cạnh. Gọi r là số miền trong biểu diễn phẳng của G.
Khi đó, ta có:


<b>r = m - n + 2</b>
<b>1</b>



<b>4</b>
<b>3</b>


<b>2</b>


<b>5</b>


</div>
<span class='text_page_counter'>(7)</span><div class='page_container' data-page=7>

<b>Công thức Euler (tt)</b>



 <b>Chứng minh công thức Euler:</b>


04/20/21


</div>
<span class='text_page_counter'>(8)</span><div class='page_container' data-page=8>

<b>Công thức Euler (tt)</b>



 <b>Hệ quả. </b>Nếu G là đơn đồ thị phẳng liên thông với e cạnh, v
đỉnh, trong đó v  3. Khi đó ta có:


<b>e </b><b> 3v – 6</b>
 <b>Chứng minh:</b>


 Gọi r là số miền


 Mỗi miền đều tương ứng với ít nhất 3 cạnh
 Mỗi cạnh tướng ứng với đúng 2 miền


 Gọi bậc của mỗi miền là số cạnh tương ứng với nó


 Suy ra, tổng bậc của các miền ít nhất là bằng 2 lần số cạnh



 Áp dụng công thức Euler suy ra điều phải chứng minh.


2.

deg( ) 3.



<i>R</i>


</div>
<span class='text_page_counter'>(9)</span><div class='page_container' data-page=9>

<b>Phép chia cạnh</b>



 Để nhận biết xem một đồ thị có phải là đồ thị phẳng


có thể sử dụng định lý Kuratovski, mà để phát biểu
nó ta cần một số khái niệm sau : Ta gọi một phép
chia cạnh (u,v) của đồ thị là việc loại bỏ cạnh này
khỏi đồ thị và thêm vào đồ thị một đỉnh mới w cùng
với hai cạnh (u,w), (w, u) . Hai đồ thị G(V,E) và
H=(W,F) được gọi là đồng phôi hay đồng cấu nếu
chúng có thể thu được từ cùng một đồ thị nào đó
nhờ phép chia cạnh.


a


u v


b c


a


u w v


b c



</div>
<span class='text_page_counter'>(10)</span><div class='page_container' data-page=10>

<b>Định lý Kuratowski</b>



 <b>Định lý:</b> Đồ thị G là đồ thị phẳng nếu và chỉ nếu G


không chứa đồ thị con đẳng cấu với K5 hoặc K3x3


</div>
<span class='text_page_counter'>(11)</span><div class='page_container' data-page=11>

<b>Ví dụ</b>



Hình 1 Hình 2 Hình 3


 Đồ thị trong hình 1 và 2 là đồ thị phẳng. Các đồ thị này có


6 đỉnh, nhưng khơng chứa đồ thị con K3,3 được vì có đỉnh


bậc 2, trong khi tất cả các đỉnh của K3,3 đều có bậc 3;


cũng khơng thể chứa đồ thị con K5 được vì có những


đỉnh bậc nhỏ hơn 4, trong khi tất cả các đỉnh của K5 đều
có bậc 4.


 Đồ thị trong hình 3 là đồ thị khơng phẳng vì nếu xố đỉnh


b cùng các cạnh (b,a), (b,c), (b,f) ta được đồ thị con là K5.


</div>
<span class='text_page_counter'>(12)</span><div class='page_container' data-page=12></div>
<span class='text_page_counter'>(13)</span><div class='page_container' data-page=13>

<b>Tô màu đồ thị (tt)</b>



04/20/21



Lý thuyết đồ thị 13


<b>Phải dùng 3 </b>
<b>màu để tổ</b>


<b>?</b>



</div>
<span class='text_page_counter'>(14)</span><div class='page_container' data-page=14></div>
<span class='text_page_counter'>(15)</span><div class='page_container' data-page=15>

<b>Tô màu đồ thị (tt)</b>



04/20/21


Lý thuyết đồ thị 15


</div>
<span class='text_page_counter'>(16)</span><div class='page_container' data-page=16>

<b>Bài tốn tơ màu đồ thị</b>



 <b>Định nghĩa.</b> Tơ màu một đồ thị vô hướng là một sự


gán màu cho các đỉnh sao cho hai đỉnh kề nhau phải
khác màu nhau.


 <b>Định nghĩa.</b> Số màu (sắc số) của một đồ thị là số


màu tối thiểu cần thiết để tơ màu đồ thị này.


</div>
<span class='text_page_counter'>(17)</span><div class='page_container' data-page=17>

<b>Bài tốn tô màu đồ thị (tt)</b>



 <b>Định lý. (Định lý 4 màu)</b> Số màu của một đồ thị phẳng là không lớn


hơn 4.



 <b>Một số thông tin liên quan:</b>


 Bài tốn được đưa ra năm 1850


 Có rất nhiều chứng minh sai về bài toán này


 Chứng minh sai nổi tiếng là của Alfred Kempe vào năm 1879


 Percy Heawood phát hiện ra chứng minh sai ở trên vào năm 1890
 Dựa vào đó, năm 1976 Appel và Haken đã chứng minh bằng


cách sử dụng máy tính


 Đối với các đồ thị khơng phẳng số màu có thể tuỳ ý lớn
 Để chứng minh đồ thị G là n-màu ta phải


 Chỉ ra 1 cách tô màu G với n màu


 CMR không thể tô màu G với ít hơn n màu


04/20/21


</div>
<span class='text_page_counter'>(18)</span><div class='page_container' data-page=18>

<b>Các bài tốn tơ màu đồ thị</b>



 Cho đồ thị G và số nguyên k. Xây dựng một thuật


toán để kiểm tra xem có thể tơ màu G bằng k màu,
nếu được thì thực hiện việc đó.


 Cho đồ thị G hãy xác định số màu k của đồ thị và



</div>
<span class='text_page_counter'>(19)</span><div class='page_container' data-page=19>

<b>Nhận biết đồ thị 2-màu</b>



 Định lý


<i>Một đồ thị G là 2-màu khi và chỉ khi G khơng chứa một chu trình lẻ nào.</i>


 Chứng minh


 Giả sử G là đồ thị 2-màu ta phải CMR G khơng chứa chu trình lẻ.


Thật vậy nếu G có chu trình lẻ C = (v1, v2, …, v2n+1, v1). Do C chỉ
được tô bởi 2 màu các đỉnh lẻ sẽ được tô bằng 1 màu. Nhưng lúc ⇒


đó v1và v2n+1là 2 đỉnh kề nhau có cùng màu vô lý !!! (ĐPCM).


 Giả sử G không chứa chu trình lẻ.Ta sẽ CMR G là đồ thị 2-màu.


 Chọn 1 đỉnh r làm gốc và tơ nó màu đỏ. x V sẽ được tô màu ∀ ∈


đỏ nếu đường đi ngắn nhất từ x tới r có số cạnh chẵn. Trái lại tơ
x màu xanh.


 Ta sẽ chứng minh rằng đỉnh x, y của cạnh (x,y) bất kỳ được tô


hai màu khác nhau.


 Trái lại giả sử x và y là 2 đỉnh của cạnh (x,y) nào đó được tô


</div>
<span class='text_page_counter'>(20)</span><div class='page_container' data-page=20>

<b>Nhận biết đồ thị 2-màu</b>



Trường hợp 1 :


Px và Py khơng có chung cạnh. Ta có Px + (x,y) +
Py là chu trình có số cạnh lẻ. (Mâu thuẫn giả


thiết).


Trường hợp 2 :


Px và Py có chung k cạnh từ đỉnh a tới đỉnh b. Ta
sẽ nhận được hai chu trình Ca , Cb và k cạnh
chung. Ta có Px + (x,y) + Py có số lẻ cạnh mà : |
Px + (x,y) + Py | = |Ca| + |Cb| + 2k. Do đó một trong
hai chu trình Ca hoặc Cb sẽ có số cạnh lẻ.


Vơ lý !!! (ĐPCM). Vậy G là 2 -màu


</div>
<span class='text_page_counter'>(21)</span><div class='page_container' data-page=21>

Thuật tốn

<b>SequentialColor </b>



Thuật tốn SequentialColor tơ màu 1 đồ thị với k màu
Xem các đỉnh theo thứ tự từ 1 đến |V|, tại mỗi đỉnh v
gán màu đầu tiên có sẵn mà chưa được gán cho 1
đỉnh nào liền v


1. Xếp các đỉnh theo thứ tự bất kỳ 1,2,…n


2. Tạo tập Li - tập các màu có thể gán cho đỉnh i.
3. Bắt đầu tô từ đỉnh1


4. Với đỉnh k {1,…,n} tô màu đầu tiên củaL∈ kcho k



5. j > k và j kề k loại bỏ trong L∀ j màu đã được tô cho k


</div>
<span class='text_page_counter'>(22)</span><div class='page_container' data-page=22>

 Ví dụ


Các màu:
X: Xanh
Đ: Đỏ
T: Tím
V: Vàng
Thứ tự tô các đỉnh: 1, 2, 3, 4


Các bước L1 L2 L3 L4 Màu tô


Khởi tạo X, Đ, T, V X, Đ, T, V X, Đ, T, V X, Đ, T, V


B1 X X, Đ, T, V X, Đ, T, V Đ, T, V 1 - Xanh


B2 X Đ, T, V Đ, T, V 2 - Xanh


B3 Đ T, V 3 - Đỏ


</div>
<span class='text_page_counter'>(23)</span><div class='page_container' data-page=23>

 Ví dụ


Các màu:
X: Xanh
Đ: Đỏ
T: Tím
V: Vàng
Thứ tự tơ các đỉnh: 4, 3, 2, 1



Các bước L4 L3 L1 L2 Màu tô


Khởi tạo X, Đ, T, V X, Đ, T, V X, Đ, T, V X, Đ, T, V


B1 X Đ, T, V Đ, T, V X, Đ, T, V 4 - Xanh


B2 Đ Đ, T, V X, T, V 3 - Đỏ


B3 Đ X, T, V 1 - Đỏ


B4 X 2 - Xanh


13


</div>
<span class='text_page_counter'>(24)</span><div class='page_container' data-page=24>

<b>Thuật toán Welch-Powell</b>



Sắp xếp các đỉnh G theo bậc giảm dần.



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.



Bắt đầu trở lại đầu danh sách, tô màu thứ



</div>
<span class='text_page_counter'>(25)</span><div class='page_container' data-page=25>

<b>Ví dụ Thuật tốn Welch-Powell</b>


1
2 4

3
6
5


Sắp xếp bậc giảm dần


Đỉnh

2 3 5 1 4 6


Bậc

4 3 3 2 2 1



 Tô màu xanh cho đỉnh 2 và các đỉnh không kề đỉnh 2


mà chưa được tô (đỉnh 6)


 Tô màu đỏ cho đỉnh 3 và các đỉnh không kề 3 mà


chưa được tô (đỉnh 4)


 Tô màu vàng cho đỉnh 5 và các đỉnh không kề 5 mà


</div>
<span class='text_page_counter'>(26)</span><div class='page_container' data-page=26>

<b>Thuật tốn Greedy</b>



 <b>Ý tưởng:</b>


Đầu tiên ta cố tơ cho được nhiều đỉnh với màu đầu tiên, và rồi dùng
một màu mới tô các đỉnh chưa tô sao cho tô được càng nhiều đỉnh
càng tốt.Và quá trình này được lặp lại với những màu khác cho đến
khi mọi đỉnh đều được tơ màu.


 <b>Thuật tốn :</b>


 <b>Bước 1</b>: Chọn 1 đỉnh chưa tô màu và tô màu cho nó. Với các



đỉnh cịn lại mà khơng có cạnh chung với đỉnh đang xét thì tơ các
đỉnh đó cùng 1 màu với đỉnh đang xét.


 <b>Bước 2 </b>: Duyệt danh sách các đỉnh chưa tô màu, lấy 1 đỉnh trong


số chúng và tô bằng màu mới rồi quay lại bước 1. Lặp lại quá
trình trên cho đến khi tất cả các đỉnh đều được tô màu.


 <b>Nhận xét :</b>


</div>
<span class='text_page_counter'>(27)</span><div class='page_container' data-page=27>

<b>Ví dụ Thuật tốn Greedy</b>


1
2 4
3
6
5


 Tơ màu xanh cho đỉnh 1 và các đỉnh không kề đỉnh 1 mà


chưa được tô (đỉnh 4)


 Tô màu đỏ cho đỉnh 2 và các đỉnh không kề 2 mà chưa


được tô (đỉnh 6)


 Tô màu vàng cho đỉnh 3 và các đỉnh không kề 3 mà chưa


được tơ màu



 Tơ màu tím cho đỉnh 5 và các đỉnh không kề 5 mà chưa


được tô màu


</div>
<span class='text_page_counter'>(28)</span><div class='page_container' data-page=28>

<b>Bài tốn tơ màu đồ thị (tt)</b>



</div>
<span class='text_page_counter'>(29)</span><div class='page_container' data-page=29>

<b>Ứng dụng</b>



 <b>Bài toán lập lịch thi: </b> Hãy lập lịch thi trong một


trường đại học sao cho khơng có sinh viên nào thi
hai môn cùng một lúc.


 <b>Giải pháp:</b>


 Biểu diễn bằng đồ thị:


 Mỗi môn học là một đỉnh


 Nếu 2 môn học nào được dự thi bởi cùng 1 sinh viên thì sẽ
nối bằng 1 cạnh.


 Cách lập lịch sẽ tương ứng với bài toán tô màu của đồ thị
này.


04/20/21


</div>
<span class='text_page_counter'>(30)</span><div class='page_container' data-page=30>

<b>Ứng dụng (tt)</b>



 <b>VD:</b> Có 7 mơn thi với thơng tin như sau:



 Mơn 1: có các sinh viên A, B, C và D thi
 Môn 2: có các sinh viên A, E, F, G và H thi
 Mơn 3: có các sinh viên B, E, I, J và K thi
 Mơn 4: có các sinh viên B, F, L và M thi
 Mơn 5: có các sinh viên G, L, N và O thi
 Môn 6: có các sinh viên J, M, N và P thi


 Mơn 7: có các sinh viên D, H, K, O và P thi


</div>
<span class='text_page_counter'>(31)</span><div class='page_container' data-page=31>

<b>Ứng dụng (tt)</b>



04/20/21


Lý thuyết đồ thị 31


 <b>VD:</b> Có 7 mơn thi với thơng tin như sau:


 Mơn 1: có các sinh viên A, B, C và D thi
 Mơn 2: có các sinh viên A, E, F, G và H thi
 Môn 3: có các sinh viên B, E, I, J và K thi
 Mơn 4: có các sinh viên B, F, L và M thi
 Mơn 5: có các sinh viên G, L, N và O thi
 Mơn 6: có các sinh viên J, M, N và P thi
 Mơn 7: có các sinh viên D, H, K, O và P thi


<b>1</b>
<b>2</b>
<b>3</b>
<b>4</b>


<b>5</b>
<b>6</b>
<b>7</b>


<b>Đợt thi</b> <b>Môn thi</b>


1 1, 5


2 2, 6


3 3


</div>
<span class='text_page_counter'>(32)</span><div class='page_container' data-page=32>

<b>Ứng dụng (tt)</b>



 <b>Bài toán phân chia tần số.</b>


 Các kênh truyền hình từ số 2 đến số 13 được phân chia


cho các đài truyền hình sao cho khơng có 2 đài cách
nhau không quá 150 dặm lại dùng chung một kênh


 Hãy tìm cách phân sao cho số kênh dùng là ít nhất


 Giải pháp:


 Biểu diễn bằng đồ thị:


 Mỗi đỉnh là một đài phát


 Hai đỉnh được nối một cạnh nếu hai đài phát cách nhau ít


hơn 150 dặm


</div>
<span class='text_page_counter'>(33)</span><div class='page_container' data-page=33>

<b>Ứng dụng (tt)</b>



 <b>Bài toán các thanh ghi chỉ số:</b>


 Trong lập trình các thanh ghi thường được dùng để lưu
trữ giá trị các biến tạm thời


 Tìm số thanh ghi ít nhất cần sử dụng trong một chương
trình


 <b>Giải pháp:</b>


 Biểu diễn bằng đồ thị:


 Mỗi biến tương ứng với mỗi đỉnh


 Hai đỉnh được nối với nhau nếu hai biến cùng được ghi xuống


tại một thời điểm


 Số thanh ghi ít nhất cần sử dụng sẽ là số màu của đồ thị
trên


04/20/21


</div>

<!--links-->

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×