thuật toán vet dau loang

10 419 0
thuật toán vet dau loang

Đang tải... (xem toàn văn)

Thông tin tài liệu

Kỷ yếu Hội nghị Quốc gia lần thứ VIII Nghiên cứu ứng dụng Công Nghệ thông tin (FAIR); Hà Nội, ngày 8/5/2015 Tìm đường Robot Môi trường động Phát triển Cải tiến Thuật toán Vết Dầu loang Lê Anh Tuấn1 , Lê Văn Hưng2 , Phạm Văn Hải Viện Công nghệ thông tin truyền thông, Trường Đại học Bách Khoa Hà Nội Khoa Công nghệ thông tin, Trường Đại học Mỏ-Địa chất Bộ môn Hệ thống thông tin, Viện Công nghệ thông tin truyền thông, Trường Đại học Bách Khoa Hà Nội tuanla.hust@gmail.com haipv@soict.hust.edu.vn, TĨM TẮT : Trong báo này, chúng tơi trình bày phương pháp tìm đường tối ưu từ điểm xuất phát đến đích cho robot mơi trường có vật cản cố định di động dựa thuật tốn “Vết dầu loang” Hiện nay, cơng trình nghiên cứu giới đưa nhiểu thuật toán đường bao phủ nhằm giải số vấn đề điều khiển Robot lau nhà lịch trình đường bao phủ tối ưu khoảng cách Nghiên cứu tổng quan trường hợp di chuyển đường robot sau: Robot di chuyển mơi trường tĩnh theo lịch trình định trước di chuyển môi trường động gặp chướng ngại vật di động Chủ yếu thuật toán truyền thống lớp toán đường bao phủ bao gồm vết dầu loang truyền thống tập trung giải tốn mơi trường tĩnh Nghiên cứu áp dụng cải tiến thuật tốn vết dầu loang nhằm tìm hướng giải cho toán robot di chuyển mơi trường động, có nhiều vật cản tham gia di chuyển Đồng thời, nghiên cứu sử dụng kỹ thuật “bán kính quét” nhằm xác định vị trí, phát vật cản để có xử lý tình thơng minh “heuristics” vượt qua tránh chướng ngại vật Từ khóa: Vết dầu loang, tìm đường tối ưu cho robot môi trường động, đường bao phủ GIỚI THIỆU Vết dầu loang phương phương pháp tìm kiếm theo chiều rộng mơ hình ảnh vết dầu loang mặt nước Trong thực tế, đổ giọt dầu bề mặt nước vết loang dầu loang theo khơng gian thời gian Ví dụ mặt nước, vết dầu loang theo đường tròn tức điểm khoảng cách so với tâm vết loang vết dầu đến lúc Đây điều thú vị, điểm mặt nước có liên thơng với với tâm vết dầu loang đến Ứng dụng thuật tốn vết dầu loang với kỹ thuật cải tiến để giải tốn: tìm đường tối ưu mơi trường tĩnh, xác định tính liên thơng đồ thị,… Xác định vị trí (localization) xác định đường (path planning-PP) hai thành phần quan trọng tốn điều hướng (navigation) Xác định vị trí tìm vị trí đồ tương ứng với vị trí giới thực, tốn PP tìm đường khơng đụng độ (collision-free) tối ưu từ vị trí bắt đầu đến vị trí đích PP xem toán lớn ngành khoa học người máy (robotics) Trong [1] tác giả đề xuất phân phương pháp giải toán PP thành hai loại: (i) tìm đường tồn cục (GPP) (ii) tìm đường cục (LPP) Trong GPP, robot có tồn thơng tin mơi trường (vị trí vật cản đích), LPP, robot khơng có có khơng đầy đủ thơng tin mơi trường Có nhiều kỹ thuật sử dụng GPP trường điện từ (potential field - PF), phân rã thành ô (cell decomposition - CD) đồ thị trực quan (Visibility Graph – VG) Trong [2] tác giả sử dụng cách phân loại sau cho phương pháp PP: (1) Các phương pháp cổ điển: CD, PF, đồ đường (road map – RM) (2) Các phương pháp heuristic: mạng nơ ron (Neural Network), giải thuật di truyền (Genetic Algorithm), tối ưu bầy đàn (Particle Swarm Optimization) tối ưu đàn kiến (Ant Colony Optimization) Trong [3] tác giả phân loại thuật tốn PP dựa vào tính đầy đủ thơng tin thành: (a) xác (b) heuristic Các thuật tốn xác tìm thấy lời giải tối ưu chúng tồn thuật tốn heuristic tìm kiếm lời giải có chất lượng tốt tập trung vào việc giảm thời gian tìm kiếm Trong phương pháp cổ điển, lời giải tìm thấy lời giải chứng minh khơng tồn Điểm bất lợi phương pháp khối lượng tính tốn lớn khơng có khả làm việc mơi trường khơng chắn Phương pháp CD phân chia không gian lớn thành không gian nhỏ để dễ dàng cho việc khảo sát sử dụng nhiều toán PP Ý tưởng phương pháp làm giảm khơng gian tìm kiếm cách sử dụng cách biểu diễn Mục đích tìm dãy kề (có biên chung), khơng đụng độ từ vị trí bắt đầu đến vị trí đích Một dãy biểu diễn đường từ bắt đầu đến đích Nhược điểm phương pháp bùng nổ tổ hợp (combinatorial explosion) độ phức tạp tính tốn [4] Phương pháp PF thường sử dụng để điều khiển chuyển động robot tình tránh vật cản [5] Nói chung, PF hiểu bao gồm hai lực hút đẩy, đích có lực hút vật cản có lực đẩy robot Kết tổng hợp lực hút đẩy dẫn robot đến đích Trong phương pháp RM, đồ đường xây dựng với tập đường đi, sau đường sử dụng cho việc di chuyển robot [6] Do đó, phương pháp này, tốn PP xem tốn tìm đường ngắn đường từ vị trí bắt đầu đến vị trí kết thúc sử dụng mạng đồ đường Kỷ yếu Hội nghị Quốc gia lần thứ VIII Nghiên cứu ứng dụng Công Nghệ thông tin (FAIR); Hà Nội, ngày 8/5/2015 Bài toán điều hướng chịu ảnh hưởng độ xác đồ kỹ thuật định vị Bản chất động dự báo trước ứng dụng thực tế thường làm cho toán điều hướng trở thành nhiệm vụ đầy thách thức Trong [7] tác giả đề xuất việc sử dụng phương pháp heuristic dựa hành vi (behavioralbased) để xử lý tình mơi trường thực tế Trong phương pháp này, tập hành vi đơn giản định nghĩa trước thiết kế để giải tình phức tạp Do phương pháp phụ thuộc vào trạng thái thời tập hành vi thiết kế cho trạng thái đó, chúng đáng tin cậy mơi trường động, vậy, gặp khó khăn mơi trường khơng chắn Ngược lại với phương pháp cổ điển, thuật tốn heuristic khơng đảm bảo việc tìm lời giải, chắn chúng tìm lời giải thích hợp thời gian ngắn so với phương pháp cổ điển Ngoài ra, chúng tìm thấy lời giải tồi (tối ưu cục bộ) Trong báo này, kết hợp kỹ thuật phương pháp PP cổ điển heuristic để giải tốn tìm đường robot mơi trường có vật cản tĩnh vật cản động Cụ thể, chia không gian di chuyển robot thành ô hình vng có kích thước đủ bé Các đánh dấu có vật cản hay khơng cho trường hợp vật cản tĩnh Sau đó, dựa nguyên lý vết dầu loang từ vị trí đích, ma trận chi phí để đến đích tính cho tất đến đích Về chất, ma trận xem RM với chi phí để đến đích tính Trong trường hợp có vật cản tĩnh ban đầu, dựa ma trận chi phí nói trên, đường tối ưu (với chi phí thấp nhất) xác định cách dễ dàng Trong trường hợp có vật cản động, giả thiết robot trang bị cảm ứng để xác định vị trí, hướng di chuyển vị trí có khả đụng độ vật cản với robot bán kính thích hợp Khi di chuyển mơi trường có vật cản động, robot dựa vào khả phát đụng độ tính tốn chi phí để có hành vi thích hợp với mục đích tối ưu hóa chi phí đến đích Tuy nhiên, giống phương pháp heuristic khác, phương pháp có khả khơng tìm lời giải tìm lời giải không tối ưu môi trường động, không chắn 1.1 Vấn đề di chuyển đường Robot Trong không gian di chuyển chia thành hình vng có vật cản cố định di động, tìm đường nhanh robot từ xuất phát đến đích biết robot di chuyển từ sang khác có cạnh chung Trong toán robot trang bị cảm ứng để phát vật cản xung quanh Với cảm ứng robot phát vật cản phạm vi bán kính gọi bán kính qt Ngồi ra, robot có khả xác định hướng di chuyển tốc độ vật cản bán kính quét để xác định có khả va chạm với vật cản hay khơng vị trí có khả xảy va chạm Ví dụ Hình mơ tả tốn tìm đường robot từ A đến B khơng gian có kích thước hình chữ nhật MxN với có vật cản tơ màu đen Hình 1: Bài tốn tìm đường nhanh 1.2 Lập luận nghiên cứu phương pháp tiếp cận Giải pháp toán dựa giai đoạn sau: Giai đoạn 1: Dựa nguyên lý vết dầu loang để xây dựng ma trận chi phí đến đích: Ngun lý dầu loang mơi trường lỏng loang điểm xung quanh, điểm gần loang đến trước, điểm loang đến sau Trong toán duyệt đồ thị có cấu trúc cây, tương đương với thuật tốn tìm kiếm theo chiều rộng (Best First Search-BFS) với tâm vết dầu gốc Thuật toán BFS thường sử dụng cấu trúc hàng đợi để lưu nút duyệt [8] Kỷ yếu Hội nghị Quốc gia lần thứ VIII Nghiên cứu ứng dụng Công Nghệ thông tin (FAIR); Hà Nội, ngày 8/5/2015 Ta xây dựng ma trận chi phí đến đích cách bắt đầu loang từ vị trí đích Cách làm cho biết trước chi phí thời gian di chuyển từ vị trí đến đích, đó, cho phép ta chọn đường tốt từ vị trí đến đích đường xuất vật cản Ví dụ 2: Ví dụ sau minh họa q trình loang đích Con số thể chi phí (số lần dịch chuyển) từ đến đích Hình mơ tả tốn tìm đường với bắt đầu có màu xanh, đích có màu đỏ, có vật cản có màu đen Hình 2: Bài tốn tìm đường nhanh Hình thể bước loang từ ô màu xanh sang ô màu vàng Hình 3: Sau bước loang Hình thể kết sau hai bước loang Hình 4: Sau hai bước loang Hình thể kết sau q trình loang Những màu có chi phí đến tâm Hình 5: Kết q trình loang Kỷ yếu Hội nghị Quốc gia lần thứ VIII Nghiên cứu ứng dụng Công Nghệ thông tin (FAIR); Hà Nội, ngày 8/5/2015 Giai đoạn 2: Tìm đường từ xuất phát đến ô đích dựa ma trận chi phí Trường hợp vật cản cố định, dựa ma trận chi phí ta dễ dàng xác định đường nhanh từ ô xuất phát đến ô đích Ơ di chuyển xác định sau: Nếu robot đứng vị trí C(x,y) có chi phí d(x,y) Cଵ ሺxଵ , yଵ ሻ với: ቐ xଵ ൌ ‫ ݔ‬൅ ‫ݔܪ‬ሾ݅ሿ yଵ ൌ ‫ ݕ‬൅ ‫ݕܪ‬ሾ݅ሿ , ݅ ൌ .3, ݀ሺ‫ݔ‬ଵ , ‫ݕ‬ଵ ሻ ൅ ൌ ݀ሺ‫ݔ‬, ‫ݕ‬ሻ ‫ ݔܪ‬ൌ ሼ0, 1, 0, െ1ሽ ൜ ‫ ݕܪ‬ൌ ሼ1,0, െ1,0ሽ Trong đó, Hx, Hy độ lệch tọa độ vị trí so với vị trí Q trình di chuyển kết thúc ݀ሺ‫ݔ‬ଵ , ‫ݕ‬ଵ ሻ = Hình thể đường nhanh từ xuất phát đến đích cho tốn Ví dụ Hình 6: Kết trình tìm đường Trường hợp gặp vật cản xuất đường đi, robot chọn hai cách sau dựa việc so sánh chi phí thời gian chúng: (a) Chờ vật cản qua tiếp tục di chuyển theo lộ trình định trước, (b) Tránh vật cản cách di chuyển theo lộ trình Gọi ∆c chi phí thời gian chờ để tránh vật cản ∆c có đơn vị tính thời gian cần để dịch chuyển từ ô sang ô bên cạnh điều kiện bình thường Gọi φଵ chi phí lại trường hợp (a), φଶ chi phí lại trường hợp (b), ta có: φଵ ൌ ݀ሺ‫ݔ‬, ‫ݕ‬ሻ ൅ ∆c φଶ ൌ ‫݊݅ܯ‬ሺ݀ሺ‫ ݔ‬൅ ‫ݔܪ‬ሾ݅ሿ, ‫ ݕ‬൅ ‫ݕܪ‬ሾ݅ሿሻ| ݅ ൌ .3ሻ Nếu φଵ ൑ φଶ , robot chờ vật cản qua theo lộ trình cũ Chi phí thời gian di chuyển trường hợp cộng thêm thời gian chờ ∆c Nếu φଵ ൐ φଶ , robot theo lộ trình để tránh vật cản qua vị trí ሺ‫ ݔ‬൅ ‫ݔܪ‬ሾ݆ሿ, ‫ ݕ‬൅ ‫ݕܪ‬ሾ݆ሿሻ với ݀ሺ‫ ݔ‬൅ ‫ݔܪ‬ሾ݆ሿ, ‫ ݕ‬൅ ‫ݕܪ‬ሾ݆ሿሻ ൌ ‫݊݅ܯ‬ሺ݀ሺ‫ ݔ‬൅ ‫ݔܪ‬ሾ݅ሿ, ‫ ݕ‬൅ ‫ݕܪ‬ሾ݅ሿሻ| ݅ ൌ .3ሻ chưa qua Ví dụ 3: Giả sử sau trình loang ta xác định ma trận chi phí cho tốn tìm đường từ A đến B Hình sau: Hình 7: Ma trận chi phí đến đích B Sau có ma trận chi phí, robot xác định đường nhanh (màu xanh) từ vị trí xuất phát A đến vị trí đích B Hình Kỷ yếu Hội nghị Quốc gia lần thứ VIII Nghiên cứu ứng dụng Công Nghệ thông tin (FAIR); Hà Nội, ngày 8/5/2015 Hình 8: Đường nhanh từ A đến B Ta coi gốc tọa độ khơng gian di chuyển góc trên-trái Giả sử robot đến vị trí màu tím có tọa độ (7,2) với d(7,2) = 14 phát có vật cản di chuyển vị trí (6,2) (7,3) đụng độ vị trí (7,3) Giả sử chi phí chờ để vật cản qua ∆c = 4, ta có: φଵ = ݀ሺ‫ݔ‬, ‫ݕ‬ሻ + ∆c = 14 + = 18 φଶ = ‫݊݅ܯ‬ሺ݀ሺ‫ ݔ‬+ ‫ݔܪ‬ሾ݅ሿ, ‫ ݕ‬+ ‫ݕܪ‬ሾ݅ሿሻ|݅ = .3ሻ = ݀ሺ7,1)=15 Như φଵ > φଶ nên robot chọn theo lộ trình (có màu đỏ) qua có vị trí (7,1) Hình Trong trường hợp chi phí đường cộng thêm φଶ − ݀ሺ‫ݔ‬, ‫ݕ‬ሻ + Hình 9: Trường hợp gặp vật cản THUẬT TỐN Thuật tốn sử dụng cấu trúc hàng đợi (Q) để duyệt theo chiều rộng Giá trị d(x,y) chi phí di chuyển từ vị trí (x,y) đến vị trí đích (x ஻ , y஻ ሻ Hàm check(x,y) cho giá trị ô (x,y) nằm không gian di chuyển chưa tính chi phí Hàm next(x,y) trả tọa độ ô lộ trình Hàm collision (x,y) cho biết vị trí (x,y) có đụng độ hay không Hàm change(x,y) trả tọa độ (x’,y’) ô sang thay đổi đường đi, nghĩa (x’,y’) bên cạnh (x,y), khơng có khả đụng độ, chưa qua có chi phí d(x’,y’) bé Hàm save(x,y,x’,y’) lưu đường từ ô (x,y) sang ô (x’,y’) Biến cost lưu chi phí đường đến 1) /* Khởi tạo ma trận chi phí */ 2) for(i=0;i

Ngày đăng: 04/03/2019, 22:48

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

  • Đang cập nhật ...

Tài liệu liên quan