Bài toán cây bao trùm trên đồ thị và ứng dụng

90 793 3
Bài toán cây bao trùm trên đồ thị và ứng dụng

Đ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 VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM - TRƢƠNG BÁ THÁI BÀI TOÁN CÂY BAO TRÙM TRÊN ĐỒ THỊ VÀ ỨNG DỤNG LUẬN VĂN THẠC SĨ Chuyên ngành : Công nghệ Thông tin Mã số ngành: 60480201 TP HỒ CHÍ MINH, tháng năm 2015 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM - TRƢƠNG BÁ THÁI BÀI TOÁN CÂY BAO TRÙM TRÊN ĐỒ THỊ VÀ ỨNG DỤNG LUẬN VĂN THẠC SĨ Chuyên ngành : Công nghệ Thông tin Mã số ngành: 60480201 CÁN BỘ HƢỚNG DẪN KHOA HỌC: TS VÕ VĂN TUẤN DŨNG TP HỒ CHÍ MINH, tháng năm 2015 CÔNG TRÌNH ĐƢỢC HOÀN THÀNH TẠI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM Cán hƣớng dẫn khoa học : TS Võ Văn Tuấn Dũng Luận văn Thạc sĩ đƣợc bảo vệ Trƣờng Đại học Công nghệ TP HCM ngày … tháng … năm … Thành phần Hội đồng đánh giá Luận văn Thạc sĩ gồm: (Ghi rõ họ, tên, học hàm, học vị Hội đồng chấm bảo vệ Luận văn Thạc sĩ) TT Họ tên Chức danh Hội đồng PGS.TS Lê Trọng Vĩnh Chủ tịch TS Lƣ Nhật Vinh Phản biện PGS.TS Lê Hoàng Thái Phản biện TS Võ Đình Bảy Ủy viên TS Lê Tuấn Anh Ủy viên, Thƣ ký Xác nhận Chủ tịch Hội đồng đánh giá Luận sau Luận văn đƣợc sửa chữa (nếu có) Chủ tịch Hội đồng đánh giá LV TRƢỜNG ĐH CÔNG NGHỆ TP HCM CỘNG HÕA XÃ HỘI CHỦ NGHĨA VIỆT NAM PHÒNG QLKH – ĐTSĐH Độc lập – Tự – Hạnh phúc TP HCM, ngày … tháng… năm 2015 NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên: Trƣơng Bá Thái Giới tính: Nam Ngày, tháng, năm sinh: 15/01/1980 Nơi sinh: Thanh Hóa Chuyên ngành: Công nghệ thông tin MSHV: 1341860018 I- Tên đề tài: Bài Toán Cây Bao Trùm Trên Đồ Thị Ứng Dụng II- Nhiệm vụ nội dung: Tìm hiểu thuật toán tìm bao trùm đồ thị: thuật toán Borůvka, thuật toán Prim thuật toán Kruskal Nghiên cứu xây dựng ứng dụng toán ngƣời du lịch dựa vào bao trùm nhỏ III- Ngày giao nhiệm vụ: 18/8/2014 IV- Ngày hoàn thành nhiệm vụ: 15/3/2015 V- Cán hƣớng dẫn: TS Võ Văn Tuấn Dũng CÁN BỘ HƢỚNG DẪN (Họ tên chữ ký) KHOA QUẢN LÝ CHUYÊN NGÀNH (Họ tên chữ ký) i LỜI CAM ĐOAN Tôi xin cam đoan công trình nghiên cứu riêng Các số liệu, kết nêu luận văn trung thực chƣa đƣợc công bố công trình khác Tôi xin cam đoan giúp đỡ cho việc thực luận văn đƣợc cảm ơn thông tin trích dẫn luận văn đƣợc rõ nguồn gốc Học viên thực Luận văn Trƣơng Bá Thái ii LỜI CÁM ƠN Tác giả luận văn xin chân thành cám ơn hƣớng dẫn tận tình T.S Võ Văn Tuấn Dũng, truyền đạt kinh nghiệm quý báu học tập, nghiên cứu khoa học sống Tác giả xin trân trọng bày tỏ lòng kính trọng, lòng biết ơn sâu sắc đến Thầy Tác giả luận văn xin chân thành cảm ơn phòng sau đại học toàn thể giáo sƣ, tiến sĩ, cán trƣờng Đại học Công nghệ TP.HCM tận tình giảng dạy, giúp đỡ tạo điều kiện thuận lợi trình học tập trƣờng Học viên thực Luận văn Trƣơng Bá Thái iii TÓM TẮT Bài toán bao trùm nhỏ toán có vai trò trung tâm lý thuyết tối ƣu tổ hợp, nẩy sinh nhiều ứng dụng xuất nhƣ toán nhiều toán hình học tổ hợp Bài toán quan trọng không mô hình lý thuyết tối ƣu mạng mà đƣợc dùng nhƣ hình mẫu điển hình tối ƣu tổ hợp kích thích nhiều hƣớng nghiên cứu Bài toán bao trùm nhỏ đƣợc xây dựng hiệu nhờ sử dụng thuật toán dựa chiến thuật “tham lam” Có nhiều thuật toán tìm bao trùm nhỏ Một thuật toán thuộc Borůvka (1926) Hai thuật toán quen thuộc thuật toán Kruskal (1956) thuật toán Prim (1957) Bài toán ngƣời du lịch đƣợc nghiên cứu dựa vào xấp xỉ dùng bao trùm nhỏ đƣợc trình bày luận văn toán NP khó iv ABSTRACT The problem of the minimum spanning tree problem is central role in combinatorial optimization theory, arises in many applications, and appears as a subproblem in many problems of geometry and combinatorics This problem is important not only because it is the basic model in the optimization of network theory, but also because it is used as a typical model of optimal combinations stimulate new research directions The problem of the minimum spanning tree can be constructed efficiently using algorithms based on the strategy "greedy" There are many algorithms to find the minimum spanning tree One of the first algorithm belongs Borůvka (1926) Two algorithms familiar la Kruskal algorithm (1956) and Prim algorithm (1957) The problem of the study tour is based on the approximation using the minimum spanning tree is presented in the thesis is NP problem v MỤC LỤC Chƣơng MỞ ĐẦU 11 1.1 Lý chọn đề tài 11 1.2 Mục đích, đối tƣợng phạm vi nghiên cứu 12 1.3 Ý nghĩa khoa học thực tiễn đề tài 12 1.4 Cấu trúc luận văn 12 Chƣơng 2.1 KHÁI NIỆM CƠ BẢN VỀ ĐỒ THỊ 14 Một số khái niệm 14 2.1.1 Khái niệm đồ thị 14 2.1.2 Các thuật ngữ 16 2.1.3 Đƣờng đi, chu trình đồ thị liên thông 18 2.1.4 Một số dạng đồ thị đặc biệt 22 2.2 Biểu diễn đồ thị tìm kiếm đồ thị 24 2.2.1 Biểu diễn đồ thị 24 2.2.2 Các thuật toán tìm kiếm đồ thị 27 2.3 Đồ thị Euler đồ thị Hamilton 29 2.3.1 Đồ thị Euler 29 2.3.2 Đồ thị Hamilton 32 2.4 Cây bao trùm đồ thị 33 Chƣơng 3.1 BÀI TOÁN CÂY BAO TRÙM NHỎ NHẤT 37 Nội dung ý nghĩa toán 37 3.1.1 Nội dung toán 37 vi 3.1.2 3.2 Một số ứng dụng bao trùm nhỏ 38 Một số thuật giải 39 3.2.1 Thuật toán Borůvka 40 3.2.2 Thuật toán Kruskal 43 3.2.3 Thuật toán Prim 48 3.3 Bài Toán xấp xỉ nhờ bao trùm nhỏ nhất(MST-based approximation) 54 3.3.1 Thuật toán Christofides 56 3.3.2 Phân tích thuật toán: 57 Chƣơng ỨNG DỤNG THUẬT TOÁN CHRISTOFIDES VÀO BÀI TOÁN NGƢỜI DU LỊCH 64 4.1 Phân tích yêu cầu 64 4.1.1 Sơ đồ Use Case 65 4.1.2 Đặc tả chi tiết 65 4.2 Đặc Tả Cấu Trúc Dữ Liệu 70 4.2.1 Lƣợt đồ quan hệ liệu 71 4.2.2 Đặc tả cấu trúc bảng 72 4.3 Cài đặt đánh giá hiệu thuật toán Christofides 72 4.3.1 Cài đặt thuật toán Christofides 72 4.3.2 Đánh giá hiệu thuật toán Christofides 74 4.4 Tính chƣơng trình 76 4.4.1 Màn hình chọn địa điểm 76 4.2.2 Đặc tả cấu trúc bảng  Bảng điểm du lịch (Node) Field Type Null Action Comments NodeID Int No Primary ID điểm du lịch Address Varchar No Địa điểm du lịch Lat Varchar No Kinh độ điểm du lịch Lng Varchar No Vĩ độ điểm du lịch Direction Varchar Yes Diễn tả điểm du lịch  Bảng cung (Edge) Field Type Null Action Comments Node1 Int No Primary ID điểm du lịch Node2 Int No Primary ID điểm du lịch Khoảng cách Distance Varchar No điểm Note Varchar No Ghi  Bảng giải pháp (solve) Field Type Null Action Comments NodeID Int No Primary ID điểm du lịch Index Varchar No Thứ tự chu trình 4.3 Cài đặt đánh giá hiệu thuật toán Christofides 4.3.1 Cài đặt thuật toán Christofides  Bƣớc 1: Tìm bao trùm nhỏ T G Áp dụng thuật toán Prim - Bƣớc 1.1 khởi tạo (giả sử đỉnh s)  Khởi tạo đỉnh s có nhãn khoảng cách (d[s]=0) , đỉnh khác có nhãn khoảng cách + Cây T ban đầu rỗng - Bƣớc 1.2 Chọn đỉnh u chƣa kết nạp có d[u] nhỏ  Nếu không chọn đƣợc u đồ thị không liên thông kết thúc, ngƣợc lại chọn đƣợc u đánh dấu u kết nạp Tính lại nhãn khoảng cách d[v] (v chƣa kết nạp) Lặp lại bƣớc 1.2  Bƣớc 2: Tạo đồ thị G‟=(V‟,E‟) đồ thị G Trong V‟ đỉnh có bậc lẻ T E‟ cạnh đỉnh V‟ Sau đó, tìm cặp ghép đầy đủ M đỉnh V‟ đồ thị G‟ với tổng trọng số nhỏ - Bƣớc 2.1: Khởi tạo mảng có cấu trúc Node chứa đỉnh đồ thị - Bƣớc 2.2: Tính bậc node T - Bƣớc 2.3: Tạo mảng gồm Node có đỉnh bậc lẻ - Bƣớc 2.4: Tạo trận hai chiều có cấu trúc Link đỉnh có Node bậc lẻ, xếp Link theo thứ tự tăng dần theo trọng số - Bƣớc 2.5: Tại Node chọn link có trọng số nhỏ mà hai đầu chƣa đƣợc chọn đƣa vào M Lặp lại bƣớc 2.5 duyệt hết Node  Bƣớc 3: Hợp cạnh M T thành đồ thị H - Bƣớc 3.1: Khởi tạo mảng H có cấu trúc GraphNode - Bƣớc 3.2: Duyệt cạnh T cập nhập vào H - Bƣớc 3.3: Duyệt cạnh M cập nhập vào H  Bƣớc 4: Tìm chu trình Euler H (H có chu trình Euler liên thông tất đỉnh có bậc chẵn) Áp dụng thuật toán fleury tìm chu trình Euler: Xuất phát từ đỉnh đồ thị H, chọn cạnh liên thuộc với để hai nguyên tắc sau:  Xóa bỏ cạnh qua  Chỉ qua cầu không cạnh khác để chọn - Bƣớc 4.1 đỉnh u đồ thị H, đƣa đỉnh u vào chu trình - Bƣớc 4.2 kiểm tra xóa cạnh nối (u,v) v quay lại u hay không Nếu quay lại đƣợc xóa cạnh (u,v), đƣa đỉnh v vào chu trình gắn đỉnh u v, lặp lại bƣớc 4.2 với đỉnh u v lặp đến không đƣợc Bƣớc 5: Biến đổi chu trình Euler thành chu trình Hamilton cách duyệt qua chu trình Euler từ đầu đến cuối bỏ qua đỉnh đƣợc chọn trình duyệt 4.3.2 Đánh giá hiệu thuật toán Christofides Đánh giá việc cài đặt thuật toán Christofides theo hai cách lƣu trữ đồ thị ma trận kề danh sách liên kết Bộ liệu dùng để thử EIL51, EIL76, EIL101 số lần thử 10 lần 4.4 Tính chƣơng trình 4.4.1 Màn hình chọn địa điểm Khi ngƣời dùng chọn chức “chọn địa điểm” để tìm địa điểm cần đến Sau ngƣời dùng nhập vào Address (địa chỉ) nhấn nút “chọn địa điểm” Hệ thống gọi API google map V3 để lấy kinh độ vĩ độ địa điểm đƣợc chọn Khi ngƣời dùng nhấn nút “lƣu địa điểm” hệ thống lƣu thông tin gồm:Adress, Lat, Lng, Direction vào sở liệu 4.4.2 Màn hình tính khoảng cách Khi ngƣời dùng chọn chức “Tính Khoảng Cách” hệ thống lấy tất địa điểm bảng Node gọi VietBanDo Map API tính khoảng cách địa điểm lƣu vào sở liệu 4.4.3 Màn hình giải pháp Khi chọn vào chức “Giải Pháp” hệ thống tạo đồ thị dựa cung bảng Edge gọi thuật toán Christofides tìm chu trình địa điểm lƣu thông tin vào sở liệu 4.4.4 Màn hình kết Khi chọn vào chức “Kết quả” hệ thống truy vấn vào bảng solve sở liệu lấy địa điểm gọi VietBanDo Map API hiển thị kết lên hình 4.4.5 Màn hình tìm đƣờng Khi chọn vào chức “Tìm đƣờng đi” hệ thống truy vấn vào bảng node sở liệu lấy địa điểm đƣợc đƣa liệu vào DropDownList : Địa điểm đi, địa điểm đến Khi ngƣời dùng nhấn chọn nút „tìm đƣờng đi‟ hệ thống gọi VietBanDo Map API lấy thông tin hiển thị lên hình 4.4.6 Chức ứng dụng a Chức chọn điểm ngẫu nhiên Chức chọn màu kích cho đƣờng vẽ Chức chọn màu hình Chức dùng chọn vẽ điểm hình Click chuột vào hình chọn điểm Chọn Solve, chọn “Read Project” hệ thống lấy điểm hình tạo thành đồ thị gọi giải thuật Christofides tìm chu trình qua điểm hiển thị lên hình b Chức đọc điểm thƣ viện TSPLib Chọn Solve, chọn Read TSPLib Hệ thống cho phép file hiển thị kết lên hình Cấu trúc tập tin eil51.tsp có tạo độ 51 điểm Ngoài hệ thống có chức năng: tạo chƣơng trình, lƣu đồ thị vào file mở lại file lƣu Chƣơng KẾT LUẬN VÀ KIẾN NGHỊ VỀ NHỮNG NGHIÊN CỨU TIẾP THEO Từ chƣơng đến chƣơng tác giả trình bày toàn tìm hiểu tác giả lý thuyết đồ thị Nội dung trình bày bám sát mục tiêu đề ban đầu luận văn “BÀI TOÁN CÂY BAO TRÙM TRÊN ĐỒ THỊ VÀ ỨNG DỤNG“ 5.1 Kết đạt đƣợc Trong thời gian nghiên cứu thuật toán giải toán ngƣời du lịch, luận văn đạt đƣợc kết sau:  Kết lý thuyết: - Nghiên cứu, tìm hiểu sâu lý thuyết lý thuyết đồ thị, đặc biệt toán ngƣời du lịch - Nghiên cứu phƣơng pháp giải toán ngƣời du lịch phƣơng pháp xấp xỉ dựa vào bao trùm nhỏ  Kết ứng dụng: - Luận văn áp dụng cải tiến thuật toán Christofides để giải toán ngƣời du lịch - Thực tìm chu trình qua địa điểm đƣợc chọn đồ - Minh họa thuật toán Christofides giao diện đồ họa Tuy nhiên chƣơng trình tồn số hạn chế nhƣ thời gian tìm cung chậm làm đƣợc đồ thị vô hƣớng  Kiến nghị hƣớng phát triển: Từ kết nghiên cứu lý thuyết thực tiễn, luận văn đề vấn đề cần tiếp tục hoàn thiện, phát triển nghiên cứu nhƣ sau: - Tiếp tục nghiên cứu thêm thuật toán khác áp dụng bao trùm nhỏ thuật toán áp dụng cho toán ngƣời du lịch - Nghiên cứu cài đặt thuật toán giải toán ngƣời du lịch với đồ thị có hƣớng - Cải tiến chƣơng trình để thời gian thực chƣơng trình nhanh 5.2 Lời kết Toàn nội dung trình bày luận văn kết trình nghiên cứu, tìm hiểu tác giả Các kết trình bày 5.1 kết trình làm việc, tìm hiểu, học hỏi tác giả Phần hƣớng phát triển trình bày 5.2 vấn đề tác giả ấp ủ mong muốn thực đƣợc thời gian tới nhằm giúp chƣơng trình hoạt động tốt TÀI LIỆU THAM KHẢO Tài liệu tiếng Việt: [1] Nguyễn Đức Nghĩa – Nguyễn Tô Thành Toán rời rạc Nhà xuất Đại học Quốc gia Hà Nội, 2003 [2] Lê Minh Hoàng (1999) Giải thuật lập trình Nhà xuất Đại học Sƣ phạm Hà Nội [3] Đỗ Đức Giáo Toán rời rạc ứng dụng tin học Nhà xuất giáo dục Tài liệu tiếng Anh: [4] R.K Ahuja Magnanti and J.B.Orlin Theory, Algorithms and Aplications Prentice Hall, Upper saddle River, New Jersey, 1993, 846 pp [5] S.Khuller, Y.J Sussman and W.Gasarch Advanced Algorithms Lectures CMSC 858K, 1997, 94 pp [6] S Khuller, B Raghavachari Graph and network algorithms in the computer science and engineering Handbook edited by B Tucker Jr CRC Press, Inc 1997 [7] B Korter, J Vygen, Combinatorial Optimization Theory and Algorithms Second Edition Spinger, 2002 530pp [8] B.Y Wu and K-M Chao Spanning Trees and Optimization Problems Chapman & Hall/ CRC Press company, 2004.184 pp [9] C.C Skiscim, S.W Palocsay Minumum Spanning Trees with Sums of Ration Journal of Global Optimization Vol 19,2001,pp 103-120 [10] Reinhard Diestel Graph Theory Spinger-Verlag NewYork, 2000 [11] Robin Wilson Introduction to Graph Theory Oliver & Boyd,1996 Website [12] Math world Site, http://mathworld.wolfram.com/NetworkFlow.html [13] Institute for Operations Reseach and the Management Sciences Site, http://www.informs.org/Conf/Montreal198/TALKS/MA36.html [14] Christofides algorith, http://en.wikipedia.org/wiki/Christofides_algorithm [15] Prüfer sequence, http://en.wikipedia.org/wiki/Pr%C3%BCfer_sequence [14] TSPLIB, http://www.iwr.uni-heidelberg.de/groups/comopt/software/TSPLIB95/tsp/ [15] Map API, http://www.vietbando.com/maps/api/Examples.aspx [...]... rộng 19 Hình 2.16 Đồ thị Euler 20 Hình 2.17 Đồ thị Hamilton 22 Hình 2.18 Cây của đồ thị 24 Hình 2.19 Đếm số cây bao trùm của đồ thị đầy đủ 26 Hình 3.1 Đồ thị tìm cây bao trùm nhỏ nhất 36 x Hình 3.2 Đồ thị áp dụng thuật tốn Christofides 54 Hình 4.1 Sơ đồ User Case 59 Chƣơng 1 MỞ ĐẦU 1.1 Lý do chọn đề tài Lý thuyết đồ thị là một lĩnh vực nghiên cứu đã có từ lâu đời và có nhiều ứng dụng trong thực tiễn... Hình 2.3 Bậc của đồ thị vơ hƣớng 6 Hình 2.4 Bán bậc ra (bán bậc vảo) đồ thị có hƣớng 8 Hình 2.5 Đƣờng đi trên đồ thị 9 Hình 2.6 Đồ thị liên thơng G và khơng liên thơng H 10 Hình 2.7 Đồ thị liên thơng mạnh G, đồ thị liên thơng yếu H 11 Hình 2.8 Đồ thị đầy đủ 12 Hình 2.9 Đồ thị hai phần 13 Hình 2.10 Đồ thị vòng C3, C4, C5,C6 13 Hình 2.11 Đồ thị bánh xe W3, W4, W5, W6 14 Hình 2.12 Đồ thị lập phƣơng Q1,... Hình 2.2 Đồ thị có hƣớng Một đồ thị gồm tồn các cạnh gọi là đồ thị vơ hƣớng, đồ thị gồm tồn các cung gọi là đồ thị có hƣớng Một đồ thị vừa có cạnh và vừa có cung gọi là đồ thị hỗn hợp Bằng cách thay một cạnh bởi hai cung có hƣớng ngƣợc chiều nhau, ta có thể quy mọi đồ thị về đồ thị có hƣớng, hình 2.2 mơ tả một đồ thị có hƣớng Hai cạnh e và e‟ cùng nối liền hai đỉnh nhƣ nhau gọi là cạnh kép Đồ thị khơng... bản về lý thuyết đồ thị, trình bày những định nghĩa và khái niệm cơ bản thƣờng dùng trong lý thuyết đồ thị, đặc biệt là các khái niệm về cây bao trùm của một đồ thị và một số tính chất cơ bản của chúng Chƣơng 3: Bài tốn cây bao trùm nhỏ nhất, Chƣơng này đề cập tới bài tốn cây bao trùm nhỏ nhất, giới thiệu một số ứng dụng trực tiếp của nó, trình bày ba thuật tốn nổi tiếng giải bài tốn và cuối cùng đề... tin đƣợc với nhau khi và chỉ khi đồ thị tƣơng ứng với mạng này là đồ thị liên thơng Trong hình 2.6 : Đồ thị G là liên thơng, còn đồ thị H là khơng liên thơng c f Hình 2.6 Đồ thị liên thơng G và khơng liên thơng H Định nghĩa 2.6: Ta gọi đồ thị con của đồ thị G = (V, E) là đồ thị H = (W, F), trong đó W⊆ V, F ⊆ E Trong trƣờng hợp đồ thị là khơng liên thơng, nó sẽ rã ra thành một số đồ thị con liên thơng... định nghĩa và khái niệm cơ bản thƣờng dùng trong lý thuyết đồ thị Tìm hiểu các thuật tốn về tìm cây bao trùm trên đồ thị: thuật tốn Borůvka, thuật tốn Prim và thuật tốn Kruskal Nghiên cứu bài tốn ngƣời du lịch dựa vào cây bao trùm nhỏ nhất Đây là vấn đề trọng tâm và là mục tiêu nghiên cứu của luận án 1.3 Ý nghĩa khoa học và thực tiễn của đề tài Luận văn này tập trung chủ yếu vào bài tốn cây bao trùm nhỏ... yếu H Đồ thị G Đồ thị H Hình 2.7 Đồ thị liên thơng mạnh G, đồ thị liên thơng yếu H Một câu hỏi đặt ra là khi nào có thể định hƣớng các cạnh của một đồ thị vơ hƣớng liên thơng để có thể thu đƣợc đồ thị có hƣớng liên thơng mạnh? Ta sẽ gọi đồ thị nhƣ vậy là đồ thị định hƣớng đƣợc Định lý 2.3: Đồ thị vơ hướng liên thơng là định hướng được khi và chỉ khi mỗi cạnh của nó nằm trên ít nhất một chu trình Chứng... tục trên sẽ đƣợc lặp lại cho đến khi tất cả các cạnh của đồ thị đƣợc định hƣớng Khi đó ta thu đƣợc đồ thị có hƣớng liên thơng mạnh 2.1.4 Một số dạng đồ thị đặc biệt a/ Đồ thị đầy đủ Đồ thị đầy đủ là đơn đồ thị vơ hƣớng mà giữa hai đỉnh bất kỳ của nó ln có một cạnh nối Đồ thị đầy đủ n đỉnh ký hiệu là Kn và có tất cả n(n-1) / 2 cạnh Các đồ thị đầy đủ K3, K4 và K5 vẽ ở hình 2.8 K3 K4 K5 Hình 2.8 Đồ thị. .. một lần được gọi là đường đi Euler Đồ thị được gọi là đồ thị Euler nếu có chu trình Euler và gọi là đồ thị nửa Euler nếu có đường đi Euler Rõ ràng mọi đồ thị Euler ln là nửa Euler, nhƣng điều ngƣợc lại khơng ln đúng b a a b e e c d c Đồ thị G1 d Đồ thị G2 Hình 2.16 Đồ thị Euler Trong hình 2.16 đồ thị G1 là đồ thị Euler vì nó có chu trình Euler a, e, c, d, e, b, a Đồ thị G2 khơng có chu trình Euler nhƣng... Hamilton Đồ thị G được gọi là Hamilton nếu nó chứa chu trình Hamilton và gọi là đồ thị nửa Hamilton nếu nó có đường đi Hamilton b a a b c d c Đồ thị G1 d Đồ thị G2 Hình 2.17 Đồ thị Hamilton Trong hình 2.17: G1 là nửa Hamilton còn G2 là Hamilton Định lý 2.5: (Dirak 1952) Đơn đồ thị vơ hướng G với n≥2 đỉnh, mỗi đỉnh có bậc khơng nhỏ hơn n/2 là đồ thị Hamilton Chứng minh: Thêm vào đồ thị G k đỉnh mới và nối ... 19 Hình 2.16 Đồ thị Euler 20 Hình 2.17 Đồ thị Hamilton 22 Hình 2.18 Cây đồ thị 24 Hình 2.19 Đếm số bao trùm đồ thị đầy đủ 26 Hình 3.1 Đồ thị tìm bao trùm nhỏ 36 x Hình 3.2 Đồ thị áp dụng thuật... tất bao trùm đồ thị chọn số bao trùm bao trùm nhỏ Phƣơng pháp nhƣ vậy, trƣờng hợp số đồ thị đầy đủ, ta phải xét nn-2 bao trùm rõ ràng khơng thể thực đƣợc với đồ thị có đỉnh hàng chục Bài tốn bao. .. tài: Bài Tốn Cây Bao Trùm Trên Đồ Thị Ứng Dụng II- Nhiệm vụ nội dung: Tìm hiểu thuật tốn tìm bao trùm đồ thị: thuật tốn Borůvka, thuật tốn Prim thuật tốn Kruskal Nghiên cứu xây dựng ứng dụng

