GIẢI THUẬT tìm ĐƯỜNG đi NGẮN NHẤT DIJKSTRA

103 646 0
GIẢI THUẬT tìm ĐƯỜNG đi NGẮN NHẤT DIJKSTRA

Đ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

Niên Luận GVHD:K.S Lê Thị Phương Dung ĐÁNH GIÁ KẾT QUẢ THỰC HIỆN NIÊN LUẬN (Học kỳ 2, Niên khóa 2010-2011) GIÁO VIÊN HƯỚNG DẪN: STT HỌ VÀ TÊN MSCB Lê Thị Phương Dung SINH VIÊN THỰC HIỆN: STT HỌ VÀ TÊN SINH VIÊN MSSV Nguyễn Tất Nhật Minh 1091507 Ketnooi.com kết nối công dân điện tử THƯỞNG ĐIỂM Niên Luận I.HÌNH THỨC(Tối đa 0,5 điểm) Bìa(Tối đa 0,25 điểm) Ketnooi.com kết nối công dân điện tử GVHD:K.S Lê Thị Phương Dung Niên Luận GVHD:K.S Lê Thị Phương Dung • Các tiêu đề: Trường ĐHCT, Khoa CNTT • Loại niên luận: 1, Tên đề tài • Giáo viên hướng dẫn: chức danh, họ tên • Thông tin sinh viên thực hiện: họ tên, mã số, lớp • Năm thực Bố cục (tối đa 0.25 điểm) • Nhận xét giáo viên hướng dẫn giáo viên chấm • Mục lục: cấu trúc chương, mục tiểu mục • Phụ lục (nếu có) • Tài liệu tham khảo Ketnooi.com kết nối công dân điện tử Niên Luận GVHD:K.S Lê Thị Phương Dung II NỘI DUNG (Tối đa 3,5 điểm) Tổng quan (tối đa 0,5 điểm) • Mô tả toán, mục tiêu cần đạt (0,25 điểm) • Hướng giải kế hoạch thực (0,25 điểm) Lý thuyết (tối đa 0,5 điểm) • Các khái niệm sử dụng đề tài • Kết vận dụng lý thuyết vào đề tài Ứng dụng (tối đa 2,0 điểm) • Phân tích yêu cầu toán, xây dựng cấu trúc liệu cần thiết (tối đa 0,5 điểm) • Giải thuật (Lưu đồ-Ngôn ngữ giả) (1,0 điểm) Ketnooi.com kết nối công dân điện tử Niên Luận GVHD:K.S Lê Thị Phương Dung • Giới thiệu chương trình (0,5 điểm) Kết luận (tối đa 0,5 điểm) • Nhận xét kết đạt • Hạn chế • Hướng phát triển III CHƯƠNG TRÌNH DEMO (Tối đa 5,0 điểm) Giao diện thân thiện với người dùng (1.0 điểm) Hướng dẫn sử dụng (0,5 điểm) Kết thực với kết phần ứng dụng (3,5 Ketnooi.com kết nối công dân điện tử Niên Luận GVHD:K.S Lê Thị Phương Dung điểm) Ghi chú: Điểm khung “các sinh viên thực hiện” điểm kết cuối sinh viên trình thực niên luận Nếu sinh viên demo chương trình trả lời vấn đáp không đạt yêu cầu giáo viên hướng dẫn sinh viên nhận điểm F cho học phần Cần Thơ, ngày … tháng … năm … GIÁO VIÊN CHẤM Ketnooi.com kết nối công dân điện tử Niên Luận Ketnooi.com kết nối công dân điện tử GVHD:K.S Lê Thị Phương Dung Niên Luận Ketnooi.com kết nối công dân điện tử GVHD:K.S Lê Thị Phương Dung Niên Luận GVHD:K.S Lê Thị Phương Dung NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… Ketnooi.com kết nối công dân điện tử Niên Luận GVHD:K.S Lê Thị Phương Dung ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… Ketnooi.com kết nối công dân điện tử Niên Luận GVHD:K.S Lê Thị Phương Dung void XoaCung(int node1, int node2) { TrongSo[node1][node2]= +∞; } IV HƯỚNG DẪN SỬ DỤNG CHƯƠNG TRÌNH DEMO Bước 1:Bạn nhấp đúp vào file Dijkstra.exe mở file nguồn Dijkstra Dev-C++ nhấn F9 để chạy chương trinh Chương trình mở giao diện sau: Ketnooi.com kết nối công dân điện tử Niên Luận Ketnooi.com kết nối công dân điện tử GVHD:K.S Lê Thị Phương Dung Niên Luận GVHD:K.S Lê Thị Phương Dung Bước 2:Chọn chức sử dụng:  Chọn ta nhập vào số đỉnh trọng số (trọng số [i][j]=[j][i])được giao diện sau: Ketnooi.com kết nối công dân điện tử Niên Luận Ketnooi.com kết nối công dân điện tử GVHD:K.S Lê Thị Phương Dung Niên Luận GVHD:K.S Lê Thị Phương Dung  Chọn ta giao diện thông báo số nút sau thêm nút  Chọn thông báo số nút sau xoá nút(Giao diện tương tự trên)  Chọn ta nhập cung cần thêm trọng số mới.Có giao diện Ketnooi.com kết nối công dân điện tử Niên Luận  Chọn nhập cung cần xoá.Có giao diện Ketnooi.com kết nối công dân điện tử GVHD:K.S Lê Thị Phương Dung Niên Luận GVHD:K.S Lê Thị Phương Dung  Chọn Xoá toàn đồ thị nhập c or k tương đương muốn xoá không.Có giao diện Ketnooi.com kết nối công dân điện tử Niên Luận GVHD:K.S Lê Thị Phương Dung  Chọn xác định số nút duyệt cung có giao diện Ketnooi.com kết nối công dân điện tử Niên Luận Ketnooi.com kết nối công dân điện tử GVHD:K.S Lê Thị Phương Dung Niên Luận GVHD:K.S Lê Thị Phương Dung  Chọn muốn tìm cung bạn nhập cung cần tìm vào chương trình xuất số cùa cung đó.Có giao diện Ketnooi.com kết nối công dân điện tử Niên Luận GVHD:K.S Lê Thị Phương Dung  Chọn xem lại ma trận nhập tìm đường ngắn hai đỉnh bất kỳ.Sau xuất ma trận chương trình yêu cầu bạn nhập vào đỉnh xuất phát đỉnh đến,bạn nhập vào chương trình in đường độ dài dường Có giao diện Ketnooi.com kết nối công dân điện tử Niên Luận Ketnooi.com kết nối công dân điện tử GVHD:K.S Lê Thị Phương Dung Niên Luận GVHD:K.S Lê Thị Phương Dung  Chọn 10 tức nhấn phím để thoát khỏi chương trình CHƯƠNG IV: KẾT LUẬN I KẾT QUẢ ĐẠT ĐƯỢC Sau nhiều tuần thực đề tài niên luận em hoàn tất việc cài đặt thuật toán Dijkstra giải toán tìm đường ngắn nhất.Chương trình cài đặt có khả tìm đường ngắn hai đỉnh tương đối xác.Qua đề tài,đã giúp em hiểu giải thuật,các ưng dụng giải thuật quan trọng giúp em rèn luyện thêm kĩ lập trình II HẠN CHẾ - Do thực việc cài đặt giải thuật ngôn ngữ C nên phần đồ họa hạn chế thiếu tính thân thiện - Về cấu trúc liệu chưa thực hiệu Ketnooi.com kết nối công dân điện tử Niên Luận GVHD:K.S Lê Thị Phương Dung - Mặc dù giải thuật chạy số giải thuật chương trình hiệu tương đối chậm III HƯỚNG KHẮC PHỤC VÀ PHÁT TRIỂN - Cài đặt giải thuật ngôn ngữ khác như: Java, Visual Basic, C#,… - Thêm vào số tính - Áp dụng thuật toán vào số ứng dụng thực tế để góp phần thấy tính thực tế hiệu thuật toán TÀI LIỆU THAM KHẢO: [1]Lê Minh Hoàng.Lý thuyết đồ thị,Bài 1,2,3,4,trang 4-35.Ebook [2]Trường Đại Học Cần Thơ Khoa Công Nghệ Thông Tin – Truyền Thông.Toán rời rạc 2,Chương 3,trang 51-92.lưu hành nội năm 2009 Ketnooi.com kết nối công dân điện tử Niên Luận GVHD:K.S Lê Thị Phương Dung [3] Phạm Văn Ất.C++ lập trình hướng đối tượng,Chương 8,trang 446-471,nhà xuất khoa học kĩ thuật,Hà Nôi năm 1999 [4] Trường Đại Học Cần Thơ Khoa Công Nghệ Thông Tin – Truyền Thông Lập trình bản,Chương 10,trang 105-114, lưu hành nội [5] http://vi.wikipedia.org/wiki/Thu%E1%BA%ADt_to%C3%A1n_Dijkstra [6] http://sinhvienit.net/@forum/showthread.php?t=18236 [7] http://forums.congdongcviet.com/showthread.php?t=1093 Ketnooi.com kết nối công dân điện tử [...]... sử dụng thuật toán Dijkstra để giải quyết bài toán đường đi ngắn nhất là: -Cho người dùng nhập vào số đỉnh,trọng số ,đi m xuất phát và đích đến qua bàn phím -Chạy giải thuật và đưa ra kết quả Ketnooi.com kết nối công dân đi n tử Niên Luận 1 GVHD:K.S Lê Thị Phương Dung Công Việc Thời Gian Tìm hiểu đề tài Tuần 1 Tìm tài liệu Tuần 2 Phân tích đề tài phác thảo giải thuật, xác định các hàm cài đặt, tìm tài... toán đường đi ngắn nhất: Ketnooi.com kết nối công dân đi n tử Niên Luận 1 GVHD:K.S Lê Thị Phương Dung I.1.1 Phát biểu bài toán Cho G=(X,E) là một đồ thị có hướng.Ta định nghĩa ánh xạ trọng lượng như sau: L:E |R e| L(e) Xét hai đỉnh i,j Є X,gọi P là đường đi từ đỉnh iđến đỉnh j,trọng lượng (hay giá) của đường đi P được định nghĩa là: L(P) =Σ( e∈P )L(e) Mục đích của bài toán đường đi ngắn nhất là tìm đường. .. kiếm trên đồ thị (tìm theo chiều rộng và chiều sâu)và tính liên thông,các giải thuật có liên quan về đồ thị và vận dụng giải thuật đi n hình Dijkstra để tìm đường đi ngắn nhất trên đồ thị có hướng,bên cạnh đó là giới thiệu một số thao tác cơ bản về đồ hoạ Ketnooi.com kết nối công dân đi n tử Niên Luận 1 Ketnooi.com kết nối công dân đi n tử GVHD:K.S Lê Thị Phương Dung Niên Luận 1 GVHD:K.S Lê Thị Phương... Ketnooi.com kết nối công dân đi n tử Niên Luận 1 GVHD:K.S Lê Thị Phương Dung V.1.3.Lỗi đồ hoạ………………………………………………………………22 V.1.4.Mẫu và màu…………………………………………………………….22 V.1.5.Vẽ………………………………………………………………………22 Chương III:ỨNG DỤNG THUẬT TOÁN DIJKSTRA GIẢI QUYẾT BÀI TOÁN ĐƯỜNG ĐI NGẮN NHẤT………………………………………………………23 I .Thuật toán Dijkstra ………………………………………………………… 23 II.Lưu đồ thuật toán Dijkstra …………………………………………………... tìm đường đi P từ i đến j mà có trọng lượng nhỏ nhất trong số tất cả những đường đi có thể có Nhận xét: Ketnooi.com kết nối công dân đi n tử Niên Luận 1 GVHD:K.S Lê Thị Phương Dung Khi làm bài toán đường đi ngắn nhất thì chúng ta có thể bỏ bớt các cạnh song song và chỉ chừa lại các cạnh có trọng lượng nhỏ nhất trong các cạnh song song Đối với các khuyên có trọng lượng không âm có thể bỏ đi mà không... dụng để giải các bài toán như : tìm đường đi ngắn nhất giữa hai thành phố trong cùng một mạng giao thông Chúng ta còn sử dụng đồ thị để giải các bài toán về lập lịch,thời khoá biểu,và phân bố tần số cho các trạm phát thanh và truyền hình Mục đích ta tìm hiểu là nhằm giới thiệu các khái niệm cơ bản,về đồ thị có hướng và đồ thị vô hướng,các cách biểu diễn đồ thị,các phương pháp tìm kiếm trên đồ thị (tìm. .. trong lượng âm ta có thể đi đến kết luận bài toán không có lời giải Do các nhận xét vừa nêu,có thể xem dữ liệu nhập vào của bài toán đường đi ngắn nhất là ma trận L được định nghĩa như sau: Trọng lượng cạnh nhỏ nhất nối i đến j nếu có, Ketnooi.com kết nối công dân đi n tử Niên Luận 1 Li,j GVHD:K.S Lê Thị Phương Dung { 0 nếu không có cạnh nối i đến j Trong quá trình trình bày thuật toán,để cho tổng quát,giá... tra trong chương trình I.1.2 .Thuật toán Dijkstra -Xét đồ thị G=(X,E) có trọng với X={1,2,…,n} và giả sử các cạnh không âm Ketnooi.com kết nối công dân đi n tử Niên Luận 1 GVHD:K.S Lê Thị Phương Dung -Dữ liệu nhập cho thuật toán là ma trận trọng lượng L(với qui ước Lh,k=+∞ nếu không có cạnh nối từ đỉnh h đến đỉnh k) và hai đỉnh i,j cho trước -Dữ liệu xuất là đường đi ngắn nhất từ i đến j II CÁC MỤC TIÊU... Ketnooi.com kết nối công dân đi n tử Niên Luận 1 GVHD:K.S Lê Thị Phương Dung Giáo viên hướng dẫn K.S Lê Thị Phương Dung MỤC LỤC MỤC LỤC LỜI NÓI ĐẦU…………………………………………………………………….6 Chương I: GIỚI THIỆU………………………………………………………… 7 Ketnooi.com kết nối công dân đi n tử Niên Luận 1 GVHD:K.S Lê Thị Phương Dung I GIỚI THIỆU TỔNG QUAN ĐỀ TÀI…………………………………7 I.1 Tổng quan về bài toán đường đi ngắn nhất ……………………….7 I.1.1 Phát... để giải bài toán nổi tiếng về các cái cầu ở thàng phố Konigsberg Đồ thị được sử dụng để giải quyết các bài toán trong nhiều lĩnh vực khác nhau Chẳng hạn , đồ thị có thể sử dụng để xác định các mạch vòng trong vấn đề giải tích mạch đi n.Chúng ta có thể phân biệt các hợp chất hoá học hữu cơ khác nhau với cùng công thức phân tử nhưng khác nhau về cấu trúc phân tử nhờ đồ Ketnooi.com kết nối công dân đi n

Ngày đăng: 01/06/2016, 11:07

Từ khóa liên quan

Mục lục

  • ĐÁNH GIÁ KẾT QUẢ THỰC HIỆN NIÊN LUẬN 1

  • (Học kỳ 2, Niên khóa 2010-2011)

  • III. KẾ HOẠCH THỰC HIỆN…………………………………………..8

  • II. CÁC MỤC TIÊU CẦN ĐẠT

  • III. KẾ HOẠCH THỰC HIỆN

    • G được gọi là đơn đồ thị nếu giữa hai đỉnh u, v của V có nhiều nhất là 1 cạnh trong E nối từ u tới v.

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

Tài liệu liên quan