Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 87 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
87
Dung lượng
2,2 MB
Nội dung
MỤC LỤC MỞ ĐẦU 1 Tính cấp thiết đề tài Mục tiêu nghiên cứu Đối tượng phạm vi nghiên cứu .2 Phương pháp nghiên cứu .2 Bố cục đề tài CHƯƠNG BÀITOÁNNGƯỜIĐƯATHƯ 1.1 ĐẠI CƯƠNG VỀ ĐỒTHỊ .4 1.1.1 Đồ thị, đỉnh, cạnh, cung 1.1.2 Bậc, nửa bậc vào, nửa bậc 1.1.3 Đường đi, chu trình , tính liên thơng .9 1.2 CHU TRÌNH EULER .10 1.2.1 Định nghĩa 10 1.2.2 Điều kiện cần đủ .11 1.2.3 Các thuật tốn tìm chu trình Euler 15 1.3 BÀI TỐN TÌM ĐƯỜNG ĐI NGẮN NHẤT .20 1.3.1 Phát biểu toán 20 1.3.2 Thuật toán Dijkstra 20 1.3.3 Thuật toán Floyd 21 1.3.4 Thuật toán Floyd –Warshall 26 1.4 BÀITOÁNNGƯỜIĐƯATHƯ 28 1.4.1 Phát biểu toán 28 1.4.2 Thuật tốn tìm lộ trình đưathư ngắn 29 1.5 TỔNG KẾT CHƯƠNG .31 CHƯƠNG ỨNGDỤNGỞCÔNGTYMÔITRƯỜNGĐƠTHỊQUẢNGBÌNH .32 2.1 MÔ TẢ BÀITOÁN THỰC TẾ 32 2.2.MAPINFO VÀCƠNG CỤ LẬP TRÌNH MAPXTREME 32 2.2.1 Tìm hiểu Mapinfo 32 2.2.2 Mapxtreme 37 2.3 SƠ ĐỒ MẠNG LƯỚI GIAO THÔNG THÀNH PHỐ ĐỒNG HỚI 58 2.3.1 Bản đồ 58 2.3.2 Sơ đồ mạng lưới giao thông 59 2.4 TỔNG KẾT CHƯƠNG .60 CHƯƠNG THIẾT KẾ VÀ CÀI ĐẶT CHƯƠNG TRÌNH 61 3.1 THIẾT KẾ CHƯƠNG TRÌNH .61 3.1.1 Yêu cầu chương trình 61 3.1.2 Thiết kế sở dữ liệu 61 3.2 ỨNGDỤNGBÀITOÁNNGƯỜIĐƯATHƯ CÀI ĐẶT CHƯƠNG TRÌNH 62 3.3.THỬ NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ 63 3.3.1 Giao diện chương trình 64 3.3.2 Phóng to, thu nhỏ, di chuyển đồ 65 3.3.3 Chọn lớp, thêm, sửa, xoá đối tượng .66 3.3.4 Tìm kiếm lộ trình 70 3.3.5 Đánh giá phần mềm .75 3.4.TỔNG KẾT CHƯƠNG 77 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 78 TÀI LIỆU THAM KHẢO 79 QUYẾT ĐỊNH GIAO ĐỀ TÀI LUẬN VĂN (bản sao) DANH MỤC CÁC CHỮ VIẾT TẮT RLC Common Language Runtime SDK Software Development Kit SQL Structured Query Language RDBMS relational database management systems MS Microsoft Office UML Unified Modeling Language DANH MỤC CÁC BẢNG Số hiệu bảng Tên bảng Trang 3.1 Bảng nút giao thông 61 3.2 Bảng tuyến giao thơng 62 DANH MỤC CÁC HÌNH Số hiệu hình 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 2.10 2.11 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 3.10 3.11 Tên hình Trang Đồthị vơ hướng Đồthị có hướng Đồthị có đỉnh treo Đồthị đủ Đồthị Euler Đồthị Thanh mã tấu Mohammed Đồthị liên thông có đỉnh bậc chẵn Đồthị có trọng số Đối tượng đường Đối tượng vùng Bản đồ lớp Biểu diễn theme sơ đồ minh họa lớp cài đặt giao diện Isession Sơ đồ MapInfo.Mapping namespace Các Layer biễu diễn sơ đồ UML Sơ đồ UML minh họa namespace Find Sơ đồ UML biểu diễn mơ hình lớp 4 11 16 18 29 35 36 41 42 48 50 51 55 Geometry Bản đồ giao thông thành phố Đồng Hới Hình 2.11 Mơ hình hóa đồthị Giao diện chương trình Chức phóng to chương trình Chức thu nhỏ chương trình Chọn lớp đồ cần chỉnh sữa Chọn lớp đồ để chỉnh sữa đối tượng Chọn thay đổi kiểu đối tượng Chức load đường cho xe thu gom rác Chức đọc dữ liệu từ file Mô phỏng đường đồ Lưu hành trình xe thu gom rác In tuyến đường đồ 57 58 59 64 65 66 67 69 70 71 72 73 74 75 MỞ ĐẦU Tính cấp thiết đề tài Cuộc sống người ngày cải thiện nâng cao chất lượng, với phát triển đó lượng rác thải hàng ngày mà thải môitrường ngày nhiều Một cách để thu gom rác hiệu sử dụng xe chở rác Tuy nhiên với mạng lưới giao thông phức tạp chằng chéo địa bàn Thành phố Đồng Hới việc di chuyển qua lại nhiều ảnh hưởng đến giao thông lợi ích kinh tế Vấn đề đặt tìm hành trình tối ưu cho đường xe rác ngắn Các toán đặt ứngdụng thường có sở dữ liệu lớn nên việc rút ngắn thời gian tính tốn để trả lời câu truy vấn có ý nghĩa thực tiễn cao Ngoài thực tế, đồthị sử dụng tốn có thể liên tục thay đởi theo thời gian, ví dụ đỉnh hay cạnh nó có thể thêm vào hay xóa (đồ thị động), thay đổi độ dài, lượng thông qua Mỗi lần có thay đổi cấu trúc dữ liệu tốn, thơng tin đỉnh cạnh bị thay đổi theo Trong đó yêu cầu đặt phải liên tục trả lời câu hỏi thông tin đồthị tính liên thơng đồ thị, rừng bao trùm tối thiểu, đỉnh có nằm bao trùm tối thiểu hay không, đường ngắn Một cách tiếp cận để giải toánđồthị động sử dụng cấu trúc dữ liệu thuật toán truyền thống đồthị tĩnh chạy lại chúng có thay đổi đồthị Tuy nhiên cách tiếp cận không tận dụng thông tin đồthị trước thay đổi dẫn đến độ phức tạp để trả lời câu truy vấn đồthị sau bước thay đổi lớn Xuất phát từ lý trên, thực đề tàì “BÀI TỐN NGƯỜIĐƯATHƯVÀỨNGDỤNGỞCÔNGTYMÔITRƯỜNGĐÔTHỊQUẢNG BÌNH” Trong đề tài tơi trình bày nghiên cứu, khảo sát thực nghiệm ứngdụng số cấu trúc dữ liệu đưa gần để giúp quản lý đồthị động cách mềm dẻo Mục tiêu nghiên cứu : oNghiên cứu lý thuyết đồthịứngdụng oNghiên cứu cụ thể thuật tốn tìm đường đồ thị, đặc biệt thuật toán giải toánngườiđưathư oPhân tích cài đặt thuật tốn ngườiđưathư oViết chương trình tìm đường cho xe thu gom rác, thể kết oCài đặt ứngdụng cho côngtymôitrườngđôthịQuảngBình Đối tượng phạm vi nghiên cứu Đối tượng nghiên cứu o Tìm hiểu cơng tác có những bất cập, thiếu sót để đề giải pháp theo yêu cầu nhằm đem lại hiệu cao o Nghiên cứu vấn đề đồthịtoánngườiđưathưo Triển khai xây dựng phần mềm ứngdụngo Đánh giá khả ứngdụng phần mềm Phạm vi nghiên cứu o Các vấn đề đồthịoỨngdụng tìm hành trình tối ưu cho xe gom rác ở cơngtymơitrườngthịQuảngBình Phương pháp nghiên cứu Đề tài kết hợp hai phương pháp nghiên cứu, đó là: Phương pháp nghiên cứu lý thuyết o Nghiên cứu lý thuyết số thuật toánđồthịo Nghiên cứu toánngườiđưathư Phương pháp nghiên cứu thực nghiệm o Sử dụng phương pháp nghiên cứu lý thuyết kết hợp với nghiên cứu thực nghiệm: o Biểu diễn toán thực tế đồthịo Triển khai xây dựng giải pháp ứngdụngtoánngườiđưathư vào thực tế o Chạy thử nghiệm lưu trữ kết đạt được, sau đó đánh giá lại kết Bố cục đề tài Sau phần mở đầu, luận văn gồm có chương phần kết luận Các chương luận văn bao gồm: CHƯƠNG BÀITOÁNNGƯỜIĐƯATHƯ CHƯƠNG ỨNGDỤNGỞCÔNGTYMÔITRƯỜNGĐÔTHỊQUẢNGBÌNH CHƯƠNG THIẾT KẾ VÀ CÀI ĐẶT CHƯƠNG TRÌNH Phần kết luận, tởng hợp kết nghiên cứu luận văn Các kết đạt được, hạn chế luận văn, đề xuất hướng phát triển cho đề tài CHƯƠNG BÀITOÁNNGƯỜIĐƯATHƯ 1.1 ĐẠI CƯƠNG VỀ ĐỒTHỊ 1.1.1 Đồ thị, đỉnh, cạnh, cung Đồthị vô hướng G = (V,E) gồm tập V đỉnh tập E cạnh Mỗi cạnh e E liên kết với cặp đỉnh v, w (không kể thứ tự) v w e + Ví dụ: Hình 1.1 Đồthị vơ hướng Đồthị có hướng G = (V,E) gồm tập V đỉnh tập E cạnh có hướng gọi cung Mỗi cung e E liên kết với cặp đỉnh (v, w) có thứ tự v w e + Ví dụ Hình 1.2 Đồthị có hướng 67 - Ngoài hộp thoại có thể thay đởi số thuộc tính thể lớp, tuỳ vào lớp lựa chọn Ví dụ bảng tblDinh có: Visible(ẩn/hiện), Options(thuộc tính), extents(kích thứơc), Information(các thơng tin cần thiết) Hình 3.4 Chọn lớp đồ cần chỉnh sữa 68 Thêm, sửa, xoá đối tượng: * Thêm đối tượng: tuỳ thuộc vào đối tượng ta cần thêm(line, point, polygon ) ta click vào chức hộp EditMode, sau đó click lên đồ vị ví cần thêm, đó đối tượng tự động cập nhật * Xoá đối tượng: ta có thể xố trực tiếp hình, chọn đối tượng delete đối tượng đó hệ thống tự động cập nhật thông tin vào sở dữ liệu * Cập nhật lại thông tin đối tượng: phải mở bảng sơ dữ liệu để chỉnh sửa trực tiếp nó Chú ý 1: Trước thực thao tác thêm, sửa, xoá đối tượng phải thực lựa chọn lớp cần thao tác ngang cùng form(ví dụ: muốn xử lý thêm, sửa, xố với đỉnh ta chọn bảng ”Dinh”, muốn xử lý thêm, sửa, xoá đường ta chọn bảng ”Giaothong”), sau lựa chọn kiểu đối tượng muốn thêm(AddPoint, AddLine, AddPolygon) 69 Hình 3.5 Chọn lớp đồ để chỉnh sữa đối tượng 70 Hình 3.6 Chọn thay đởi kiểu đối tượng Nếu muốn thay đởi kiểu đối tượng lựa chọn phần Style Geometry: Chú ý 2: Sau thực thêm đối tượng trực tiếp đồ ta phải cập nhật thông tin cần thiết cho đối tượng form ”EditData” Hoặc cũng có thể thực thao tác thêm, sửa, xoá trực tiếp form ”Editdata” 3.3.4 Tìm kiếm lộ trình Đầu vào: Đồthị G tạo thành từ đỉnh D i ma trận trọng số khoảng cách Anxn Đầu ra: Lộ trình qua tuyến đường cho nhân viên, khoảng cách phải đi, in kết báo cáo mô phỏng tuyến đường nhân viên đồ giúp cho nhân viên có thể dễ dàng thực lộ trình thu gom 71 Cách thực hiện: Muốn chọn chức tìm đường cho người lái xe thu gom rác trước hết phải load đồ lên, sau đó chọn chức Search street để load tuyến đường cho người lái xe thu gom rác phải Hình 3.7 Chức load đường cho xe thu gom rác Sau chọn tuyến đường phải qua (sử dụng đọc từ file), tuyến đường cần phải load lên đồ 72 Hình 3.8 Chức đọc dữ liệu từ file 73 Kết cuối mô tả tuyến đường ngườiđưathư phải sau: Hình 3.9 Mơ phỏng đường đồ 74 Lưu lộ trình vào file Hình 3.10 Lưu hành trình xe thu gom rác 75 In tuyến đường xe thu gom rác Hình 3.11 In tuyến đường đồ 3.3.5 Đánh giá phần mềm a Cách đánh giá Với việc ứngdụng phần mềm vào việc tìm lộ trình cho xe thu gom rác địa bàn thành phố Đồng Hới, phạm vi ứngdụng chưa thật rộng rãi nên không xây dựng chức đánh giá tự động mà sử dụng cách đánh giá cổ điển quan sát mắt 76 Để đánh giá xác khách quan tơi vào tiêu chí ràng buộc tốn tơi có bảng đánh sau: TT Tiêu chí ràng buộc Kết Thiết kế giao diện rõ ràng, dễ hiểu, dễ sử dụng tối ưu Đạt thao tác Xây dựngcông cụ hỗ trợ thêm, sửa, xoá đối tượng, nhằm phục vụ cho tốn động (thay đởi lộ trình xe thu Đạt gom rác) Xây dựng tiện ích cho người sử dụng như: xem thuộc tính đối tượng này, thay đổi thông số Đạt đối tượng, phóng to, thu nhỏ theo nhu cầu người sử dụng Tăng hiệu sử dụng hệ thống tính tiện ích nó, lúc có thể thực lập lộ trình cho nhiều xe thu gom Khoảng cách phải ngắn Đạt Đạt b Khả áp dụng Phần mềm có thể triển khai cho nhiều ứngdụng thực tế như: - Hệ thống tìm đường tối ưu cho người lái xe thu gom rác ở tuyến phố - Hệ thống tìm đường tối ưu cho ngườiđưa thư, người giao báo… - Hệ thống tìm đường tối ưu cho dịch vụ đưa đón học sinh, sinh viên… - Hệ thống xác định lộ trình cho tour du lịch c Lợi ích kinh tế - xã hội - Lợi ích kinh tế Với hệ thống 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…trong việc lựa chọn đường cho hợp lý 77 - Lợi ích xã hội Việc sử dụng phần mềm tiết kiệm nhiều thời gian, rút ngắn quảng đường từ đó việc thu gom rác nhanh chóng, làm giảm ô nhiễm môi trường, đem lại môitrườngđôthị đẹp Việc sử dụng phần mềm hạn chế di chuyển xe làm cho giao thông thành phố đở ùn tắc, tai nạn giao thông 3.4 TỔNG KẾT CHƯƠNG Trong chương này, phân tích thuật tốn giải tốn ngườiđưathư Xây dựng phần mềm ứngdụngtoánngườiđưathư cho xe thu gom rác Tiến hành bước thử nghiệm đánh giá phần mềm ứngdụng 78 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Kết đạt Sau thời gian nghiên cứu thực hiện, đồ án đạt những kết sau: - Tìm hiểu hệ sở dữ liệu MapInfor 6.0, công cụ MapXtreme 2005 - Khảo sát thực tế tuyến đường giao thông thành phố Đồng hới số hóa đồ Mapinfo - Nghiên cứu cài đặt thuật toán cho toánngườiđưathưứng dụng, bước đầu mô phỏng lên đồ - Kết tìm đường tương đối tối ưu có hiệu với đồthị lớn khoảng 500 đỉnh - Phân tích thiết kế chương trình hỗ trợ lập hành trình tối ưu theo phân công cho nhân viên thu gom rác Hướng phát triển chương trình Những kết đạt những chức hệ thống, để có chương trình chạy tốt, hiệu quả, tiện dụng hệ thống cần có thời gian chỉnh sửa, bở sung, hồn thiện cách chi tiết đầy đủ Chương trình có thể mở rộng để áp dụng tìm đường cho nhiều xe thu gom rác lúc, có thể in lịch làm việc tuần cho nhân viên lái xe Đặc biệt phát triển thành hệ thống tự động phân côngcông việc cho nhân viên đảm bảo công bằng, hợp lý xác, hạn chế tượng: số lượng cơng việc nhân viên chênh lệnh lớn khoảng cách 79 Ngoài có thể đưa thêm số tiêu chí để phân cơngcơng việc giữa nhân viên như: vào thời gian thu gom, vị trí thu gom Qua đó có thể đánh giá lực làm việc nhân viên TÀI LIỆU THAM KHẢO Tiếng Việt [1] PGS TSKH Trần Quốc Chiến (2011), Giáo trình tốn ứng dụng, Đại học Đà Nẵng [2] Kenneth H.Rosen (1997), Toán rời rạc ứngdụng tin học, dịch tiếng Việt, Nxb KHKT, Hà Nội [3] Phạm Hữu Khang, Hoàng Đức Hải (2006), C# 2005 Lập trình Windows Forms, Nhà xuất Lao động Xã hội [4] Phạm Hữu Khang, Hoàng Đức Hải (2006), C# 2005 Lập trình sở liệu, Nhà xuất Lao động Xã hội [5] Lê Thị Mộng Thanh (2009), Nghiên cứu, cài đặt thuật toán giải toán lập hành trình ngườiđưathưứngdụng Báo cáo tốt nghiệp Thạc sĩ ngành CNTT, Học viện KTQS, Khoá 2007-2009 Tiếng nước [6] Charles E.Leiserson, Thomas H.Cormen (1999), Ronald L.Rivest, Introduction To Algorithms, The MIT Press [7] Edmonds, J and Johnson, E L (1973), "Matching, Euler Tours, and the Chinese Postman", Math Programm 5, 88-124 [8] K M Chandy, J Misra (1982), Distributed Computation on Graphs, Shortest Path Algorithms, University of Texax at Autin, November 1982 [9] Kwan, M K (1962), "Graphic Programming Using Odd or Even Points." Chinese Math 1, 273-277 80 [10] Skiena (1990), S Implementing Discrete Mathematics: Combinatorics and Graph Theory with Mathematica Reading, MA: AddisonWesley 81 Trang web [11] http://mathworld.wolfram.com/ChinesePostmanProblem.html [12] http://simple.wikipedia.org/wiki/Chinese_postman_problem [13] http://www.springerreference.com/docs/html/chapterdbid/5311.html [14] http://www.sourcecodeonline.com/listqcode_chinese_postman_problem [15] http://www.codeforge.com/s/0/cpp-chinese-postman-problem ... thực đề tàì “BÀI TỐN NGƯỜI ĐƯA THƯ VÀ ỨNG DỤNG Ở CƠNG TY MƠI TRƯỜNG ĐƠ THỊ QUẢNG BÌNH” Trong đề tài tơi trình bày nghiên cứu, khảo sát thực nghiệm ứng dụng số cấu trúc dữ liệu đưa gần để giúp... phần kết luận Các chương luận văn bao gồm: CHƯƠNG BÀI TOÁN NGƯỜI ĐƯA THƯ CHƯƠNG ỨNG DỤNG Ở CƠNG TY MƠI TRƯỜNG ĐƠ THỊ QUẢNG BÌNH CHƯƠNG THIẾT KẾ VÀ CÀI ĐẶT CHƯƠNG TRÌNH Phần kết luận, tổng hợp... đồ thị toán người đưa thư o Triển khai xây dựng phần mềm ứng dụng o Đánh giá khả ứng dụng phần mềm Phạm vi nghiên cứu o Các vấn đề đồ thị o Ứng dụng tìm hành trình tối ưu cho xe gom rác ở công