Ngày đăng: 10/12/2015, 00:26

Từ khóa liên quan

Mục lục

  • Chương 1. MỞ ĐẦU

    • 1.1 Lý do chọn đề tài

    • 1.2 Mục đích, đối tượng và phạm vi nghiên cứu

    • 1.3 Ý nghĩa khoa học và thực tiễn của đề tài

    • 1.4 Cấu trúc của luận văn

    • Chương 2. KHÁI NIỆM CƠ BẢN VỀ ĐỒ THỊ

      • 2.1 Một số khái niệm

        • 2.1.1 Khái niệm đồ thị

        • 2.1.2 Các thuật ngữ cơ bản

        • 2.1.3 Đường đi, chu trình và đồ thị liên thông.

        • 2.1.4 Một số dạng đồ thị đặc biệt

        • 2.2 Biểu diễn đồ thị và tìm kiếm trên đồ thị

          • 2.2.1 Biểu diễn đồ thị

          • 2.2.2 Các thuật toán tìm kiếm trên đồ thị

          • 2.3 Đồ thị Euler và đồ thị Hamilton

            • 2.3.1 Đồ thị Euler

            • 2.3.2 Đồ thị Hamilton

            • 2.4 Cây và cây bao trùm của đồ thị

            • Chương 3. BÀI TOÁN CÂY BAO TRÙM NHỎ NHẤT

              • 3.1 Nội dung và ý nghĩa bài toán

                • 3.1.1 Nội dung bài toán

                • 3.1.2 Một số ứng dụng của cây bao trùm nhỏ nhất

                • 3.2 Một số thuật giải

                  • 3.2.1 Thuật toán Borůvka

                  • 3.2.2 Thuật toán Kruskal

                  • 3.2.3 Thuật toán Prim

                  • 3.3 Bài Toán xấp xỉ nhờ cây bao trùm nhỏ nhất(MST-based approximation)

                    • 3.3.1 Thuật toán Christofides

                    • 3.3.2 Phân tích thuật toán:

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

Tài liệu liên quan