Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 84 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
84
Dung lượng
1,07 MB
Nội dung
i Đạ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 tối -u GIS Luận văn thạc sĩ CÔng ngHệ THÔNG TIN Thái Nguyên - 2010 S húa bi Trung tõm Hc liu i hc Thỏi Nguyờn http://www.lrc-tnu.edu.vn ii Đạ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 tối -u 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 S húa bi Trung tõm Hc liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn iii ỜI CAM ĐOAN Tơi xin cam đoan luận văn “Thuật tốn tìm đƣờng tối ƣu GIS” cơng trình nghiên cứu dƣới hƣớng dẫn khoa học PGS.TS Đặng Văn Đức, tham khảo nguồn tài liệu đƣợc rõ trích dẫn danh mục tài liệu tham khảo Các nội dung công bố kết trình bày luận văn trung thực chƣa đƣợc công bố cơng trình Thái Ngun, tháng 10 năm 2010 Phạm Thị Hằng Nga Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn iv 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ó bảo cần thiết để giúp đỡ tơi suốt trình nghiên cứu phát triển luận văn Xin chân thành cảm ơn quý Thầy cô 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 kiến thức quý báu suốt thời gian học tập trường Xin chân thành cảm ơn bạn lớp, đồng nghiệp đơn vị nơi công tác tạo điều kiện cho tơi hồn thành luận văn Xin gửi lời cảm ơn tới gia đình tơi động viên tơi suốt q trình học hồn thành luận văn Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn v MỤC LỤC LỜI CAM ĐOAN iii MỞ ĐẦU CHƢƠNG - TỔNG QUAN VỀ GIS 1.1 Định nghĩa, thành phần, chức GIS 1.1.1 Định nghĩa 1.1.2 Các thành phần 1.1.3 Chức Gis 12 1.2 Cấu trúc liệu khơng gian véctơ thuật tốn liên quan 14 1.2.1 Các thành phần liệu 14 1.2.2 Các phép tốn phân tích khơng gian mơ hình Vector 18 1.3 Các ứng dụng GIS 22 CHƢƠNG – MỘT SỐ THUẬT TỐN TÌM ĐƢỜNG ĐI TỐI ƢU ỨNG DỤNG TRONG GIS 24 2.1 Một số thuật toán sở: Disktra, Floy, A* 24 2.1.1 Phát biểu 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ờ tìm đƣờng tối ƣu 46 2.2.1 Giới thiệu Logic mờ 46 2.2.2 Ứng dụng logic mờ tìm đường tối ưu 51 2.3 Nhận xét đánh giá 53 CHƢƠNG – PHÁT TRIỂN CHƢƠNG TRÌNH THỬ NGHIỆM 57 3.1 Giới thiệu toán tìm đƣờng tối ƣu 57 3.1.1 Lý xây dựng chương trình 57 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn vi 3.1.2 Mục tiêu, nhiệm vụ chương trình 57 3.2 Các công nghệ sử dụng 58 3.2.1 MapInfo Professional 58 3.2.2 Thư viện hỗ trợ xây dựng ứng dụng đồ MapXtreme 61 3.2.3 Hệ quản trị sở liệu Access 65 3.2.4 Ngôn ngữ lập trình Microsoft Visual C#.NET 65 3.3 Thiết kế, lập trình hệ thống demo 66 3.3.1 Thiết kế 66 3.3.2 Lập trình demo 68 3.4 Đánh giá kết thu đƣợc 73 KẾT LUẬN 73 HƢỚNG PHÁT TRIỂN 74 TÀI LIỆU THAM KHẢO 75 Số hóa Trung tâm Học liệu – Đại học Thái Ngun http://www.lrc-tnu.edu.vn vii DANH MỤC HÌNH VẼ Hình 1.1 Hệ thống thông tin tin địa lý Hình 1.2 Tầng đồ Hình1.3 Các hoạt động GIS Hình 1.4 Các thành phần GIS Hình 1.5 Phần cứng GIS 11 Hình 1.6 Phần mềm GIS 12 Hình 1.7 Các nhóm chức GIS 13 Hình 1.8 Các thành phần hình họ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 cấu trúc sở liệu đồ 17 Hình 1.13 Phép tốn Buffer 18 Hình 1.14 Phép tốn Difference 18 Hình 1.15 Phép tốn Clip 19 Hình 1.16 Phép tốn Intersect 19 Hình 1.17 Phép tốn Convex hull 20 Hình 1.18 Phép toán Symmetric difference 20 Hình 1.19 Phép tố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 tốn Bellman-Ford 35 Hình 2.3: Minh hoạ phép toán hợp tập mờ 50 Hình 2.4: Minh hoạ phép toán giao tập mờ 51 Hình 2.5: Đồ thị mờ G minh hoạ thuật toán FSA 51 Hình 2.6: Các đƣờng mờ ngắn đồ thị mờ G 53 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn viii Hình 3.1 Sơ đồ phân cấp chức 66 Hình 3.2 Bảng liệu 67 Hình 3.3 Giao diện tìm kiếm đƣờng ngắn 72 Hình 3.4 Giao diện kết tìm kiếm 73 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn MỞ ĐẦU Từ xa xƣa, thông tin địa lý nhu cầu cần thiết ngƣời sinh hoạt hàng ngày vị trí khác Mỗi ngƣời xã hội ln ln có nhu cầu cần biết giới thực xung quanh Con ngƣời muốn đƣợc hiểu biết thực thể, kiện, tƣợng nhƣ nào, xảy đâu, xảy nào, nhƣ Ở quy mô rộng lớn hơn, nhà lãnh đạo địa phƣơng, quốc gia, khu vực ln ln cần có thơng tin địa lý cách đầy đủ, xác, kịp thời để sách đắn, phù hợp lòng dân, làm cho địa phƣơng, quốc gia ngày phát triển Những nhà qn cần có thơng tin địa lý để có 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 tốn khả hiệu đầu tƣ, 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ấ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 phát triển công nghệ thông tin, đặc biệt từ xuất ngành đồ họa vi tính nhƣ gia tăng vƣợt bậc khả phần cứng, hệ thống thông tin địa lý (GIS) đời phát triển nhanh chóng mặt cơng nghệ nhƣ ứng dụng Hệ thống thông tin địa lý chứng tỏ khả ƣu việt hẳn hệ thông tin đồ truyền thống nhờ vào khả tích hợp thông tin mật độ cao, cập nhật thông tin dễ dàng nhƣ khả phân tích, tính tốn Do đó, hệ thống thơng tin địa lý nhanh chóng trở thành cơng cụ trợ giúp định cho tất ngành từ quy hoạch đến quản lý, tất 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 Số hóa Trung tâm Học liệu – Đại học Thái Ngun http://www.lrc-tnu.edu.vn khơng có lĩnh vực khơng có khơng thể ứng dụng cơng nghệ GIS Cũng 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 có nhiều định nghĩa khác GIS Thuật tốn tìm đƣờng tối ƣu GIS, đƣợc triển khai rộng rãi ứng dụng quan trọng thực tế nhƣ lập kế hoạch vận chuyển, điều khiển giao thông,… Trên điểm qua tầm quan trọng hệ thông tin địa lý, đặc biệt thuật tốn tìm đƣờng tối ƣu Gis cho ta thấy rõ tính cần thiết nhƣ tính thời vấn đề, đồng thời có ý nghĩa khoa học thực tiễn Vì thế, tơi thực đề tài luận văn: “Thuật tốn tìm đường tối ưu Gis” Mục tiêu đề tài tìm hiểu thuật tốn áp dụng đồ thị Đề tài bƣớc đầu xây dựng chƣơng trình tìm kiếm đƣờng tối ƣu giúp cho 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 tối ƣu nhất, nhằm tiết kiệm thời gian công sức Bố cục luận văn bao gồm phần mở đầu, phần kết luận ba chƣơng nội dung đƣợc tổ chức nhƣ sau: Chƣơng 1: Tổng quan GIS Chương trình bày tổng quan hệ thống thông tin địa lý bao gồm thành phần, chức ứng dụng GIS Hơn nữa, đề cập đến số vấn đề cấu trúc liệu khơng gian vectơ thuật tốn liên quan… Chƣơng 2: Một số thuật tốn tìm kiếm đƣờng tối ƣu ứng dụng GIS Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 62 - Triển khai ứng dụng môi trƣờng Desktop: MapXTreme hỗ trợ hồn tồn cho ngơn ngữ Microsoft.NET nhƣ: Visual Basic.NET, C#.NET Visual C++ - Triển khai ứng dụng mơi trƣờng Web: sử dụng tất ngôn ngữ NET nhƣ: ASP.NET Các thành phần MapXtreme Product framework Development Environment Tools Development Environment Tools Full Mapping and Analytical capabilities Scalable Infrastructure Runtime Deployment Extensive Documentation Những khái niệm liên quan đến đồ Map Bản đồ hiển thị mối quan hệ không gian thuộc tính đồ nhƣ đƣờng biên thành phố, vị trí khách hàng … Thêm vào thuộc tính element đồ bao gồm label, title, legend theme Trong MapXtreme 2005, MapControl.MapControl chứa đồ cung cấp số công cụ việc hiển thị đồ nhƣ : phóng to, thu nhỏ (pan, zoom in, zoom out, …) Bạn tạo đồ từ bảng cách sử dụng MapFactory Đây class nằm namespace MapInfo.Mapping Table Các bảng chứa liệu mà mong muốn hiển thị lên đồ Bảng bao gồm dịng cột chứa thơng tin mơ tả thuộc tính đồ (feature) nhƣ hình học, kiểu, thuộc tính (attribute) Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 63 MapXtreme 2005 hỗ trợ bảng từ nguồn khác nhƣ: RDBMS, MapInfo TAB, dBase, MS Access… Thông tin đƣợc thể thông qua class TableInfo Các bảng đƣợc mở đóng thơng qua class Catolog namespace MapInfo.Data Layer Bản đồ đƣợc tạo nên từ lớp (layer) Lớp chứa thuộc tính đồ nhƣ mạng lƣới đƣờng phố, trƣờng học … Thứ tự lớp đƣợc vẽ nhƣ sau: lớp nằm dƣới lớp đƣợc vẽ trƣớc tiên lớp lớp đƣợc vẽ cuối Lớp MapXtreme 2005 mơ tả nhiều thuộc tính Các lớp đƣợc nhóm lại để việc định vị dễ dàng hơn, thuộc tính đồ sinh động Feature Các thuộc tính đồ đƣợc mơ tả tính chất hình học, kiểu dáng, nguồn liệu, khố (key), thuộc tính khác Một thuộc tính đồ dịng bảng Các đối tƣợng hình học đƣợc hỗ trợ nhƣ đa giác, điểm đƣờng thẳng Class Feater đƣợc chứa namespace MapInfo Data Label legend Nếu đồ khơng có element dùng để mơ tả hiển thị đồ khơng thật hữu dụng Các element dùng để mơ tả label legend Các label gắn vào loại layer gọi LabelLayer Các class MapXtreme 2005 làm việc với label LabelSource, LabelProperties LabelModifiers Trong MapXtreme 2005, legend phần class Adornments đƣợc chứa namespace MapInfo Mapping Theme Bản đồ máy tính khơng hữu dụng cho việc hiển thị mối quan hệ khơng thuộc tính đồ mà bạn cịn phân tích liệu có liên quan đến thuộc tính đồ Kỹ thuật phân tích phổ Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 64 biến tạo theme dựa vào lớp thuộc tính đồ mà liệu đƣợc xếp cách đặc biệt Ví dụ nhƣ sử dụng Range theme dùng để hiển thị khối màu mà màu mơ tả cho thuộc tính đồ sử dụng Graduated symbol theme để hiển thị mật độ dân số Tool Hầu hết ứng dụng đồ cung cấp công cụ với nút để thực công việc nhƣ vẽ, định hƣớng … Một số công cụ đồ: công cụ hiển thị, công cụ chọn, công cụ thêm thuộc tính, cơng cụ khác Workspace MapXtreme 2005 hỗ trợ định dạng XML-based workspace mà có sử dụng phần mở rộng MWS Coordinate system projection Đây hai khái niệm quan đồ Projection liên quan đến việc làm đồ đƣợc hiển thị bề mặt phẳng nhƣ trang giấy đồ hình máy tính, cịn Coordinate system mơ tả thuộc tính đồ đƣợc xếp không gian nhƣ Một Projection phƣơng thức làm giảm méo mó xuất đối tƣợng từ bề mặt hình cầu sang đƣợc hiển thị bề mặt phẳng Một Coordinate system tập hợp tham số mà cho bạn biết làm để hiểu vị trí tọa độ đối tƣợng Có hai loại tọa độ: toạ độ hình cầu toạ độ Đề-các Toạ độ hình cầu liên quan đến vị trí bề mặt cong trái đất, tọa độ Đề-các mơ tả vị trí bề mặt phẳng theo hai hƣớng Cả hai đƣợc biểu diễn hai đại lƣợng x y nhƣng loại tọa độ có cách tính khoảng cách khác Biết hệ thống tọa độ đồ giúp cho việc phát triển ứng dụng Các class Coordinate system Projection phần namespace MapInfo.Geometry Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 65 3.2.3 Hệ quản trị sở liệu Access Microsoft Access trở thành phần mềm sở liệu mạnh mẽ, liên tục phát triển sở liệu thông dụng máy đơn - nơi mà hầu hết sử dụng hệ điều hành Windows Trong phần tìm hiểu lựa chọn phần mềm việc đề cập tách biệt công cụ thao tác đồ họa hệ sở liệu theo cấu chức năng, nhƣng thực tế việc quản trị lƣu trữ đồng (với Geomedia) thân liệu đồ họa nằm sở liệu quan hệ, liên kết lỏng thông qua số phần tử đồ hoạ (với MapInfo) Microsoft Access hệ quản trị sở liệu quan hệ chạy môi trƣờng Windows (XP, NT, 2000, 98, 95), có khả chia sẻ bảo mật liệu Microsoft Access đƣợc sử dụng phổ biến hệ sở liệu vừa nhỏ tính ƣu việt, mạnh mẽ, tƣơng đối dễ sử dụng… Đặc điểm lƣu ý Microsoft Access có trƣờng liệu kiểu OLE cho phép phần mềm sử dụng khuôn dạng liệu lƣu trữ đồng thời liệu khơng gian liệu thuộc tính 3.2.4 Ngơn ngữ lập trình Microsoft Visual C#.NET Microsoft NET tảng cho việc xây dựng thực thi ứng dụng phân tán hệ Ngôn ngữ C# ngôn ngữ đƣợc dẫn xuất từ C C++ nhƣng đƣợc tạo từ tảng phát triển Microsoft bắt đầu với công việc C C++ thêm vào đặc tính để làm cho ngôn ngữ dễ sử dụng Nhiều số đặc tính giống với đặc tính có ngơn ngữ Java Ngơn ngữ C# đơn giản, khoảng 80 từ khóa mƣời kiểu liệu đƣợc xây dựng sẵn Ngôn ngữ loại bỏ vài phức tạp rối rắm ngôn ngữ nhƣ Java C++, bao gồm việc loại bỏ macro, template, đa kế thừa lớp sở ảo Tuy nhiên, ngôn ngữ C# có ý nghĩa cao thực thi khái niệm lập trình đại C# bao gồm tất hỗ trợ cho cấu trúc, thành phần component, lập trình hƣớng đối tƣợng Những tính chất diện ngơn ngữ lập trình đại Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 66 ngôn ngữ C# hội đủ điều kiện nhƣ vậy, đƣợc xây dựng tảng hai ngôn ngữ mạnh C++ Java Visual C# 2008 NET phiên Visual, có nhiều kỹ mở rộng khả ứng dụng Dựa yêu cầu, mục tiêu đặt ra, đề tài sử dụng sản phẩm MapXtreme 6.6 dựa môi trƣờng phát triển Visual C# NET 2008 đủ đáp ứng đƣợc việc xây dựng chƣơng trình ứng dụng GIS với chức tìm kiếm vị trí tra cứu thơng tin tuyến đƣờng 3.3 Thiết kế, lập trình hệ thống demo 3.3.1 Thiết kế Sơ đồ phân cấp chức BẢN ĐỒ SỐ Cập nhật liệu Tìm kiếm Xem đồ Đường ngắn Phóng to Tuyến phố Thu nhỏ Địa danh Hình 3.1 Sơ đồ phân cấp chức Xem đồ Cho phép đồ hiển thị dạng tổng thể toàn cửa sổ chƣơng trình Khi ngƣời dùng chọn chức này, hệ thống truy cập sở liệu hiển thị toàn đồ cho ngƣời dùng Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 67 Phóng to, thu nhỏ đồ Là cách thức ngƣời dùng phóng to hay thu nhỏ phần không gian hiển thị đồ Hệ thống truy cập sở liệu lấy phần thông tin không gian cho ngƣời dùng Địa danh: Hiển thị địa danh có đồ thành phố Hải Phòng Tuyến phố: Hiển thị tên tuyến phố đồ Đƣờng ngắn nhất: Hiển thị kết đƣờng tìm đƣợc Tìm kiếm: đƣa yêu cầu tìm kiếm địa danh hya tuyến phố Cập nhật liệu: Dữ liệu đƣợc cập nhật nhờ chức có thay đổi đồ Bảng liệu Trong chƣơng trình sử dụng hai lớp đồ với ý nghĩa nhƣ sau: Lớp điểm: gồm tất điểm danh tuyến phố Hải Phòng Lớp Đƣờng: bao gồm lộ trình theo tuyến phố Hình 3.2 Bảng liệu Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 68 3.3.2 Lập trình demo 3.3.1.1 Cài đặt Chƣơng trình đƣợc phát triển cách sử dụng công cụ MapXtreme v6.6 nhúng môi trƣờng Visual C# NET Chƣơng trình chạy hệ điều hành Window XP Máy tính tốc độ 1,73 GHz, nhớ 512MB RAM 3.3.1.2 Môđun tim đường ngắn Ký hiệu: Start, stop điểm bắt đầu điểm kết thúc d(x,y): Là khoảng cách từ x đến y min(x,y): Là khoảng cách ngắn từ x đến y path(x,y): Là đƣờng ngắn từ x đến y minPath(x,y): Là đƣờng ngắn từ x đến y Trường hợp 1: Cả Start, stop điểm rẽ: stop Start → Kết có sau chạy thuật toán Floyd: Trường hợp 2: Start điểm rẽ, stop không điểm rẽ: Start Path1,w1 Đầu Path2,w2 stop D1,p1 D2,p2 Cuối Thực tính tốn: Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 69 w1 = min(start,Dau) path1 = minPath(start,Dau) w2 = min(start,Cuoi) path2 = minPath(start,Cuoi) So sánh: if w1 + d1 > w2 + d2 { min(start,stop):=w2 + d2; minPath(start,stop):=path2 +d2; } else { min(start,stop):=w1 + d1; minPath(start,stop):=path1 +d1; } Trường hợp 3: Start điểm rẽ, stop không điểm rẽ: Đầu Cuối Start D1,p1 Path1,w1 D2,p2 Path2,w2 stop Thực tính tốn: w1 = min(stop,Dau) path1 = minPath(stop,Dau) w2 = min(stop,Cuoi) path2 = minPath(stop,Cuoi) So sánh: Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 70 if w1 + d1 > w2 + d2 { min(start,stop):=w2 + d2; minPath(start,stop):=path2 +d2; } else { min(start,stop):=w1 + d1; minPath(start,stop):=path1 +d1; } Trường hợp 4: Start, stop không điểm rẽ: Đầu Cuối Start Path1,w1 Path2,w2 D1,p1 Đầu D2,p2 Cuối stop Thực tính tốn: w1 = minTH3(stop,Dau) //min trƣờng hợp path1 = minPathTH3(stop,Dau) //minPath trƣờng hợp w2 = minTH3(stop,Cuoi) //minTH3 trƣờng hợp path2 = minPathTH3(stop,Cuoi) //minPath trƣờng hợp So sánh: if w1 + d1 > w2 + d2 { min(start,stop):=w2 + d2; minPath(start,stop):=path2 +d2; } Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 71 else { min(start,stop):=w1 + d1; minPath(start,stop):=path1 +d1; } Giả sử đƣờng từ P1 → P2 → P3 P1(x1,y1) P1(x2,y2) P1(x3,y3) P1(x3,y3) Trái P1(x1,y1) P1(x2,y2) Phải P1(x3,y3) if (x1 < x2) { P3 nằm dƣới → rẽ phải P3 nằm → rẽ trái } else { P3 nằm dƣới → rẽ trái P3 nằm → rẽ phải } Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 72 P1(x3,y3) Trái P1(x1,y1) P1(x2,y2) Phải P1(x3,y3) 3.3.1.3 Chương trình demo Chƣơng trình “Tìm kiếm đƣờng ngắn hai tuyến đƣờng hay địa danh thành phố Hải Phịng” chạy mơi trƣờng WinXP ổn định Giao diện chƣơng trình Ký Tơn Thất Thuyết Quang Trung Lãn Ông Lý Thƣờng Kiệt Phan Bội Châu Trạng Trình Hình 3.3 Giao diện tìm kiếm đường ngắn Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 73 Kết tìm kiếm Hình 3.4 Giao diện kết tìm kiếm 3.4 Đánh giá kết thu đƣợc Chƣơng trình cài đặt thuật tốn tìm đƣờng ngắn Floyd để tìm đƣờng Chƣơng trình xác định đƣợc tuyến đƣờng hai điểm cho khoảng cách ngắn Kết tuyến đƣờng hiển thị trực quan đồ đƣa tổng chiều dài đƣờng ngắn Ngƣời sử dụng truy vấn trực tiếp đồ nhập điểm điểm đến Trong thực tế, đƣờng có khoảng cách ngắn chƣa tối ƣu để lựa chọn đƣờng phố đơng đúc thời gian lâu Giao diện chƣơng trình thân thiện, dễ sử dụng Chƣơng trình đáp ứng đƣợc bƣớc đầu yêu cầu đặt thực tế Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 73 KẾT LUẬN Ngày nay, GIS đƣợc xem công nghệ nhất, có nhiều ứng dụng việc giải toán thực tế hầu hết lĩnh vực kinh tế - xã hội loài ngƣời Bên cạnh đó, việc sử dụng GIS để phân tích khơng gian hƣớng tiềm việc ứng dụng GIS giải vấn đề thực tế Một số ứng dụng phân tích khơng gian lập phƣơng án vận chuyển, tức tìm kiếm phƣơng án tối ƣu cho toán thực tế Trong khuôn khổ luận văn thu đƣợc số kết sau đây: Trình bày tổng quan hệ thông tin địa lý, cấu trúc liệu khơng gian vectơ thuật tốn liên quan Tìm hiểu phân tích, đánh giá số thuật tốn, cụ thể thuật tốn tìm đƣờng ngắn đồ thị nhƣ thuật toán Dijkstra, thuật tốn A*, thuật tốn Floyd,… Tìm hiểu cơng cụ phần mềm hỗ trợ GIS nhƣ MapInfo, MapXtreme Cài đặt thử nghiệm thuật toán Floyd hệ thống “Tìm kiếm đƣờng ngắn hai tuyến đƣờng hay địa danh thành phố Hải Phòng” với thành công bƣớc đầu xác định đƣợc lộ trình nhanh Một vấn đề cịn tồn chƣa đánh giá đƣợc thời gian thực chƣơng trình thuật toán Floyd - 73 - 74 HƢỚNG PHÁT TRIỂN Xây dựng hệ thống chƣơng trình “Tìm kiếm đƣờng ngắn hai tuyến đƣờng hay địa danh thành phố Hải Phịng” có giao diện thuận tiện hơn, thực nhiều chức Thu thập thêm sở liệu lớp đồ thành phố Hải Phòng để xây dựng đồ tuyến đƣờng Hải Phòng chi tiết sống động Tiếp tục cài đặt thuật tốn cịn lại trình bày luận văn Mặc dù cố gắng, nỗ lực nhƣng thời gian trình độ có hạn chế định nên luận văn khơng tránh khỏi thiếu sót Trong tƣơng lai, em cố gắng hoàn thiện hạn chế phát triển vấn đề nêu trên, để mang lại kết khả quan Rất mong nhận đƣợc đóng góp ý kiến thầy bạn để luận văn ngày hoàn thiện - 74 - 75 TÀI LIỆU THAM KHẢO Tiếng Việt Đặng Văn Đức (2001), “Hệ thống thông tin địa lý”, NXB Khoa học kỹ thuật, Hà Nội Đinh Mạnh Tƣờng (2003), “Cấu trúc liệu thuật toán”, NXB Khoa học kỹ thuật, Hà Nội Kenneth H.Rosen (2000), “Toán học rời rạc ứng dụng tin học”, tr.494-711, NXB Khoa học kỹ thuật, Hà Nội Robert Sedgewick (1995), “Cẩm nang thuật toán”, tập 2, tr.81-186, NXB Khoa học kỹ thuật, Hà Nội Tiếng Anh Petrik S., Mandarasz L., Adam N., Vokorokos L., Application of Shortest Path Algorithm to GIS using Fuzzy Logic, 4th International Symposium of Hungarian Researchers on Computational Intelligence, Budapest, Hungary 2003 Shashi Shekhar, Sanjay Chawla, Spatial Database: A Tour, Pearson Education, Inc., Upper Saddle River, New Jersey, USA, 2003 Philip Rigaux, Michel Scholl, Agnès Voisard (2002), Spatial Databases with application to GIS, Academic Press, USA Website Võ Quang Minh, Cấu trúc sở liệu GIS , http://www.scribd.com/doc/4938563/Cu-truc-c-s-d-liu-trong-GIS Phạm Ngọc Hà, Các mơ hình liệu GIS , http://my.opera.com/hapn2/blog/show.dml/2307750 - 75 - ... – MỘT SỐ THUẬT TỐN TÌM ĐƢỜNG ĐI TỐI ƢU ỨNG DỤNG TRONG GIS 2.1 Một số thuật toán sở: Disktra, Floy, A* 2.1.1 Phát biểu toán Các thuật toán đồ thị tiếng xác định đƣờng “ngắn nhất” hai đi? ?̉m A và... tơi thực đề tài luận văn: ? ?Thuật tốn tìm đường tối ưu Gis? ?? Mục tiêu đề tài tìm hiểu thuật toán áp dụng đồ thị Đề tài bƣớc đầu xây dựng chƣơng trình tìm kiếm đƣờng tối ƣu giúp cho ngƣời tham gia... http://www.lrc-tnu.edu.vn Trong chương tập trung vào số thuật tốn tìm đường ngắn đồ thị 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 phát