Một số vấn đề ứng dụng của lý thuyết đồ thị

61 579 1
Một số vấn đề ứng dụng của lý thuyết đồ thị

Đ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

TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN -*** - DƯƠNG THỊ LIỄU MỘT SỐ VẤN ĐỀ ỨNG DỤNG CỦA LÝ THUYẾT ĐỒ THỊ KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC Chuyên ngành: Tin học HÀ NỘI - 2013 LỜI CẢM ƠN Trong suốt trình học tập làm khóa luận, em nhận giúp đỡ, tạo điều kiện thầy, cô giáo khoa Công nghệ Thông tin Bên cạnh giúp đỡ nhiều người thân, bạn bè để em có kết ngày hôm Trước hết em xin tỏ lòng kính trọng cảm ơn thầy giáo TS.Trịnh Đình Vinh, thầy tận tình bảo, hướng dẫn cho em hoàn thành khóa luận Xin cảm ơn thầy, cô giáo khoa Công nghệ Thông tin – trường Đại học sư phạm Hà Nội 2, bạn lớp K35 – Tin học tận tình giúp đỡ, giới thiệu tài liệu, sách tham khảo để khóa luận hoàn thành thời hạn Cuối lòng biết ơn đến quan tâm, chăm sóc tạo điều kiện gia đình để tập trung vào việc học tập hoàn thành khóa luận Do thời gian thực không nhiều nên khóa luận không tránh khỏi thiếu sót Rất mong nhận đóng góp thầy cô giáo bạn để khóa luận hoàn thiện Em xin chân thành cảm ơn! Hà Nội, tháng 05 năm 2013 Sinh viên DƯƠNG THỊ LIỄU LỜI CAM ĐOAN Tên em là: DƯƠNG THỊ LIỄU Sinh viên lớp: K35 – Tin học, khoa Công nghệ thông tin, trường Đại học sư phạm Hà Nội Em xin cam đoan: Đề tài: “Một số vấn đề ứng dụng lý thuyết đồ thị” nghiên cứu riêng em, hướng dẫn thầy giáo TS Trịnh Đình Vinh Khóa luận hoàn toàn không chép tác giả khác Nếu sai em xin hoàn toàn chịu trách nhiệm Hà Nội, tháng 05 năm 2013 Người cam đoan DƯƠNG THỊ LIỄU MỤC LỤC LỜI CẢM ƠN LỜI CAM ĐOAN DANH MỤC HÌNH VẼ DANH MỤC BẢNG MỞ ĐẦU Chương 1: LÝ THUYẾT ĐỒ THỊ 1.1 Đồ thị 1.1.1 Định nghĩa đồ thị 1.1.2 Đồ thị đơn 1.1.3 Đa đồ thị 1.1.4 Giả đồ thị 1.2 Các loại đồ thị 1.2.1 Đồ thị vô hướng 1.2.2 Đồ thị có hướng 1.2.3 Đồ thị hỗn hợp 1.3 Một số khái niệm 1.3.1 Cạnh liên thuộc, đỉnh kề, bậc 1.3.2 Đường chu trình 1.3.3 Đồ thị liên thông 1.4 Biểu diễn đồ thị máy tính 10 1.4.1 Biểu diễn ma trận kề 10 1.4.2 Danh sách cạnh (cung) 12 1.4.3 Danh sách kề 13 1.5 Các ứng dụng lý thuyết đồ thị 14 Chương 2: CHU TRÌNH, ĐƯỜNG ĐI 15 2.1 Chu trình Euler chu trình Hamilton 15 2.1.1 Chu trình Euler 15 2.1.2 Chu trình Hamilton 18 2.2 Tìm kiếm đường đồ thị 19 2.2.1 Thuật toán tìm kiếm theo chiều sâu (Depth First Seach) 19 2.2.2 Thuật toán tìm kiếm theo chiều rộng (Breadth First Search) 21 2.2.3 Độ phức tạp tính toán DFS BFS 23 2.3 Đường ngắn đồ thị có trọng số 24 2.3.1 Bài toán đường ngắn 24 2.3.2 Các thuật toán 24 2.3.3 Các ứng dụng 29 Chương 3: MỘT SỐ VẤN ĐỀ VỀ CÂY 36 3.1 Các khái niệm tính chất 36 3.1.1 Các khái niệm 36 3.1.2 Cây m – phân 37 3.2 Các ứng dụng 37 3.2.1 Mã tiền tố 37 3.2.3 Cây biểu diễn biểu thức 40 3.2.4 Cây định 41 3.2.5 Cây xếp tìm kiếm 41 Chương 4: XÂY DỰNG CHƯƠNG TRÌNH ỨNG DỤNG 47 4.1 Phát biểu toán 47 4.2 Giải toán 47 4.2.1 Giải thuật tổng quát 47 4.2.2 Kết hợp “Stack” “Queue” 48 4.2.3 Cài đặt lớp Cell 49 4.2.4 Hiệu ứng Backtracking DFS 50 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 52 TÀI LIỆU THAM KHẢO 54 DANH MỤC HÌNH VẼ Hình 1.1: Đồ thị Hình 1.2: Ví dụ đồ thị Hình 1.3: a Đa đồ thị b Giả đồ thị Hình 1.4: Đồ thị liên thông Hình 1.5: Các loại đồ thị liên thông Hình 1.6: Đồ thịbiểu diễn ma trận kề 10 Hình 1.7: Đồ thị danh sách cạnh (cung) 12 Hình 1.7a: Danh sách kề đồ thị G1 13 Hình 1.7b: Danh sách kề đồ thị G2 13 Hình 2.1: Mô hình đồ thị toán cầu 15 Hình 2.2: Chu trình Euler vô hướng 16 Hình 2.3: Chu trình Euler vô hướng sau từ đến 17 Hình 2.4: Chu trình Hamilton 18 Hình 2.5: Cây DFS 20 Hình 2.6: Cây BFS 22 Hình 2.7: Sự chuyển đổi trạng thái 30 Hình 2.8: Sơ đồ lưới giải thuật Viterbi 31 Hình 2.9: Sơ đồ PERT 34 Hình 3.1: Cây 36 Hình 3.2: Mã tiền tố 38 Hình 3.3: Cây biểu diễn nhị phân 39 Hình 3.4: Cây biểu diễn biểu thức 40 Hình 3.5: Cây định 41 Hình 3.6: Cây nhị phân tìm kiếm 42 Hình 3.7: Cây nhị phân đầy đủ 43 Hình 3.8: Câp xếp hòa nhập 44 Hình 3.9: Cây xếp nhanh 46 Hình 4.1: Giao diện chương trình 50 DANH MỤC BẢNG Bảng 1: Thuật toán DFS 20 Bảng 2: Thuật toán BFS 23 Bảng 3: Các công viêc 34 Bảng 4: Mã Huffman 39 MỞ ĐẦU Lý chọn đề tài Lý thuyết đồ thị lĩnh vực nghiên cứu có từ lâu đời có nhiều ứng dụng đại Những tư tưởng lý thuyết đồ thị đề xuất từ năm đầu kỷ 18 nhà toán học lỗi lạc người Thụy Sĩ Leonhard Euler Chính ông người sử dụng đồ thị để giải toán tiếng cầu thành phố Konigsberg Đồ thị sử dụng để giải toán nhiều lĩnh vực khác Chẳng hạn, đồ thị sử dụng để xác định mạch vòng vấn đề giải tích mạch điện Đồ thị phân biệt hợp chất hóa học hữu khác với công thức phân tử khác cấu trúc phân tử hay xác định xem hai máy tính mạng trao đổi thông tin với hay không Đồ thị có trọng số cạnh sử dụng để giải toán như: tìm đường ngắn hai thành phố mạng giao thông Đồ thị sử dụng để giải toán lập lịch, thời khóa biểu phân bố tần số cho trạm phát truyền hình Do việc nghiên cứu lý thuyết đồ thị mang lại nhiều ý nghĩa thực tiễn định Xuất phát từ tính thực tiễn em xin chọn đề tài: “Một số vấn đề ứng dụng lý thuyết đồ thị” Mục đích chọn đề tài Mục đích nghiên cứu đề tài tìm hiểu, khảo sát thực nghiệm ứng dụng lý thuyết đồ thị ngành kỹ thuật Dựa lý thuyết đồ thị, số toán kiểm tra tính liên thông, tìm đường ngắn nhất, khắc phục gói tin bị truyền sai nhờ giải thuật đồ thị xây dựng chương trình minh họa Nhiệm vụ, yêu cầu Đề tài khóa luận: “Một số vấn đề ứng dụng lý thuyết đồ thị” đặt với nhiệm vụ, yêu cầu:  Nghiên cứu khái niệm đồ thị, phương pháp biểu diễn đồ thị máy tính  Tìm hiểu thuật toán tìm đường đồ thị  Nghiên cứu ứng dụng lý thuyết đồ thị  Tìm hiểu khái niệm, tính chất ứng dụng  Cài đặt chương trình minh họa ứng dụng lý thuyết đồ thị Phương pháp nghiên cứu  Nghiên cứu qua việc đọc sách, báo tài liệu liên quan nhằm xây dựng sở lý thuyết đề tài biện pháp cần thiết để giải vấn đề đề tài  Tham khảo ý kiến chuyên gia để thiết kế chương trình phù hợp với thực tiễn  Thông qua quan sát thực tế, yêu cầu sở lý luận nghiên cứu kết đạt qua phương pháp Ý nghĩa khoa học thực tiễn đề tài Đề tài giới thiệu hướng nghiên cứu ứng dụng lý thuyết đồ thị vào thực tế sống, lĩnh vực Việt Nam Đề tài hướng đến việc đơn giản hóa việc tìm đường đồ thị Thuật toán tìm đường thuật toán quan trọng có ý nghĩa to lớn thực tế tìm lộ trình di chuyển cho đối tượng di động người, xe máy, ô tô Nó mang lại nhiều tiện ích hiệu cho người sử dụng, đặc biệt hiệu kinh tế, tiết kiệm thời gian, công sức việc lựa chọn đường cho hợp lý Cấu trúc khóa luận Ngoài phần mở đầu kết luận khóa luận bao gồm chương: Chương 1: Lý thuyết đồ thị Nhằm trình bày khái niệm lý thuyết đồ thị, sở tìm hiểu sâu sắc vấn đề Ngoài định nghĩa, tính chất đồ thị, chương trình bày đến vấn đề quan trọng, cách biểu diễn đồ thị máy tính Chương 2: Chu trình, đường Chương trình bày khái niệm chu trình, đường Euler chu trình, đường Hamilton Tìm hiểu thuật toán tìm kiếm đường đồ thị ứng dụng truyền tin, việc lập lịch công Chương 3: Một số vấn đề Trong chương đề cập tới điểm nhất, tập trung khai thác ứng dụng nó.Một số ứng dụng nhị phân mã tiền tố, mã Huffman, biểu diễn biểu thức, định, xếp tìm kiếm Chương 4: Xây dựng chương trình ứng dụng Đây chương cuối cùng, chương giới thiệu toán tìm đường thoát khỏi mê cung Sử dụng thuật toán Breadth First Seach (BFS – Tìm kiếm theo chiều rộng) Depth First Seach (DFS – Tìm kiếm theo chiều sâu) để tìm đường hai điểm mê cung Kết đạt Khóa luận nghiên cứu khái niệm đồ thị, thuật toán tìm đường đồ thị, ứng dụng lý thuyết đồ thị cáckhái niệm, tính chất Khóa luận xây dựng chương trình tìm đường thoát khỏi mê cung thuật toán tìm kiếm theo chiều sâu tìm kiếm theo chiều rộng Tuy nhiên chương trình mang tính chất mô chưa có ứng 3.2.3 Cây biểu diễn biểu thức Một biểu thức toán học biểu diễn cây, vấn đề hữu ích việc xử lý lưu trữ biểu thức toán học máy tính  d A  a  b  c    2 Xét biểu thức đại số sau: Có thể vẽ nhị phân hình 3.4 biểu diễn biểu thức A, đỉnh mang dấu phép tính, gốc mang phép tính sau A, dấu nhân ký hiệu: *, mang số chữ đại diện cho số * - + / Hình 3.4: Cây biểu c diễn biểu thức a b trước sau thăm Một phép duyệt tiền thứ tự thăm gốc d trái với phương pháp thăm gốc trước cuối thăm phải với phương pháp thăm gốc trước Duyệt mang tính đệ quy Khi duyệt theo tiền thứ tự ta có: * + a b – c / d Cách viết biểu thức theo tiền thứ tự ký pháp Balan Bằng duyệt tính giá trị biểu thức, phương pháp tiền thứ tự duyệt theo phương pháp khác để tính giá trị biểu thức tùy vào yêu cầu đặc điểm toán 40 3.2.4 Cây định Có toán phụ thuộc vào định Mỗi định có nhiều kết cục kết cục cuối lời giải toán Để giải toán vậy, người ta biểu diễn định đỉnh đồ thị kết cục định Một xây dựng gọi định Trong nhiều toán Tin gặp phải, dùng định để mô hình hóa từ việc cài đặt dễ dàng thuận tiện Ví dụ: Hình 3.5 định biểu diễn việc xếp số khác a, b, c a ?b b[...]... diễn của một đồ thị vô hướng 1.2.2 Đồ thị có hướng Đồ thịG = gọi là đồ thị có hướng nếu tất cả các cạnh e  U mà cặp đỉnh thuộc nó e  (x, y) X có phân biệt thứ tự Đồ thị có hướng là đồ thị mà mọi e  (x, y) X đều là cung 1.2.3 Đồ thị hỗn hợp Đồ thị G= vừa có cạnh vô hướng, vừa có cạnh có hướng thì nó được gọi là đồ thị hỗn hợp, loại đồ thị này rất ít khi được dùng tới Chú ý rằng vấn đề. .. tương ứng với một cặp đỉnh kề nhau A B C D Hình 1.2: Ví dụ về một đồ thị 1.1.2 Đồ thị đơn Đồ thị G  X, U> được gọi là đồ thị đơn nếu giữa hai đỉnh bất kỳ được nối với nhau bởi không quá một cạnh (cung), tức là đồ thị không có cạnh bội, không có khuyên 1.1.3 Đa đồ thị Đồ thị G  X, U> được gọi là đa đồ thị nếu nó có ít nhất một cặp đỉnh được nối với nhau bởi hai cạnh (hai cung) trở lên 1.1.4 Giả đồ thị. .. khôngcó chiều đi C – B, nhưng đồ thị vô hướng tương ứng là liên thông 9 1.4 Biểu diễn đồ thị trên máy tính Lĩnh vực đồ thị có nhiều ứng dụng trong thực tế, có thể mô hình nhiều ứng dụng bằng đồ thị và sử dụng máy tính để giải quyết các bài toán về ứng dụng đó Nên việc biểu diễn và lưu trữ đồ thị trên máy tính là một vấn đề khá trọng tâm,phương thức biểu diễn từng loại đồ thị trên máy tính ảnh hưởng đến... 1.1.4 Giả đồ thị Là đồ thị có ít nhất một khuyên, có thể chứa cạnh bội, cạnh đơn Tóm lại đây là loại đồ thị tổng quát nhất A B A B C D D a) Hình 1.3: a Đa đồ thị 6 C b) b.Giả đồ thị 1.2 Các loại đồ thị 1.2.1 Đồ thị vô hướng Đồ thị G  ... cứu lý thuyết đồ thị mang lại nhiều ý nghĩa thực tiễn định Xuất phát từ tính thực tiễn em xin chọn đề tài: Một số vấn đề ứng dụng lý thuyết đồ thị Mục đích chọn đề tài Mục đích nghiên cứu đề. .. cầu Đề tài khóa luận: Một số vấn đề ứng dụng lý thuyết đồ thị đặt với nhiệm vụ, yêu cầu:  Nghiên cứu khái niệm đồ thị, phương pháp biểu diễn đồ thị máy tính  Tìm hiểu thuật toán tìm đường đồ. .. hiểu thuật toán tìm đường đồ thị  Nghiên cứu ứng dụng lý thuyết đồ thị  Tìm hiểu khái niệm, tính chất ứng dụng  Cài đặt chương trình minh họa ứng dụng lý thuyết đồ thị Phương pháp nghiên cứu

