Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 89 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
89
Dung lượng
1,75 MB
Nội dung
ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA TRẦN THỊ NHƯ NGUYỆT XÂY DỰNG GIẢI THUẬT XÁC ĐỊNH ĐƯỜNG ĐI NGẮN NHẤT TRÁNH VẬT CẢN CHO THIẾT BỊ KHÔNG NGƯỜI LÁI Chuyên ngành: Khoa Học Máy Tính Mã số: 6048 LUẬN VĂN THẠC SĨ TP HỒ CHÍ MINH, tháng 11, năm 2011 Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị khơng người lái CƠNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐHQG – HCM Cán hướng dẫn khoa học: TS Trần Văn Hoài Cán chấm nhận xét 1: Cán chấm nhận xét 2: Luận văn thạc sĩ bảo vệ Trường Đại học Bách Khoa, ĐHQG Tp HCM ngày 09 tháng 11 năm 2011 Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm: TS Đinh Đức Anh Vũ TS Nguyễn Anh Thi TS Vũ Đức Lung TS Trần Văn Hoài TS Lê Thanh Vân Xác nhận Chủ tịch Hội đồng đánh giá LV Trưởng Khoa quản lý chuyên ngành sau luận văn sửa chữa (nếu có) CHỦ TỊCH HỘI ĐỒNG TRƯỞNG KHOA………… TS Đinh Đức Anh Vũ Trang Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái ĐẠI HỌC QUỐC GIA TP.HCM TRƯỜNG ĐẠI HỌC BÁCH KHOA CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự - Hạnh phúc NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên: Trần Thị Như Nguyệt MSHV: 09070454 Ngày, tháng, năm sinh: 31/08/1985 Nơi sinh: Trà Vinh Chuyên ngành: Khoa học máy tính Mã số : 6048 I TÊN ĐỀ TÀI: Xây dựng giải thuật xác định đường ngắn tránh vật cản cho thiết bị không người lái II NHIỆM VỤ VÀ NỘI DUNG: III NGÀY GIAO NHIỆM VỤ : (Ghi theo QĐ giao đề tài) IV NGÀY HOÀN THÀNH NHIỆM VỤ: (Ghi theo QĐ giao đề tài) V CÁN BỘ HƯỚNG DẪN (Ghi rõ học hàm, học vị, họ, tên): TS Trần Văn Hoài Tp HCM, ngày 21 tháng 11 năm 2011 CÁN BỘ HƯỚNG DẪN CHỦ NHIỆM BỘ MÔN ĐÀO TẠO (Họ tên chữ ký) (Họ tên chữ ký) TRƯỞNG KHOA….……… (Họ tên chữ ký) Trang Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái Trang Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái Trang Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái Trang Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái LỜI CẢM ƠN Tôi xin gởi lời cảm ơn chân thành sâu sắc đến TS Trần Văn Hoài, người Thầy tận tình hướng dẫn tơi suốt trình thực luận văn cao học tạo điều kiện để tơi hồn thành luận văn Tôi xin gởi lời cảm ơn đến khoa Kỹ Thuật Máy Tính, Đại học Cơng Nghệ Thơng Tin, Đại học Quốc Gia TP.HCM thầy khoa, nơi mà tơi gắn bó suốt ba năm vừa qua, góp ý tạo điều kiện thuận lợi cho suốt thời gian làm luận văn Tơi xin cảm ơn gia đình động viên tạo điều kiện tốt để tơi theo đuổi việc học tập nghiên cứu Tơi gởi lịng tri ân đến tất bạn bè, người động viên, thăm hỏi giúp đỡ thiết thực giúp tơi hồn tất luận văn Trang Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị khơng người lái TĨM TẮT LUẬN VĂN Tóm tắt Bài tốn tìm đường (path planning) áp dụng nhiều lĩnh vực sinh tin học, CAD/CAM, layout, xử lý ảnh … đặc biệt nhiều lĩnh vực robot Mục đích tốn tìm đường tốt theo tiêu chuẩn tối ưu cho đối tượng di chuyển dọc theo đường từ điểm bắt đầu đến điểm kết thúc không va vào vật cản đường môi trường hai nhiều chiều Điểm kết thúc vật cản mơi trường tĩnh (vị trí cố định biết trước) động (vị trí khơng biết trước di động) Trong mơi trường tĩnh, tốn tìm đường phát triển chủ yếu theo hướng: dựa tìm kiếm (Search-based), dựa lấy mẫu (Sampling-based) tìm đường tổ hợp (Combinatorial planning) Trong Combinatorial planning, xây dựng đồ thị chứa tập đường (visibility graph) phần tồn tiến trình, mặt lý thuyết độ phức tạp tốt giai đoạn đạt θ(nlogn) Tuy nhiên, với vài ứng dụng thực tế, ví dụ mơi trường với nhiều vật cản, không gian môi trường lớn, tính visibility graph tiêu tốn nhiều thời gian Luận văn mô tả hai phương pháp: phương pháp tiền xử lý gom nhóm vật cản phương pháp chia vùng khơng gian, song song hóa cơng việc tính tốn giúp giảm thời gian tính tốn đáng kể áp dụng visibility graph cho tốn tìm đường Với tập lớn môi trường chứa vật cản sinh cách ngẫu nhiên để kiểm chứng, kết thực nghiệm cho thấy thời gian tính tốn giảm xấp xỉ ba lần áp dụng phương pháp Thêm vào đó, mơ hình kiểm thử áp dụng robot thật thực để kiểm tra tính khả thi giải thuật Trang Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái Abstract Path planning has applied in many fields such as bioinformatics, CAD/CAM, layout, image processing and especially in robotics Its target is to find out the best path with respect to some optimization criteria in order that an object can move along the path from a starting point to an ending point in two or higher dimension spaces avoiding a set of obstacles Path planning mainly follows three approaches: search-based, sampling-based and combinatorial planning In combinatorial planning, building a visibility graph is a main phase in the whole process and theoretically it takes θ(nlogn).However, with some practical applications, for example one which has a large number of obstacles, this phase is very time-consuming This thesis describes a simple and efficient preprocessing technique to reduce computation time when applying the visibility graph approach for path planning in case of many tiny obstacles and a parallel method based on dividing work space With a large set of randomly generated test problems, the experiment result shows that the computation time gets approximately a reduction factor of one-third In additional, a real robot is used to prove the feasibility of the algorithm Trang Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái LỜI CAM ĐOAN Tôi cam đoan rằng, ngoại trừ kết tham khảo từ cơng trình ghi rõ luận văn, cơng việc trình bày luận văn tơi thực chưa có phần nội dung luận văn nộp để lấy cấp trường trường khác Ngày 23 tháng 10 năm 2011 Trần Thị Như Nguyệt Trang 10 Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái 7.3 Hiện thực 7.3.1 Môi trường đối tượng cụ thể sử dụng kiểm tra Môi trường: mơi trường kiểm tra thơng thường có hai dạng, kiểm tra robot di chuyển ngồi trời phịng thí nghiệm Việc kiểm tra robot di chuyển trời chủ yếu tập trung vào vấn đề xử lý tác động điều kiện ngồi (như sức gió, độ bám mặt đường chuyển …) Trong phạm vi đề tài này, kiểm tra tập trung chủ yếu vào tính khả thi giải thuật tìm đường, nên mơi trường kiểm tra thực phịng thí nghiệm Đối tượng cụ thể sử dụng kiểm tra: Một labtop sử dụng cho phần tính tốn giải thuật Robot di chuyển dùng LegoMindstorm NXT 2.0, robot sử dụng hoạt động xe, gồm hai bánh di chuyển Giao tiếp laptop robot giao tiếp thông qua Bluetooth 7.3.2 Hiện thức hoạt động mơ hình kiểm tra Như thiết kế trình bày phần 3.2, mơ hình kiểm tra hoạt động máy tính robot a Chương trình tính đường ngắn robot Vị trí vật cản mơi trường hoạt động robot nhập vào file Chương trình tính đường ngắn đọc file input, sau q trình tính tốn thực hiện, output tập đường ngắn từ điểm đầu đến điểm đích tránh vật cản lưu lại file Chương trình sử dụng thư viện LEDA, thư viện chứa nhiều cấu trúc liệu hỗ trợ cho hình học tính tốn, để thể giao diện môi trường hoạt động dạng 2D giúp người sử dụng đưa input vào, quan sát tiến trình, kết giải thuật cách hình ảnh, dễ dàng Khi chương trình bắt đầu, giao diện hình 7.2 ra, tương ứng mơi trường hoạt động robot, để người sử dụng vẽ vật cản, điểm bắt đầu điểm kết thúc mong muốn Nếu vật cản đưa vào có sẵn tọa độ, cần điển thơng tin vào file hình 7.3, chương trình tự động đọc file (.gw) biểu diễn thành hình ảnh hình 7.4 Khi chạy, tiến trình tạo visibility graph tìm đường dẫn ngắn từ điểm đầu đến điểm cuối robot thể cách hình ảnh giao diện để theo dõi dễ dàng Kết đường ngắn đường tô đỏ/đậm hình 7.4 kết đồng thời lưu lại file output để truyền cho robot Trang 75 Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị khơng người lái Hình Giao diện mơ 2D mơi trường chưa vật cản Hình Ví dụ file gw thư viện LEDA hỗ trợ tạo đồ thị Trang 76 Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị khơng người lái Hình Hình ảnh tìm đường di ngắn chương trình demo b Chương trình điều khiển, giao tiếp với robot Một chương trình điều khiển robot thực máy tính Chương trình điều khiển đọc file chứa đường ngắn truyền liệu đường tới cho robot thơng qua Bluetooth Chương trình điều khiển sử dụng C# Microsoft Robotics Developer Studio (MRDS) Chương trình nhận input đầu vào output đầu chương trình tìm đường ngắn trình bày 3.3.2.1 File cho robot biết chuỗi tọa độ cần di chuyển Việc di chuyển từ tọa độ A(xA,yA) tới B(xB,yB) thực cách robot từ A, quay mơt góc đó, phái trái hay phải di chuyển đoạn khoảng cách từ A tới B Như vậy, ba cơng việc chương trình điều khiển Tính tốn độ quay, khoảng cách di chuyển cho robot Giao tiếp với robot thông qua Bluetooth Điều khiển robot xoay chay xác với mơt góc khoảng cách biết trước Trang 77 Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị khơng người lái Tính tốn độ qua khoảng cách di chuyển cho robot tính tốn với dễ dàng với cơng thức hình học Chương trình giao tiếp với robot thơng qua Bluetooth hỗ trợ bỡi MRDS, chi tiết để khởi động Bluetooth máy tính, robot thao tác để chúng giao tiếp với trình bày phụ lục … Điều khiển robot xoay chạy xác với góc khoảng cách biết trước code trình bày bảng … MRDS hỗ trợ số hàm RotateDegrees DriveDistance hỗ trợ robot quay góc chạy với khoảng cách đưa vào Tuy nhiên, hàm hỗ trợ tổng quát cho nhiều robot với MRDS Khi sử dụng cụ thể với LegoMindstorm NXT 2.0, sử dụng hàm cách gán cụ thể bán kính bánh xe NXT vào Những hàm MRDS thực cách định thời, cho bánh xe quay đếm số vòng quay bánh xe, sau khoảng thời gian, độ cần quay khoảng cách cần di chuyển, robot cho dừng lại Tuy nhiên, chạy với mơ MRDS hàm cho kết tốt, với môi trường thực tế việc định thời từ MRDS truyền đến robot NXT cho kết sai lệch số trường hợp kiểm thử Vì vậy, để đạt độ xác cao việc queo góc di chuyển đoạn, chương trình khơng sử dụng hàm bổ trợ MRDS trình bày trên, mà việc định thời, đo thời gian quay hay chạy thực lại (như code bảng 7.1) Để robot quay góc α độ, đầu tiên, hai bánh xe trái phải robot phải quay ngược chiều vận tốc để xoay; sau khoảng thời gian θ, robot quay α độ, hai bánh xe robot dừng lại Như để xác định θ dựa vào bảng đối chiếu thời gian số độ góc quay thực tế robot NXT Để robot đi/chay đoạn d, đầu tiên, hai bánh xe trái phải robot phải quay chiều nhau, vận tốc để robot thẳng; sau khoảng thời gian θ’, robot khoảng d, hai bánh xe robot dừng lại Như để xác định θ’ dựa vào bảng đối chiếu thời gian khoảng cách di chuyển thực tế robot NXT Trang 78 Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái Bảng Chương trình điều khiển Lego Mindstorm NXT C# 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 yield return Arbiter.Receive( false, TimeoutPort(10000), delegate(DateTime timeout) { } ); rotatePower = 0.25; runPower = 0.4; for (int times = 0; times < repeatCount; times++) { rotateTime = (int)rotate_list[times]; driveTime = (int)drive_list[times]; rotateDirect = direct_list[times]; if (rotateDirect == 1) //turn left { _nxtDrivePort.DriveDistance(rotatePower, - rotatePower, 0); yield return Arbiter.Receive( false, TimeoutPort(rotateTime), delegate(DateTime timeout) { }); }else //turn right { _nxtDrivePort.DriveDistance(-rotatePower, rotatePower, 0); yield return Arbiter.Receive( false, TimeoutPort(rotateTime), delegate(DateTime timeout) { }); } _nxtDrivePort.DriveDistance(0, 0, 0); yield return Arbiter.Receive( false, TimeoutPort(settlingTime), delegate(DateTime timeout) { }); // Stop the motors _nxtDrivePort.DriveDistance(runPower, runPower, 0); yield return Arbiter.Receive( false, TimeoutPort(driveTime), delegate(DateTime timeout) { }); _nxtDrivePort.DriveDistance(0, 0, 0); Trang 79 Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái 43 44 45 46 yield return Arbiter.Receive( false, TimeoutPort(settlingTime), delegate(DateTime timeout) { }); } Từ dòng đến 5, robot dừng khoảng thời gian để khởi tạo; sau vào vịng lặp, thực loạt thao tác xoay di chuyển tới Giả sử robot cần qua chuỗi đỉnh A1, A2, A3 … An để đến đích repeatCount vòng lặp n Trong vòng lặp, robot thực việc di chuyển từ Ak đến Ak+1 Để làm việc này, robot cần xoay góc αk cho đầu robot hướng đến Ak+1, sau robot di chuyển khoảng dk để đến Ak+1 αk dk chuyển đổi sang khoảng thời gian tương ứng Các khoảng thời gian tương ứng cho việc xoay thẳng lưu rotate_list drive_list, hướng xoay lưu direct_list Từ dòng 14 đến 28, việc xoay góc phải trái thực Dòng 16 23 khởi tạo hai bánh xe quay ngược (dòng 16 xoay trái dòng 23 xoay phải) Việc khởi tạo dùng DriveDistance với tham số cuối khoảng cách di chuyển phải truyền (tham số cuối định khoảng cách di chuyển robot, trình bày trên, việc di chuyển khơng xác nên cần truyền 0) Dòng 17 đến 20 định thời cho robot Dịng 16 làm robot xoay, sau khoảng thời gian rotateTime, robot dừng lại Khi dừng lại sau khoảng rotateTime, robot quay góc mong muốn Dòng 30 đến 34, robot dừng motor lại khoảng thời gian settlingTime để đảm bảo xác cho hoạt động Dòng 36 đến 40 điều khiển robot thẳng đoạn Trong dòng 36, hai bánh xe khởi tạo quay hướng, vận tốc với để robot thẳng, thay trái dấu 16 23 để robot xoay Tương tự, dòng 37 đến 40 dùng để định thời cho robot, sau khoảng thời gian driveTime robot dừng lại vị trí Ak+1 Sau thẳng đoạn, robot dừng khoảng để hoạt động xác Vịng lặp tiếp tục robot di chuyển đến đích cần đến Trang 80 Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị khơng người lái Hình Kết kiểm tra thực tế c Chương trình mơ lại hoạt động robot mơi trường thật Như trình bày phần 7.2, tổng quan thiết kế, thiết kế gồm phần Phần a b trình bày phần công việc thứ (1) thứ (2) Phần công việc thứ (3) liệu robot trình chuyển động (như vận tốc, gia tốc), truyền máy tính để dựa vào máy tính xây dựng môi trường môi trường thật bên Và robot bên chuyển động robot giả lập mơi trường chuyển động tương tự, giúp người điều khiển từ xa dễ dàng theo dõi hoạt động robot thật Chương trình mô xây dựng dùng thư viện OpenGL xử lý hiệu ứng hình ảnh Chương trình dừng lại mức xây dưng mơ hình 3D với vật cản mơi trường, đối tượng di chuyển với vận tốc không đổi Việc giao tiếp chương trình với robot đưa vào hướng phát triển cho đề tài (hình 7.6) Trang 81 Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị khơng người lái Hình Mơ robot với OpenGL 7.4 Kết luận Công việc làm được: - - Xây dựng mơi trường kiểm tra phịng thí nghiệm gồm: Một sân chứa vật cản Robot LegoMindstorm NXT 2.0, xây dựng theo dạng xe, di chuyển sân Robot xuất phát điểm cần tìm đường ngắn đến điểm đích tránh vật cản Giải thuật tìm đường dẫn ngắn thực đường dẫn ngắn tìm truyền Bluetooth qua cho robot Robot di chuyển xác theo đường dẫn nhận từ máy tính Hướng phát triển: - - Robot chạy với vận tốc không đổi, chưa kiểm tra với môi trường trời tác động ngoại cảnh động học Vì vậy, cần kiểm thử mơi trường ngồi trời kết hợp đường ngắn với biến động vận tốc gia tốc Trong trình chuyển động robot, robot truyền liệu động học làm nhiệm vụ thu thập liệu, chụp ảnh, … chưa thể truyền cho máy tính Vì vậy, cần thiết lập giao chiều ngược Trang 82 Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái - lại để người điều khiển từ máy tính theo dõi hoạt động robot nhận liệu hình ảnh robot truyền Trong phần cơng việc phần thiết kế, phần cơng việc (4) xây dựng chương trình cho robot tránh vật cản bất ngờ chưa thực Các công việc đưa vào hướng phát triển cho đề tài Trang 83 Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái Chương KẾT LUẬN Chương tổng kết kết đạt đưa hướng phát triển tương lai đề tài Path Planning Cục 3D Motion Planning (Tìm đường theo chuẩn đó) Search-based: chia ơ, dễ thực, độ xác phụ thuộc vào cách chia Tồn cục 2D Sampling-based: lấy mẫu, kết phụ thuôc vào xác suất Combinatorial- Planning Voronoi Diagrams, LR-visibility mơ hình khác θ(n3) θ(n2logn) Visibility graph θ(n2) θ(nlogn) Hình Tổng quan tốn tìm đường 8.1 Kết đạt Từ chương trước, kết đề tài đạt gồm: Phần lý thuyết: Đưa nhìn tổng quan phương pháp giải tốn tìm đường, ưu khuyết điểm phương pháp (hình 8.1) Trên sở tổng quan này, đề tài tập trung vào giải tốn tìm đường theo Combinatorial Planning, dùng Visibility graph, áp dụng toán cụ thể tìm đường ngắn theo khoảng cách Tất giải thuật xây dựng visibility graph với độ phức tạp giảm dần từ θ(n 3) tới θ(nlogn) tìm hiểu Dựa ưu khuyết điểm visibility graph áp dụng vào thực tế, đề tài giới thiệu hai kỹ thuật thêm vào để giúp giảm thời gian áp dụng visibility graph thực tế Tiền xử lý gom nhóm vật cản nhỏ, tập trung dày đặc Trang 84 Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái Chia vùng không gian hoat động, kết hợp song song hóa cơng việc vùng Phần thực: Bài tốn tìm đường ngắn tránh vật cản mặt phẳng hai kỹ thuật thêm vào nêu thưc đánh giá thông qua tập testcase kiểm thử Chương trình sử dụng thêm vào thư viện LEDA, thư viện hỗ trợ nhiều cấu trúc liệu cho hình học tính tốn, để thấy tiến trình hoạt động giải thuật cách hình ảnh Mặt khác, tốn tìm đường áp dụng thử nghiệm robot thật, robot di chuyển thành công môi trường chứa vật cản xây dựng với tác động điều kiện phòng Kết đề tài đúc kết báo trình bày hội nghị “The Third International Conference on Knowledge and Systems Engineering (KSE2011)” Hà Nội vào ngày 14-17 tháng 10 năm 2011 8.2 Hướng phát triển đề tài Đề tài mong muốn phát triển việc tìm hiểu giải thuật thuộc lĩnh vực hình học tính tốn Và sở đó, áp dụng giải thuật tìm hiểu vào điều khiển robot thơng minh Đề tài có nhiều hướng phát triển để hồn thiện hơn: - Tìm hiểu ứng dụng vào thực tế hai hướng phát triển lại path planning search-based sample-based - Phát triển tốn tìm đường lên 3D - Robot thật chạy với tốn tìm đường ngắn trình bày chương cần cải thiện thêm vấn đề Giao tiếp Bluetooth máy tính robot chuyển liệu từ máy tính tới robot, chưa có chiều ngược lại Hướng phát triển nên tạo giao tiếp để máy tính nhận liêu robot truyền Chuyển động robot theo đường dẫn kiểm thử điều kiện phịng, khơng có tác động ngoại cảnh Vì vậy, robot cần kiểm thử trời thêm chương trình xử lý tác động ngoại Để robot ứng dụng thực tế với khoảng cách xa hơn, cần chuyển từ giao tiếp không dây Bluetooth lên mạng tầm xa khác Trang 85 Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái TÀI LIỆU THAM KHẢO [1] E Welzl, “Constructing the Visibility Graph for n Line Segments in O(n2) Time," Information Processing Letters, vol 20, issue 4, pp 167-171, May 1985 [2] D T Lee, “Proximity and reachability in the plane,” Ph.D Thesis, University of Ilfinois at UrbanaChampaign, Urbana, IL, 1978 [3] John E Hershberger and Subhash Suri, “Efficient Computation of Euclidean Shortest Paths in the Plane,” IEEE 34th Annual Foundations of Computer Science, pp 508-517, 1993 [4] S.Ghosh and D.Mount, “An output sensitive algorithm for computing visibility graphs,” 28th Annu IEEE Sympos Found Comput Sci., pp 11-19, 1987 [5] M.H Overmars and E.Welzl, “New methods for computing visibility graphs,” Symposium on Computational Geometry, pp 164-171, 1988 [6] L.P Chew, “Planar Graphs and Sparse Graphs for Efficient Motion Planning in Plane,” Dartmouth Computer Science, Tech Rep TR90-146, 1990 [7] J Kitzinger and B.Moret, “The Visibility Graph Among Polygonal Obstacles: a Comparison of Algorithms,” University of New Mexico, Tech Rep TR-CS-2003-29, 2003 [8] D Wooden and M Egerstedt, “Oriented Visibility Graphs: Low-Complexity Planning in Real-Time Environments,” ICRA, pp 2354-2359, 2006 [9] X Shen and H Edelsbrunner, “A Tight Lower Bound on the Size of Visibility Graphs,” Inf Process Lett., pp 61-64, 1987 [10] T Lozano-Perez, “A simple motion-planning algorithm for general robot manipulators,” IEEE Journal of Robotics and Automation, pp 224-238, 1987 [11] J Canny, “The Complexity of Robot Motion Planning Cambridge,” MA: MIT Press, 1987 [12] H Alt and E Welzl, “Visibility graphs and obstacle-avoiding shortest paths,” Zor-Zeitschrift fur Operation Research, pp 145-164, 1988 [13] Yao and A.C, “On Constructing Minimum Spanning Trees in k-Dimensional Spaces and Related Problems,” SIAM J Comput, pp 721-736, 1982 Trang 86 Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái [14] S Laine, “A General Algorithm for Output-Sensitive Visibility Preprocessing,” ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games (I3D), 2005 [15] M.H Overmars and E Welzl, “Construction of sparse visibility graphs,” Dept of Computer Science, University of Utrecht, Tech Rep RUU-CS- 879, 1987 [16] T.Lozano-Prez and M.A.Wesley, “An algorithm for planning collision-free paths among polyhedral obstacles,” Communications of the ACM archive, pp 560-570, 1979 [17] M d Berg, Computational Geometry Algorithms and Applications, Springer, 2000 [18] S M LaValle, Planning Algorithms, Cambridge University Press, 2006 [19] M d Berg, M v Kreveld, M Overmars and O.Schwarzkopf, Computational Geometry Algorithms and Applications, Springer-Verlag Berlin Heidelberg, 2000 [20] J O’Rourke, Computational geometry in C, Cambridge University Press, 1998 [21] T.H Cormen, C.E Leiserson, R.L Rivest and C.Stein, Introduction to Algorithms, The MIT Press, 2001 [22] J.S B Mitchell, “Shortest paths among obstacles in the plane,” the ninth annual symposium on Computational geometry, California, United States, pp 308-317, 1993 [23] Y.Chiang and J.S B Mitchell, “Two-point Euclidean shortest path queries in the plane,” the tenth annual ACM-SIAM symposium on Discrete algorithms, Maryland, United States, pp 215-224, 1999 [24] J.Park and S Oh, “A New Concave Hull Algorithm and Concaveness Measure for n-dimensional Datasets,” Journal of Information science and engineering, No 100295 [25] S.K Ghosh, Visibility algorithms in the plane, Cambridge University Press, 2007 [26] B.R Call, “Obstacle avoidance for unmanned air vehicles,” M.S Thesis, Brigham Young University, 2006 Trang 87 Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái [27] G.M Hoffmann, S.L Waslandery and C.J Tomlin, “Quadrotor Helicopter Trajectory Tracking Control,” Proceedings of the AIAA Guidance, Navigation, and Control Conference, Honolulu, HI, 2008 [28] T.Asano, T.Asano, L.Guibas, J.Hershberger and H.Imai, “Visibility of Disjoint Polygons,” Algorithmica, Vol 1, pp 49-63, 1986 [29] J.Choi, J.Sellen, C.K.Yap, “Approximate Euclidean shortest path in 3space,” Proceedings of the tenth annual symposium on Computational geometry, Stony Brook, New York, United States, pp 42-48, 1994 [30] D.Jung, Hierarchical path planning and control of a small fixed-wing UAV: Theory and experimental validation, Ph.D Thesis, the school of Aerospace Engineering Georgia Institute of Technology, December 2007 [31] B.R Call, Obstacle avoidance for unmanned air vehicles, MSc Thesis, Brigham Young University, December 2006 [32] J Laumond, Robot Motion Planning and Control, Klumer Academic Publishers, Boston, MA, USA, 1991 [33] J O'Rourke, Art Gallery Theorems and Algorithms, Oxford University Press, 1987 [34] F Li, R Klette and S.Morales, “An Approximate Algorithm for Solving Shortest Path Problems for Mobile Robots or Driver Assistance,” Intelligent Vehicles Symposium, 2009 IEEE, 2009, pp 42-47 [35] D Ferguson and A.Stentz “Multi-resolution field D*," Proceedings of the International Conference on Intelligent Autonomous Systems (IAS), March 2006 [36] R Bohlin and L Kavraki, “Path planning using lazy PRM," IEEE Int Conf.on Robotics and Automation, vol 1, 2000, pp 521-528 [37] S LaValle, Rapidly-exploring random trees: A new tool for path planning, Technical Report TR 98-11, Computer Science Dept., Iowa State University, 1998 [38] Roos, T., Dynamic Voronoi Diagrams, PhD thesis, University of Wurzburg, 1991 [39] C.H Papadimitriou, “An algorithm for shortest-path motion in three dimensions,” Information Processing Letters, Vol 20, 12 June 1985, pp 259-263 Trang 88 Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái [40] D T Wooden, Graph-based Path Planning for Mobile Robots, Ph.D Thesis, school of Electrical and Computer Engineering Georgia Institute of Technology, December 2006 [41] Lego Mindstorm NXT http://mindstorms.lego.com/en-us/support/files/default.aspx [42] Kyle Johns, Trevor Taylor, Professional Microsoft® Robotics Developer Studio, Wiley Publishing, Inc., 2008 [43] LegoMinstorm, http://en.wikipedia.org/wiki/Microsoft_Robotics_Developer_Studio Trang 89 ... Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái Trang Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái Trang Luận văn thạc sĩ: Xây dựng. .. văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái Trang Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái LỜI CẢM ƠN Tôi xin... đường ngắn a Tìm đường tham lam Trang 45 Luận văn thạc sĩ: Xây dựng giải thuật xác định đường ngắn cho thiết bị không người lái Như hình 1, đường d1 cắt vật cản A1, B1, C1, D1 Giải thuật đường ngắn