đặt vấn đề như là tìm kiếm trên N đồ thị đường đi tối ưu thỏa mãn ràng buộc khoảng cách. Giải pháp DPC lặp lại việc tìm kiếm trên các đồ thị này với sự gia tăng dần dần của các ràng buộc khoảng cách cho đến khi đạt được sự hội tụ đầy đủ. Các ràng buộc này là ràng buộc mềm, được chấp nhận vi phạm theo hàm phạt (penalty function) kiểu kỹ thuật tăng cường đối số Lagrange. Các tác giả đã chứng minh rằng dưới điều kiện cụ thể giải thuật đảm bảo hội tụ thành giải pháp tối ưu.
Thực nghiệm cho thấy thuật toán hội tụ nhanh chóng cho các nhóm tối đa sáu đối tượng cùng hoạt động trong môi trường lộn xộn. Và các kết quả mô phỏng cũng cho thấy việc triển khai và thực hiện thuật toán trên ba robot tìm đường trên môi trường lộn xộn trong khi tuân theo các giới hạn khoảng cách theo tham số thời gian. Các tác giả mở rộng bài toán này trong [40]: mỗi robot được cho một tập hợp các tác vụ không có thứ tự mà nó phải thực thi trước khi nó di chuyển đến mục tiêu của nó, trong khi các hàm mục tiêu, các ràng buộc mềm về khoảng cách và độ phức tạp được kế thừa từ giải thuật DPC trên. bằng cách xây dựng đồ thị trạng thái - tác vụ và đề xuất một hàm heuristic hiệu quả để thực hiện tìm kiếm trên đồ thị này.
Giải thuật sẽ quyết định thứ tự thực hiện các tác vụ sao cho đạt được lời giải tối 6 Luận văn thạc sĩ - Khoa học máy tính ưu đồng thời các ràng buộc khoảng cách được thỏa mãn cùng với việc thực hiện thành công các tác vụ. Mariusz Glabowski và các cộng sự [26], Yogita Gigras, Kusum Gupta[27] cho thấy rằng các giải thuật Meta-Heuristic đã giải quyết bài toán tìm đường đi ngắn nhất cho nhiều đối tượng khá hiệu quả và cho lời giải gần tối ưu. Đây là một bài toán tối ưu tổ hợp, dạng bài toán có độ phức tạp tính toán cao thuộc lớp NP khó. Kết quả thực nghiệm cho thấy giải thuật đàn kiến vượt trội hơn so với tối ưu hóa bầy hạt trong thời gian tính toán.
Bên cạnh đó còn có giải thuật mô phỏng luyện kim SA (Simulated Annealing), giải thuật di truyền GA (Genetic Algorithm) được áp dụng cho bài toán này bởi các tác giả O. Với độ phức tạp tính toán cao của các bài toán tối ưu tổ hợp cũng như đòi hỏi về mặt thời gian, việc giải các bài toán này với tính chất tuần tự của giải thuật sẽ gặp phải những vấn đề về thời gian thực hiện chương trình, tốc độ xử lý, khả năng lưu trữ của bộ nhớ, xử lý dữ liệu với quy mô lớn. Kích thước bài toán tăng lên và không gian tìm kiếm càng lớn yêu cầu cần phải song song hóa các giải thuật [29] để tăng tốc độ và hiệu quả của giải thuật. Yongbo Chen, Jianqiao Yu và hai cộng sự khác [24] trình bày một thuật toán hiệu quả và khả thi cho bài toán tìm đường cho nhiều máy bay không người lái (multi-UAVs) trong môi trường thực tế biết trước.
Các tác giả cải tiến phương pháp artificial potential field. Để tránh đụng độ giữa các UAV, các tác giả đưa ra khái niệm định dạng, quy tắc để thay đổi định dạng và quá trình tái cấu trúc; tức là các UAV luôn di chuyển theo một định dạng xác định trước, tuy nhiên trong một số trường hợp chúng có thể rời khỏi đội hình và tính độ lỗi cho đường đi đó. Bài báo này áp dụng định dạng hình xương cá và kích thước của nó được thể hiện trong hình 2. Mô hình tìm đường cho lead plane được thực hiện độc lập trước, các wingman cần phải theo các vị trí được gọi là "điểm mục tiêu ảo" để duy trì định dạng.
Yếu tố khoảng 7 Luận văn thạc sĩ - Khoa học máy tính Hình 2.1: Sơ đồ mô hình đa UAV [24] cách giữ các UAV là ràng buộc mềm. Kết quả của mô phỏng thực nghiệm đã chứng minh rằng phương pháp đề xuất có khả năng tìm đường tốt và khắc phục được vấn đề "vùng chết" trong vấn đề tìm đường, đồng thời chỉ ra rằng các sai số định dạng lớn trong khu vực ảnh hưởng của các chướng ngại vật, và nhỏ ở khu vực không có chướng ngại vật. Wagner và Choset [25] hiện thực giải thuật M* trên không gian được biểu diễn như hệ tọa độ có số chiều thay đổi cho bài toán lập kế hoạch đường đi cho nhiều robot (multirobot path planning). Đây là một bài toán tối ưu về robot trong lĩnh vực trí tuệ nhân tạo và kết quả của bài toán là n đường đi tối ưu cho n robot đồng thời tránh được sự đụng độ giữa các robot.
Các giải thuật để giải bài toán này có thể được chia thành hai loại: ghép và tách các robot. Mỗi loại đều có ưu điểm và nhược điểm riêng. Các tác giả đã khai thác 8 Luận văn thạc sĩ - Khoa học máy tính các lợi ích của mỗi loại giải thuật, kết hợp chúng để đưa ra lời giải M*. M* được chứng minh là thực sự đầy đủ và tối ưu, đồng thời thực nghiệm cũng cho thấy độ phức tạp trung bình của nó thì nhỏ hơn độ phức tạp trung bình của giải thuật A*.
Tuy nhiên, M* có một điểm yếu. Nó sẽ thất bại trong trường hợp có một số lượng robot đủ lớn đổ dồn về một điểm, bởi vì khi đó M* phải tìm kiếm trên một không gian với số chiều quá lớn. Số lượng robot bao nhiêu là đủ lớn và giải pháp khả thi cho trường hợp này rM* cũng được nghiên cứu tiếp theo. Và dĩ nhiên để tìm được lời giải với những ràng buộc về bộ nhớ máy tính và thời gian, rM* không còn đảm bảo được tính đầy đủ và tối ưu của M*.2 Các phương pháp tìm đường (path – plan- ning) cho một robot đã được nghiên cứu Các phương pháp tổ hợp gồm các giải thuật tìm đường cổ điển sinh ra một đồ thị liên thông dựa trên các tính toán hình học, được gọi là roadmap, tượng trưng cho sự liên thông của workspace: đồ thị tầm nhìn (visibility graph), sơ đồ Voronoi (Voronoi diagram), cell decomposition.
Dựa trên tính toán hình học chính xác, các giải thuật thuộc phương pháp này đều có tính đầy đủ, có nghĩa là cho bất kỳ bài toán cụ thể nào, thuật toán sẽ tìm ra lời giải tốt nhất hoặc sẽ báo cáo chính xác rằng không có lời giải nào tồn tại. Một vài giải thuật thì hiệu quả và dễ hiện thực. Tuy nhiên một vài giải thuật thì đánh đổi tính đầy đủ với tính thực tế, tức là nó có thể có độ phức tạp thời gian tuyệt với nhưng lại khó hiện thực. Định nghĩa 2: Một roadmap G(V, E) là một đồ thị được dùng để rời rạc hóa không gian liên tục Xf ree sao cho thỏa mãn hai tính chất sau: − Khả năng tiếp cận: Bất kỳ điểm nào thuộc Xf ree thì đều có thể đến được từ một đỉnh nào đó của roadmap.
Cho điểm cấu hình q ∈ Xf ree , thì luôn tìm được một cách dễ dàng và hiệu quả π[0, 1] → Xf ree sao cho π(0) = q 9 Luận văn thạc sĩ - Khoa học máy tính và π(1) = ν với ν ∈ V. − Bảo tồn liên thông: đảm bảo tính liên thông của free configuration space. Cho hai điểm cấu hình q1 , q2 ∈ Xf ree theo điều kiện 1 tìm được 2 đỉnh v1 , v2 ∈ V , nếu tồn tại đường đi π[0, 1] → Xf ree sao cho π(0) = q1 và π(1) = q2 thì tồn tại π 0 [0, 1] → G sao cho π 0 (0) = v1 và π 0 (1) = v2 .1 Đồ thị tầm nhìn Đồ thị tầm nhìn là một trong những phương pháp tìm đường sớm nhất và xây dựng các đường dẫn thông qua kết nối mỗi cặp đỉnh của các chướng ngại vật bằng một đường thẳng mà không đi qua bên trong các chướng ngại vật. Phân tích đồ thị tầm nhìn là một bài toán đầy thách thức vì cấu trúc tổ hợp của đồ thị tầm nhìn vẫn chưa được hiểu đầy đủ.
Định nghĩa 3: Đồ thị tầm nhìn là một đồ thị vô hướng G (V, E) được xác định cụ thể như sau: − V là tập hợp các đỉnh của vật cản và điểm khởi đầu, mục tiêu mà robot cần di chuyển. − E là tập con của VxV, hai đỉnh của G tạo thành một cạnh khi và chỉ khi đoạn thẳng hoặc là cạnh của vật cản hoặc hai đỉnh có thể đi được đến nhau mà không bị cản trở bởi bất kì vật cản nào. Input: một tập n điểm là đỉnh của các chướng ngại vật, điểm khởi đầu, điểm kết thúc. Output: một danh sách các điểm có thể nhìn thấy được của mỗi điểm Một số thuật toán sinh đồ thị tầm nhìn với độ phức tạp thời gian được cải tiến - Naı̈ve algorithm - Cách đơn giản nhất để xây dựng đồ thị tầm nhìn là xét mỗi cặp đỉnh (u,v) có giao nhau với bất kỳ cạnh nào của vật cản hay không.
10 Luận văn thạc sĩ - Khoa học máy tính Hình 2.2: Một ví dụ tìm đường sử dụng đồ thị tầm nhìn. [12] Nếu không, hai đỉnh u, v là hai đỉnh có thể nhìn thấy nhau và cạnh (u,v) được thêm vào tập cạnh của đồ thị tầm nhìn. Dĩ nhiên là để hoàn thành được đồ thị tầm nhìn thì quá trình kiểm tra này phải lặp lại với tất cả cặp đỉnh, số cặp đỉnh phải xét là n2 (n là số đỉnh). Giải thuật có độ phức tạp thời gian là O(n3 ).
Đối với lưu trữ, giải thuật cần ít nhất là O(n) cho input, và O(|e|) không gian bộ nhớ để lưu lại đồ thị tầm nhìn. Năm 1979, Lozano-Perez và Wesley, trình bày giải thuật Naı̈ve cho khối đa diện [13]. - Thuật toán của Lee lần đầu tiên trình bày một giải pháp mới và có ý nghĩa, chạy trong thời gian O(n2 log n). Ông đã cải tiến giải thuật Naı̈ve bằng cách sử dụng một biến thể của thuật toán sweep-line, kết hợp cấu trúc dữ liệu là cây tìm kiếm nhị phân để xử lý việc chèn và xóa danh sách cạnh.
Nhờ sử dụng thuật toán sắp xếp tối ưu, thao tác tìm kiếm, chèn và xóa cạnh có độ phức tạp thời gian là O(log n).