Ngày đăng: 08/11/2015, 20:02

Từ khóa liên quan

Mục lục

  • Hình 1.1: Đồ thị 5

  • Hình 1.2: Ví dụ về một đồ thị 6

  • Hình 1.3: a. Đa đồ thị b. Giả đồ thị 6

  • Hình 1.4: Đồ thị liên thông 9

  • Hình 1.5: Các loại đồ thị liên thông 9

  • Hình 1.6: Đồ thịbiểu diễn ma trận kề 10

  • Hình 1.7: Đồ thị danh sách cạnh (cung) 12

  • Hình 1.7a: Danh sách kề của đồ thị G1 13

  • Hình 1.7b: Danh sách kề của đồ thị G2 13

  • Hình 2.1: Mô hình đồ thị của bài toán 7 cái cầu 15

  • Hình 2.2: Chu trình Euler vô hướng 16

  • Hình 2.3: Chu trình Euler vô hướng sau khi đi từ 1 đến 4 17

  • Hình 2.4: Chu trình Hamilton 18

  • Hình 2.5: Cây DFS 20

  • Hình 2.6: Cây BFS 22

  • Hình 2.7: Sự chuyển đổi trạng thái 30

  • Hình 2.8: Sơ đồ lưới của giải thuật Viterbi 31

  • Hình 2.9: Sơ đồ PERT 34

  • Hình 3.1: Cây 36

  • Hình 3.2: Mã tiền tố 38

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

Tài liệu liên quan