thuật toán tìm đường đi tối ưu trong gis

83 1.3K 5
thuật toán tìm đường đi tối ưu trong gis

Đ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

- 1 - Đại học Thái Nguyên Khoa công nghệ thông tin Phạm Thị Hằng Nga Thuật toán tìm đờng đi tối u trong GIS Luận văn thạc sĩ CÔng ngHệ THÔNG TIN Thái Nguyên - 2010 - 2 - Đại học Thái Nguyên Khoa công nghệ thông tin Phạm Thị Hằng Nga Thuật toán tìm đờng đi tối u trong gis Chuyên ngành: Khoa học máy tính Mã số: 60 48 01 Luận văn thạc sĩ CÔNG NGHệ THÔNG TIN Ngời hớng dẫn khoa học PGS. TS. Đặng Văn Đức Thái Nguyên - 2010 i LỜI CAM ĐOAN Tôi xin cam đoan bản luận văn “Thuật toán tìm đường đi tối ưu trong GIS” là công trình nghiên cứu của tôi dưới sự hướng dẫn khoa học của PGS.TS. Đặng Văn Đức, tham khảo các nguồn tài liệu đã được chỉ rõ trong trích dẫn và danh mục tài liệu tham khảo. Các nội dung công bố và kết quả trình bày trong luận văn này là trung thực và chưa từng được ai công bố trong bất cứ công trình nào. Thái Nguyên, tháng 10 năm 2010 Phạm Thị Hằng Nga ii Lời cảm ơn Tôi xin gửi lời cảm ơn sâu sắc tới PGS. TS. Đặng Văn Đức, người đã tận tình có những chỉ bảo cần thiết để giúp đỡ tôi trong suốt quá trình nghiên cứu và phát triển luận văn. Xin chân thành cảm ơn quý Thầy cô trong khoa Sau đại học trường Đại học Thái Nguyên đã nhiệt tình giảng dạy, trang bị cho tôi những kiến thức quý báu trong suốt thời gian học tập tại trường. Xin chân thành cảm ơn các bạn cùng lớp, đồng nghiệp và đơn vị nơi tôi công tác đã tạo điều kiện cho tôi hoàn thành luận văn này. Xin gửi lời cảm ơn tới gia đình tôi đã động viên tôi trong suốt quá trình học và hoàn thành luận văn. iii MỤC LỤC LỜI CAM ĐOAN i MỞ ĐẦU 1 CHƯƠNG 1 - TỔNG QUAN VỀ GIS 4 1.1 Định nghĩa, các thành phần, chức năng GIS 4 1.1.1 Định nghĩa 4 1.1.2 Các thành phần 9 1.1.3 Chức năng của Gis 12 1.2 Cấu trúc dữ liệu không gian véctơ và các thuật toán liên quan 14 1.2.1 Các thành phần dữ liệu 14 1.2.2 Các phép toán phân tích không gian trên mô hình Vector 18 1.3 Các ứng dụng GIS 22 CHƯƠNG 2 – MỘT SỐ THUẬT TOÁN TÌM ĐƯỜNG ĐI TỐI ƯU ỨNG DỤNG TRONG GIS 24 2.1 Một số thuật toán cơ sở: Disktra, Floy, A* 24 2.1.1 Phát biểu bài toán 24 2.1.2 Thuật toán Dijkstra 25 2.1.3 Thuật toán Bellman-Ford 34 2.1.4 Thuật toán A* 37 2.2 Ứng dụng logíc mờ trong tìm đường đi tối ưu 46 2.2.1 Giới thiệu Logic mờ 46 2.2.2 Ứng dụng logic mờ trong tìm đường đi tối ưu 50 2.3 Nhận xét đánh giá 53 CHƯƠNG 3 – PHÁT TRIỂN CHƯƠNG TRÌNH THỬ NGHIỆM 56 3.1 Giới thiệu bài toán tìm đường đi tối ưu 56 3.1.1 Lý do xây dựng chương trình 56 iv 3.1.2 Mục tiêu, nhiệm vụ của chương trình 56 3.2 Các công nghệ sử dụng 57 3.2.1 MapInfo Professional 57 3.2.2 Thư viện hỗ trợ xây dựng ứng dụng bản đồ MapXtreme 60 3.2.3 Hệ quản trị cơ sở dữ liệu Access 64 3.2.4 Ngôn ngữ lập trình Microsoft Visual C#.NET 64 3.3 Thiết kế, lập trình hệ thống demo 65 3.3.1 Thiết kế 65 3.3.2 Lập trình demo 67 3.4 Đánh giá kết quả thu được 72 KẾT LUẬN 73 HƯỚNG PHÁT TRIỂN 74 TÀI LIỆU THAM KHẢO 75 v DANH MỤC HÌNH VẼ Hình 1.1 Hệ thống thông tin tin địa lý 6 Hình 1.2 Tầng bản đồ 7 Hình1.3 Các hoạt động chính của GIS 8 Hình 1.4 Các thành phần của GIS 9 Hình 1.5 Phần cứng GIS 11 Hình 1.6 Phần mềm của GIS 12 Hình 1.7 Các nhóm chức năng trong GIS 13 Hình 1.8 Các thành phần hình học cơ sở 14 Hình 1.9: Số liệu vector được biểu thị dưới dạng điểm (Point) 15 Hình 1.10: Số liệu vector được biểu thị dưới dạng Arc 16 Hình 1.11: Số liệu vector được biểu thị dưới dạng vùng (Polygon) 17 Hình 1.12 Một số khái niệm trong cấu trúc cơ sở dữ liệu bản đồ 17 Hình 1.13 Phép toán Buffer 18 Hình 1.14 Phép toán Difference 18 Hình 1.15 Phép toán Clip 19 Hình 1.16 Phép toán Intersect 19 Hình 1.17 Phép toán Convex hull 19 Hình 1.18 Phép toán Symmetric difference 20 Hình 1.19 Phép toán cut 20 Hình 2.1 Đồ thị minh họa thuật toán Dijkstra 28 Hình 2.2 Đồ thị minh họa thuật toán Bellman-Ford 35 Hình 2.3: Minh hoạ phép toán hợp trên tập mờ 50 Hình 2.4: Minh hoạ phép toán giao trên tập mờ 50 Hình 2.5: Đồ thị mờ G minh hoạ thuật toán FSA 51 Hình 2.6: Các đường đi mờ ngắn nhất của đồ thị mờ G 53 vi Hình 3.1 Sơ đồ phân cấp chức năng 65 Hình 3.2 Bảng dữ liệu 66 Hình 3.3 Giao diện tìm kiếm đường đi ngắn nhất 71 Hình 3.4 Giao diện kết quả tìm kiếm 72 1 MỞ ĐẦU Từ xa xưa, thông tin địa lý đã là nhu cầu cần thiết của mọi người trong mọi sinh hoạt hàng ngày tại những vị trí khác nhau. Mỗi người trong xã hội luôn luôn có nhu cầu cần biết về thế giới thực xung quanh mình. Con người muốn được hiểu biết về các thực thể, các sự kiện, các hiện tượng như thế nào, xảy ra ở đâu, xảy ra khi nào, và tại sao như vậy. Ở quy mô rộng lớn hơn, những nhà lãnh đạo một địa phương, một quốc gia, một khu vực luôn luôn cần có thông tin địa lý một cách đầy đủ, chính xác, kịp thời để ra những quyết sách đúng đắn, phù hợp lòng dân, làm cho địa phương, quốc gia ngày càng phát triển. Những nhà quân sự cần có thông tin địa lý để có những phương án chiến lược, chiến thuật bảo vệ lãnh thổ. Những nhà đầu tư cần thông tin địa lý để tính toán những khả năng và hiệu quả đầu tư, những nhà kinh doanh cần có thông tin địa lý để qui hoạch chiến lược thị trường, làm cho hàng hóa được tiêu thụ nhanh chóng. Những nhà quản lý công trình giao thông đô thị cần thông tin địa lý để cơ cấu lại phương tiện giao thông công cộng theo hướng giảm ách tắc giao thông, tiết kiệm nhiên liệu, giảm ô nhiễm môi trường,… Ngày nay, với sự phát triển của công nghệ thông tin, đặc biệt là từ khi xuất hiện ngành đồ họa vi tính cũng như sự gia tăng vượt bậc những khả năng phần cứng, hệ thống thông tin địa lý (GIS) đã ra đời và phát triển nhanh chóng cả về mặt công nghệ cũng như ứng dụng. Hệ thống thông tin địa lý đã chứng tỏ khả năng ưu việt hơn hẳn các hệ thông tin bản đồ truyền thống nhờ vào khả năng tích hợp thông tin mật độ cao, cập nhật thông tin dễ dàng cũng như khả năng phân tích, tính toán của nó. Do đó, hệ thống thông tin địa lý đã nhanh chóng trở thành một công cụ trợ giúp quyết định cho tất cả các ngành từ quy hoạch đến quản lý, tất cả các lĩnh vực từ tài nguyên thiên nhiên, môi trường, đất đai, hạ tầng kỹ thuật đến xã hội nhân văn. Có thể nói ngày nay 2 không có lĩnh vực nào không có hoặc không thể ứng dụng công nghệ GIS. Cũng chính vì thế, công nghệ thông tin địa lý (công nghệ GIS) được tiếp cận từ nhiều hướng khác nhau và do đó cũng có nhiều định nghĩa khác nhau về GIS. Thuật toán tìm đường đi tối ưu trong GIS, hiện nay đang được triển khai rộng rãi trong các ứng dụng quan trọng trên thực tế như lập kế hoạch vận chuyển, điều khiển giao thông,… Trên đây đã điểm qua tầm quan trọng của hệ thông tin địa lý, đặc biệt là thuật toán tìm đường đi tối ưu trong Gis đã cho ta thấy rõ tính cần thiết cũng như tính thời sự của vấn đề, đồng thời có ý nghĩa khoa học và thực tiễn. Vì thế, tôi đã thực hiện đề tài luận văn: “Thuật toán tìm đường đi tối ưu trong Gis”. Mục tiêu đề tài là tìm hiểu các thuật toán áp dụng trong đồ thị. Đề tài cũng bước đầu xây dựng một chương trình tìm kiếm đường đi tối ưu giúp cho những người tham gia giao thông, hay khách du lịch ở thành phố Hải Phòng chọn được hướng đường đi tối ưu nhất, nhằm tiết kiệm thời gian và công sức. Bố cục của luận văn bao gồm phần mở đầu, phần kết luận và ba chương nội dung được tổ chức như sau: Chương 1: Tổng quan về GIS Chương này trình bày tổng quan về hệ thống thông tin địa lý bao gồm các thành phần, chức năng và các ứng dụng của GIS. Hơn nữa, đề cập đến một số vấn đề về cấu trúc dữ liệu không gian vectơ và các thuật toán liên quan… Chương 2: Một số thuật toán tìm kiếm đường đi tối ưu ứng dụng trong GIS [...]...3 Trong chương này tập trung vào một số thuật toán tìm đường đi ngắn nhất trong đồ thị như thuật toán Dijkstra, thuật toán A*, thuật toán Floyd,… Chương 3: Phát triển chương trình thử nghiệm Trong chương này phát triển ứng dụng về thuật toán tìm đường đi tối ưu trong thực tế Cụ thể là cài đặt và thử nghiệm với thuật toán Floyd để tìm kiếm đường đi có khoảng cách ngắn nhất giữa các đi m đường trên... là cây đường đi ngắn nhất Đường đi duy nhất từ s đến bất kỳ đi m x nào khác nằm trong cây đường đi ngắn nhất là đường đi ngắn nhất từ s đến x Nếu đường đi ngắn nhất từ s đến x trong cây đường đi ngắn nhất đi qua đỉnh y thì phần đường đi từ y đến x này là đường đi ngắn nhất từ y đến x Ngược lại thì tồn tại đường đi khác, thậm chí còn ngắn hơn đường đi từ y đến x, đi u này mâu thuẫn với đường đi ngắn... các chức năng tìm địa đi m cho các công trình ngầm: ống dẫn, đường đi n,…; cân đối tải đi n; lập kế hoạch bảo dưỡng các công trình công cộng… - Phân tích tổng đi u tra dân số, lập bản đồ các dịch vụ y tế, bưu đi n và nhiều ứng dụng khác 24 CHƯƠNG 2 – MỘT SỐ THUẬT TOÁN TÌM ĐƯỜNG ĐI TỐI ƯU ỨNG DỤNG TRONG GIS 2.1 Một số thuật toán cơ sở: Disktra, Floy, A* 2.1.1 Phát biểu bài toán Các thuật toán đồ thị... các cung đơn trong đường đi Với hai đỉnh bất kỳ, s và t trong G, có thể tồn tại nhiều đường đi từ s đến t Bài toán đường đi ngắn nhất bao gồm tìm đường đi từ s đến t sao cho chiều dài nhỏ nhất có thể Bài toán này có thể chia làm hai loại sau:  Tìm đường đi ngắn nhất từ một đỉnh nguồn đến các đỉnh còn lại của đồ thị  Tìm đường đi ngắn nhất giữa mọi cặp đỉnh của đồ thị Với hai loại bài toán này ta có... từ s đến y bằng cách kết nối đường đi ngắn nhất từ s đến x với cung (x, y) cho tất cả các đỉnh x đã được gán nhãn Chọn đường đi ngắn nhất trong k đường đi này và đặt nó là đường đi ngắn nhất từ s đến y Vì vậy, nếu đã biết đỉnh thứ k gần đỉnh s nhất thì đỉnh thứ k+1 có thể được xác định như trên Bắt đầu với k=0, quá trình này có thể lặp đi lặp lại cho đến khi tìm ra đường đi ngắn nhất từ s đến t (tức... x đã tìm ra Vì các cung đã được gán nhãn luôn luôn tạo thành cây nên có thể xem thuật toán này như phát triển một cây có gốc tại đỉnh s Một khi đến được đỉnh t thì có thể kết thúc quá trình phát triển  Mở rộng thuật toán: Nếu muốn tìm đường đi ngắn nhất từ đỉnh s đến mọi đỉnh khác trong đồ thị thì tiếp tục quá trình phát triển cho đến khi tất cả các đỉnh được nằm trong cây đường đi ngắn nhất Trong. .. các đỉnh đã được gán nhãn thì dừng lại vì đường đi duy nhất của các cung đã được gán nhãn từ s đến x là đường đi ngắn nhất từ s đến x với mọi đỉnh x 28 - Ngược lại, trở về bước 2 2.1.2.4 Ví dụ minh họa Tìm đường đi ngắn nhất từ nút s đến nút t trong đồ thị G trong hình 2.1 sau bằng thuật toán Dijkstra: 3 1 2 4 2 7 s t 3 3 3 2 2 4 Hình 2.1 Đồ thị minh họa thuật toán Dijkstra Bước 1: Khởi tạo, d(s) = 0,... ứng dụng GISGIS được thiết kế như một hệ thống chung để quản lý dữ liệu không gian nên có rất nhiều ứng dụng trong các lĩnh vực thường thấy trong thực tế GIS đóng vai trò như là một công cụ hỗ trợ quyết định cho việc lập kế hoạch hoạt động [1] - Quản lý và lập kế hoạch mạng lưới đường phố: bao gồm các chức năng tìm kiếm địa chỉ, tìm vị trí khi biết trước địa chỉ đường phố; đi u khiển đường đi, lập... bài toán như sau: Đầu vào: Cho một đồ thị có hướng có trọng số G = (V, E) (với V: tập đỉnh, E: tập cạnh), một hàm trọng số w: E  [0, ) Đầu ra: Hãy tìm đường đi ngắn nhất giữa hai đỉnh (chẳng hạn (s, t)) trong đồ thị G 25 2.1.2 Thuật toán Dijkstra Thuật toán này do nhà khoa học Hà Lan - ông Edsger Dijkstra đưa ra vào năm 1959 cung cấp nền tảng cơ bản cho thuật toán hữu hiệu nhất để giải quyết bài toán. .. nền tảng cơ bản cho thuật toán hữu hiệu nhất để giải quyết bài toán này Thuật toán Dijkstra được thiết kế dựa trên kỹ thuật tham ăn để giải quyết bài toán tìm đường đi ngắn nhất từ một đỉnh nguồn trong đồ thị có hướng với trọng số không âm Thuật toán Dijkstra hoạt động dựa trên việc gán nhãn cho các đỉnh 2.1.2.1 Phát biểu bài toán Đầu vào: Cho một đồ thị có hướng G = (V, E) (với V: tập đỉnh, E: tập . thuật toán liên quan… Chương 2: Một số thuật toán tìm kiếm đường đi tối ưu ứng dụng trong GIS 3 Trong chương này tập trung vào một số thuật toán. thực hiện đề tài luận văn: Thuật toán tìm đường đi tối ưu trong Gis . Mục tiêu đề tài là tìm hiểu các thuật toán áp dụng trong đồ thị. Đề tài cũng bước

Ngày đăng: 05/03/2014, 10:30

Hình ảnh liên quan

Cỏc bảng chứa dữ liệu mà mong muốn hiển thị lờn bản đồ. Bảng bao gồm  cỏc  dũng  và  cỏc  cột  chứa  thụng  tin  mụ  tả  cỏc  thuộc  tớnh  bản  đồ  (feature) như là về hỡnh học, về cỏc kiểu, về cỏc thuộc tớnh (attribute) - thuật toán tìm đường đi tối ưu trong gis

c.

bảng chứa dữ liệu mà mong muốn hiển thị lờn bản đồ. Bảng bao gồm cỏc dũng và cỏc cột chứa thụng tin mụ tả cỏc thuộc tớnh bản đồ (feature) như là về hỡnh học, về cỏc kiểu, về cỏc thuộc tớnh (attribute) Xem tại trang 69 của tài liệu.

Từ khóa liên quan

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

Tài liệu liên quan