Luận văn thạc sĩ toán học độ phức tạp của bài toán biến đổi đồ thị về đồ thị đầy đủ

20 3 0
Luận văn thạc sĩ toán học độ phức tạp của bài toán biến đổi đồ thị về đồ thị đầy đủ

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BỘ GIÁO DỤC VIỆN HÀN LÂM KHOA HỌC VÀ ĐÀO TẠO VÀ CÔNG NGHỆ VIỆT NAM HỌC VIỆN KHOA HỌC VÀ CÔNG NGHỆ Trần Quang ĐỘ PHỨC TẠP CỦA BÀI TOÁN BIẾN ĐỔI ĐỒ THỊ VỀ ĐỒ THỊ ĐẦY ĐỦ LUẬN VĂN THẠC SĨ TOÁN HỌC Hà Nội[.]

BỘ GIÁO DỤC VÀ ĐÀO TẠO VIỆN HÀN LÂM KHOA HỌC VÀ CÔNG NGHỆ VIỆT NAM HỌC VIỆN KHOA HỌC VÀ CÔNG NGHỆ - Trần Quang ĐỘ PHỨC TẠP CỦA BÀI TOÁN BIẾN ĐỔI ĐỒ THỊ VỀ ĐỒ THỊ ĐẦY ĐỦ LUẬN VĂN THẠC SĨ TOÁN HỌC Hà Nội - 2019 BỘ GIÁO DỤC VÀ ĐÀO TẠO VIỆN HÀN LÂM KHOA HỌC VÀ CÔNG NGHỆ VIỆT NAM HỌC VIỆN KHOA HỌC VÀ CÔNG NGHỆ - Trần Quang ĐỘ PHỨC TẠP CỦA BÀI TOÁN BIẾN ĐỔI ĐỒ THỊ VỀ ĐỒ THỊ ĐẦY ĐỦ Chuyên ngành: Toán ứng dụng Mã số: 46 01 12 LUẬN VĂN THẠC SĨ TOÁN HỌC NGƯỜI HƯỚNG DẪN: PGS.TSKH Phan Thị Hà Dương Hà Nội - 2019 LỜI CAM ĐOAN Tơi xin cam đoan viết luận văn tìm tịi, học hỏi thân hướng dẫn tận tình cô Phan Thị Hà Dương Mọi kết nghiên cứu ý tưởng tác giả khác, có trích dẫn cụ thể Đề tài luận văn chưa bảo vệ hội đồng bảo vệ luận văn thạc sĩ chưa công bố phương tiện Tôi xin chịu trách nhiệm lời cam đoan Hà Nội, ngày tháng 12 năm 2018 Người cam đoan Trần Quang LỜI CẢM ƠN Luận văn hoàn thành hướng dẫn tận tình Phan Thị Hà Dương Tơi xin bày tỏ lịng biết ơn sâu sắc đến cô, người giúp đỡ bảo cách tận tình suốt trình thực luận văn Xin cảm ơn thầy cô anh chị Seminar Cơ sở Tốn-Tin góp ý giúp đỡ tơi q trình làm luận văn Xin cảm ơn thầy cô, anh chị Học viện Khoa học-Cơng nghệ nói chung Viện Tốn học nói riêng tạo điều kiện cho tơi hồn thành luận văn Cảm ơn chị Thúy, chị Vân Anh tạo điều kiện xếp cho tơi thời gian bảo vệ luận văn sớm Đặc biệt xin gửi lời cảm ơn chân thành biết ơn vô tận cha mẹ tôi, người sát cánh tạo động lực để tơi hồn thành luận văn Trần Quang MỤC LỤC Lời cam đoan Lời cảm ơn Mục lục Lời nói đầu Danh mục hình vẽ đồ thị Các kiến thức 1.1 Đồ thị, khái niệm 8 1.2 1.3 1.4 1.1.1 Khái niệm đồ thị 1.1.2 1.1.3 Đồ thị con, đồ thị cảm sinh từ tập đỉnh Bậc đỉnh 10 1.1.4 1.1.5 Hành trình Đồ thị phẳng 11 11 1.1.6 Đồ thị đầy đủ, đồ thị bù, đồ thị hai phía Bài toán Clique 12 14 1.2.1 1.2.2 Khái niệm Clique Bài toán Clique 14 15 Độ phức tạp tính tốn 1.3.1 Độ phức tạp thuật tốn 15 15 1.3.2 Bài toán định 16 1.3.3 1.3.4 Lớp P, lớp NP Quy dẫn 16 19 1.3.5 NP-khó, NP-đầy đủ Một số toán thuộc lớp NP-đầy đủ 20 21 1.4.1 1.4.2 Bài toán SAT, 3SAT Bài toán tập độc lập (IndependentSet) 21 24 1.4.3 Bài toán Clique 26 1.4.4 Bài toán Balanced Complete Biartite Subgraph (BCBS) 27 Bài toán Clique Editing 2.1 2.2 2.3 30 Giới thiệu toán Clique Editing 31 2.1.1 2.1.2 Bài toán chỉnh sửa (thêm, bớt cạnh) Clique Bài toán Clique Editing 31 32 Bài toán Clique Editing toán NP-đầy đủ 2.2.1 Các tính chất liên quan toán Clique Editing 35 35 2.2.2 Bài toán Clique Editing NP-đầy đủ Bài toán Clique Editing đồ thị phẳng 37 38 Clique Editing toán FPT 40 3.1 Giới thiệu lớp FPT, toán FPT 40 3.2 3.3 Thuật tốn Nhân tử hóa 3.2.1 Khái niệm 41 41 3.2.2 Thuật tốn Nhân tử hóa cho tốn Clique Editing Thuật toán FPT cho toán Clique Editing 42 47 3.3.1 3.3.2 47 47 KẾT LUẬN Thuật toán Độ phức tạp 49 LỜI NÓI ĐẦU Trong khoa học ngày nay, ngồi việc tìm lời giải tốn, cịn trọng đến việc cải thiện phát triển để tạo nên lời giải hiệu quả, tiết kiệm thời gian giải Nội dung luận văn đề cập đến vấn đề độ phức tạp thuật toán, đặc biệt tập trung nói tốn Clique Editing số kết có Bài tốn Clique Editing, tốn chỉnh sửa đồ thị đồ thị đầy đủ Nội dung toán sau, làm cách để biến đổi (bằng cách thêm bớt cạnh) đồ thị cho trước thành đồ thị đầy đủ cho số phép thêm bớt cạnh Trong thực tế hay khoa học mơ hình đồ thị đầy đủ phổ biến thơng dụng, lí toán dành nhiều quan tâm Những toán chỉnh sửa đồ thị quan tâm từ năm 80 kỷ XIX, điển Garey, Johnson, [2] Bài toán Clique Editing toán thuộc lớp toán chỉnh sửa đồ thị quan tâm gần đây, chứng minh thuộc lớp FPT (Fixed-Parameter Tractable) Flum Grobe 2006 [3] Tính NP-đầy đủ tốn Clique Editing nêu câu hỏi mở Peter Damaschke 2013 chứng Ivan Kovᡠc 2014 [4] Chúng tơi tập trung trình bày tốn Clique Editing, chứng minh tính NP-đầy đủ tốn, sau tìm hiểu lớp toán FPT chứng minh toán Clique Editing thuộc lớp FPT Luận văn chia làm ba chương sau: Chương 1: Các khái niệm Trong phần chúng tơi trình bày số khái niệm đồ thị độ phức tạp tính tốn lớp P, lớp NP, lớp NP-đầy đủ số tốn nằm lớp NP-đầy đủ có liên quan đến toán Clique Editing Chương 2: Bài toán Clique Editing Ở chương này, giới thiệu tốn Clique Editing, sau nêu số tính chất liên quan đến toán, cuối chứng minh toán Clique Editing thuộc lớp NP-đầy đủ Chương 3: Bài toán Clique Editing thuộc lớp FPT Trong chương chúng tơi trình bày định nghĩa lớp FPT thuật tốn FPT, sau chứng minh tốn Clique Editing thuộc lớp FPT Mặc dù thân tác giả cố gắng, xong luận văn khơng tránh khỏi thiếu sót Rất mong nhận góp ý q thầy bạn để luận văn hoàn thiện Trần Quang DANH MỤC CÁC HÌNH VẼ VÀ ĐỒ THỊ Số hiệu hình vẽ Tên hình vẽ Trang 1.1 Một ví dụ đơn đồ thị vô hướng 1.2 Một ví dụ đa đồ thị vơ hướng 1.3 Một ví dụ đồ thị cảm sinh 10 1.4 Một ví dụ bậc đỉnh 10 1.5 Biểu diễn phẳng đồ thị 12 1.6 Một ví dụ đồ thị đầy đủ K4 13 1.7 Một ví dụ đồ thị bù 13 1.8 Một ví dụ đồ thị phía 13 1.9 Một ví dụ đồ thị phía đầy đủ K3,2 14 1.10 Một ví dụ Clique dồ thị 14 1.11 Phép quy dẫn từ toán 3SAT sang 25 tốn INDEPENDENTSET 1.12 Một ví dụ tốn BCBS 1.13 Một ví dụ minh họa phép quy dẫn từ 29 toán Clique sang toán BCBS 2.1 Một ví dụ chỉnh sửa (thêm bớt 31 27 cạnh) 2.2 Một ví dụ việc chỉnh sửa đồ thị 32 thành đồ thị đầy đủ 2.3 2.4 2.5 2.6 Hình minh họa lời giải ví dụ đơn 33 giản tốn Clique Editing 2.7 Sơ đồ quy dẫn để chứng minh Clique 37 Editing thuộc lớp NP-khó Chương Các kiến thức Trước đến vấn đề luận văn chúng tơi trình bày kiến thức Đồ thị giới thiệu tốn Clique Và đồng thời trình bày độ phức tạp tính tốn thuật tốn Các khái niệm đươc tham khảo số tài liệu [1],[7] 1.1 1.1.1 Đồ thị, khái niệm Khái niệm đồ thị Định nghĩa 1.1.1 Đồ thị vô hướng đồ thị G cặp khơng có thứ tự G := (V, E), • V , tập đỉnh • E, tập cặp đỉnh (không thứ tự), gọi cạnh Hai đỉnh thuộc cạnh gọi đầu mút cạnh Cạnh đồ thị mà có điểm đầu mút trùng gọi khuyên Đồ thị vơ hướng có nhiều khun Các cạnh mà có cặp đầu mút gọi cạnh song song Định nghĩa 1.1.2 Đơn đồ thị vơ hướng đồ thị khơng có khun khơng có cặp cạnh song song 9 Hình 1.1: Đơn đồ thị vô hướng Định nghĩa 1.1.3 Đa đồ thị vô hướng đồ thị vô hướng mà khơng phải đơn đồ thị Hình 1.2: Đa đồ thị vô hướng Trong luận văn này, đề cập đến đơn đồ thị vô hướng Viết "đồ thị G = (V, E)", hiểu đơn đồ thị vô hướng G = (V, E) Nhiều viết gọn "đồ thị G", kí hiệu V (G), E(G) tập đỉnh, tập cạnh đồ thị G 1.1.2 Đồ thị con, đồ thị cảm sinh từ tập đỉnh Định nghĩa 1.1.4 Cho đơn đồ thị vô hướng G = (V, E) Khi G0 = (V , E ) gọi đồ thị G V ⊂ V E ⊂ E Định nghĩa 1.1.5 Đồ thị G0 = (V , E ) G = (V, E) gọi đồ thị bao trùm G V = V Định nghĩa 1.1.6 Cho đồ thị G = (V, E) tập đỉnh V ⊂ V Đồ thị G0 = (V , E ) thỏa mãn E ⊂ E E chứa tất các cạnh E mà 10 có hai đầu mút đỉnh thuộc V , gọi đồ thị G cảm sinh tập đỉnh V hay gọi đồ thị cảm sinh G tập đỉnh V Khi G0 ký hiệu G0 = G[V ] Hình 1.3: Đồ thị G0 đồ thị G cảm sinh {a, b, c, d} 1.1.3 Bậc đỉnh Định nghĩa 1.1.7 Hai đỉnh u v đồ thị vô hướng G = (V, E) gọi liền kề {u, v} ∈ E Khi e = {u, v} gọi cạnh liên thuộc với đỉnh u, v Cạnh e gọi cạnh nối đỉnh u, v Định nghĩa 1.1.8 Bậc đỉnh v đồ thị G = (V, E), ký hiệu deg(v) hay dv (G), số cạnh liên thuộc với Hình 1.4: deg(a) = deg(b) = deg(d) = 2, deg(c) = deg(e) = 3, deg(f ) = Định nghĩa 1.1.9 Đỉnh v gọi đỉnh cô lập deg(v) = Định lý 1.1.1 Cho G = (V, E) đơn đồ thị vô hướng, P deg(v) = 2|E| v∈V 11 1.1.4 Hành trình Định nghĩa 1.1.10 Giả sử G = (V, E) đồ thị vơ hướng Một hành trình G dãy đỉnh v0 v1 v2 cho với i = 0, 1, , n−1, {vi , vi+1 } cạnh G Các cạnh {vi , vi+1 }, i = 1, 2, , n − 1, gọi cạnh hành trình v1 v2 • n gọi độ dài, v0 gọi đỉnh đầu, gọi đỉnh cuối hành trình nói • Một hành trình gọi khép kín đỉnh đầu đỉnh cuối trùng • Một hành trình gọi đường đỉnh hành trình khác • Một hành trình gọi vết tất cạnh hành trình khác • Một hành trình khép kín gọi chu trình có độ dài xóa đỉnh cuối trở thành đường • Một hành trình khép kín gọi mạch cạnh hành trình khác 1.1.5 Đồ thị phẳng Định nghĩa 1.1.11 Đồ thị vô hướng G = (V, E) gọi đồ thị phẳng biểu diễn mặt phẳng cho đường cong biểu diễn cạnh không giao giao đỉnh chung Biểu diễn nói đồ thị phẳng gọi biểu diễn phẳng Ta đồng đồ thị phẳng với biển diễn phẳng 12 Hình 1.5: Đồ thị bên phải biểu diễn phẳng đồ thị bên trái Định nghĩa 1.1.12 Độ dài chu trình ngắn đồ thị gọi chu vi nhỏ đồ thị đó, ký hiệu chu vi nhỏ đồ thị G g(G) hay g Độ dài chu trình lớn đồ thị gọi chu vi lớn đồ thị đó, ký hiệu chu vi lớn đồ thị G c(G) hay c Đồ thị khơng có chu trình quy ước g c ∞ Định lý 1.1.2 (Công thức Euler) Nếu đồ thị phẳng liên thông G = (V, E) có v đỉnh, e cạnh, f miền, v − e + f = Định lý 1.1.3 (Bất đẳng thức cạnh đỉnh) Trong đồ thị phẳng liên thông G = (V, E) với chu vi nhỏ g thỏa mãn ≤ g < ∞, ta có |E| ≤ 1.1.6 g (|V | − 2) g−2 Đồ thị đầy đủ, đồ thị bù, đồ thị hai phía Định nghĩa 1.1.13 Đồ thị G = (V, E) gọi đồ thị đầy đủ cặp đỉnh phân biệt V kề Với số nguyên dương n, đồ thị đầy đủ n đỉnh kí hiệu Kn 13 Hình 1.6: Đồ thị đầy đủ K4 Định nghĩa 1.1.14 Cho đồ thị G = (V, E) có n đỉnh, đồ thị G0 = (V , E ) gọi đồ thị bù G = (V, E) V = V E = E(Kn ) \ E Kí hiệu G0 = G Hình 1.7: Đồ thị bên phải đồ thị bù đồ thị bên trái Định nghĩa 1.1.15 Đồ thị G = (V, E) gọi đồ thị hai phía V = U t W (kí hiệu "t" nghĩa hợp rời tập hợp), u1 , u2 ∈ U , w1 , w2 ∈ W u1 6= u2 , w1 6= w2 {u1 , u2 } ∈ / E, {w1 , w2 } ∈ / E Ta viết đồ thị hai phía dạng G = (U t W, E) Hình 1.8: Đồ thị phía G P = {b, d, e}, Q = {c, f } 14 Định nghĩa 1.1.16 Đồ thị hai phía G = (U t W, E) gọi đồ thị hai phía đầy đủ đỉnh U kề với tất đỉnh W Gọi m, n số đỉnh U V , ta kí hiệu đồ thị hai phía đầy đủ G = (U tW, E) dạng Km,n Hình 1.9: Đồ thị phía đầy đủ K3,2 1.2 Bài tốn Clique 1.2.1 Khái niệm Clique Định nghĩa 1.2.1 Clique đồ thị G = (V, E) tập đỉnh C ⊂ V cho G[C] đồ thị đầy đủ Số đỉnh Clique C gọi kích thước Clique C Hình 1.10: Tập đỉnh màu đỏ Clique đồ thị có kích thước Định nghĩa 1.2.2 Clique cực đại đồ thị G = (V, E) Clique không chứa Clique khác Hay nói cách khác thêm đỉnh G vào Clique cực tạo thành Clique khác 15 Định nghĩa 1.2.3 Clique lớn đồ thị vô hướng G Clique có số định lớn G Chỉ số clique đồ thị G số đỉnh clique lớn G, ký hiệu ω(G) Chúng ta thấy rằng, đồ thị G, Clique lớn Clique cực đại, Clique cực đại chưa Clique lớn 1.2.2 Bài toán Clique Vấn đề sinh cách tự nhiên làm để tìm Clique lớn đồ thị G cho trước Việc tìm kích thước Clique lớn đồ thị tốn Clique Và muốn giải tốn Clique trước hết ta đến với tốn sau: Định nghĩa 1.2.4 Cho đồ thị vô hướng G = (V, E) số nguyên dương k Có hay khơng Clique có kích thước k đồ thị Chúng ta thấy rằng, giải toán việc giải tốn Clique hồn tồn khơng khó việc cho k tăng dần từ đến giá trị p mà toán cho kết "khơng" Khi p − kết toán Clique 1.3 1.3.1 Độ phức tạp tính tốn Độ phức tạp thuật tốn Định nghĩa 1.3.1 Độ phức tạp thuật tốn (thời gian chạy thuật toán) hàm số f (n), n kích thước liệu đầu vào, f (n) số phép tốn tối đa mà thuật tốn thực suốt q trình chạy thuật toán Định nghĩa 1.3.2 Một thuật toán gọi có độ phức tạp đa thức, hay cịn gọi có thời gian đa thức, số phép tính cần thiết thực thuật tốn không vượt O(nk ), với k nguyên dương đó, cịn n kích thước liệu đầu vào 16 1.3.2 Bài toán định Để giải tốn tương đối phức tạp, chuyển toán dạng đơn giản kết tương đương với toán ban đầu Trong phần chúng tơi nói việc chuyển đổi toán dạng định Một tốn có phần đầu vào (input) đầu (output) Định nghĩa 1.3.3 Bài toán định toán mà đầu (output) nhận kết "yes" "no" Bài toán định đầu nghe khơng có tính tổng qt cao đầu có bit Tuy nhiên thực tế tốn học, tìm lời giải tốn định thường đồng nghĩa với việc tìm lời giải cho tốn khơng định ban đầu tương ứng Ví dụ 1.3.1 Bài tốn định nghĩa 1.2.4 dạng định toán Clique 1.3.3 Lớp P, lớp NP Trong thực tế có nhiều tốn giải thời gian đa thức Nhưng khơng tốn mà người chưa tìm thuật tốn để giải thời gian đa thức, số lại có tốn mà kiểm tra lời giải thời gian đa thức Dựa vào đó, tốn phân thành lớp sau: Lớp P Định nghĩa 1.3.4 Một toán định gọi thuộc lớp P tồn thuật toán thời gian đa thức giải tốn 17 Chúng ta xem lớp P lớp tốn đơn giản dễ giải Có nhiều toán mà ta biết nằm lớp P toán xếp dãy hữu hạn số, tìm đường ngắn đồ thị có trọng số, tốn Euler, nửa Euler, Lớp NP Chúng ta hiểu, lớp NP lớp tốn kiểm tra lời giải thời gian đa thức Sau định nghĩa tương đối chặt chẽ lớp NP Xét toán định A, với liệu đầu vào x đầu "Yes" x thỏa mãn tính chất TA , "No" x khơng thỏa tính chất TA Đặt Ainput tập tất liệu đầu vào x toán A Bài toán Bài toán A Input: Output: x ∈ Ainput "Yes" x thỏa mãn tính chất TA "No" x khơng thỏa tính chất TA Giả sử có tốn tương đương với toán sau: Bài toán Input: Output: x ∈ Ainput "Yes" tồn y(x) để (x, y(x)) thỏa tính chất T "No" trường hợp lại "Tương đương" nghĩa liệu đầu vào x tương ứng với đầu "Yes" toán x tương ứng với đầu "Yes" toán Bây xét toán sau: 18 Bài toán Input: Output: x ∈ Ainput , y(x) "Yes" (x, y(x)) thỏa mãn tính chất T "No" trường hợp lại Ta gọi M "Thuật toán kiểm chứng" toán A M thuật toán giải toán thời gian đa thức Định nghĩa 1.3.5 Bài toán định A gọi thuộc lớp NP tồn thuật toán kiểm chứng A Ví dụ 1.3.2 Về tốn Clique, ta xét dạng định Input: Output: G = (V, E), k ∈ N "Yes" tồn Clique C G |C| ≥ k "No" trường hợp cịn lại Để chứng tỏ tốn thuộc lớp NP ta xét toán sau: Input: Output: G = (V, E), k ∈ N, C ⊂ V "Yes" C Clique G |C| ≥ k "No" trường hợp lại Thuật toán M để giải toán thứ hai trước hết kiểm tra số phần tử C, |C| < k cho kết "No" Nếu |C| ≥ k làm bước tiếp theo, duyệt cặp đỉnh u, v C, {u, v} ∈ E duyệt tiếp hết cặp đỉnh C cho kết "Yes", ngược lại phép duyệt dừng cho kết "No" {u, v} ∈ / E Thuật toán M thực với thời gian tối đa n2 , n số đỉnh đồ thị ... KHOA HỌC VÀ CÔNG NGHỆ VIỆT NAM HỌC VIỆN KHOA HỌC VÀ CÔNG NGHỆ - Trần Quang ĐỘ PHỨC TẠP CỦA BÀI TOÁN BIẾN ĐỔI ĐỒ THỊ VỀ ĐỒ THỊ ĐẦY ĐỦ Chuyên ngành: Toán ứng dụng Mã số: 46 01 12 LUẬN... g−2 Đồ thị đầy đủ, đồ thị bù, đồ thị hai phía Định nghĩa 1.1.13 Đồ thị G = (V, E) gọi đồ thị đầy đủ cặp đỉnh phân biệt V kề Với số nguyên dương n, đồ thị đầy đủ n đỉnh kí hiệu Kn 13 Hình 1.6: Đồ. .. Hình 1.1: Đơn đồ thị vơ hướng Định nghĩa 1.1.3 Đa đồ thị vô hướng đồ thị vô hướng mà đơn đồ thị Hình 1.2: Đa đồ thị vơ hướng Trong luận văn này, đề cập đến đơn đồ thị vô hướng Viết "đồ thị G = (V,

Ngày đăng: 24/02/2023, 22:23

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan