● Breadth First Search:
Hình 3.1.1:Xuất phát từ đỉnh 1
Hình 3.1.2:Đi đến đỉnh 2, như vậy nút 1 là nút cha của nút 2
Hình 3.1.4: Xuất phát từ đỉnh 2,đi đến đỉnh 3,nút cha của đỉnh 3 là đỉnh 2 Hình 3.1.3:Hết tất cả các đỉnh
27
● Ưu điểm: Thuật toán tìm kiếm theo chiều rộng, ít phức tạp.
● Khuyết điểm: Độ tối ưu thấp
Do thao tác trong nhà nên địa hình thường là mặt phẳng chữ nhật đơn giản nên có thể sử dụng một số thuật toán thông thường có tính phức tạp thấp hơn để đáp ứng
Một số thuật toán có thể áp dụng trong nhà:
Chạy ôm tường: Độ phức tạp thấp nhưng chỉ có thể lau xung quanh phòng.
● Ưu điểm: Thuật toán đơn giản dễ vận hành.
● Khuyết điểm: Độ tối ưu thấp.
Hình 3.1.6 Minh họa thuật toán ôm tường Hình 3.1.5 : Xuất phát từ đỉnh 2, bôi
đen đỉnh 4, nút cha của đỉnh 4 là đỉnh 2
28
Chạy xoắn ốc:
● Ưu điểm: Diện tích lau được tối ưu hơn so với thuật toán trên.
● Khuyết điểm : Đòi hỏi độ phức tạp cao hơn về phần cứng (đòi hỏi các cảm biến về góc) cũng như phần mềm nhưng vẫn chưa đạt độ tối ưu tối đa.
Hình 3.1.7 Minh họa thuật toán xoắn ốc
Như đã thấy mặc dù diện tích lau đã được tăng lên đáng kể nhưng vẫn còn thiếu xót.
Chạy theo kiểu zic zag:
Độ phức tạp thấp có thể lau hầu hết phòng mà không bỏ sót những góc phòng. Ngoài ra thuật toán zic zag cũng có thể lau khắp phòng mặc dù có những vật dụng trong phòng điều mà chạy ôm tường và chạy xoắn ốc không làm được.
Giới thiệu thuật toán zic zag:
Như đã nêu ở trên trong nhiều thuật toán di chuyển xoắn ốc,ngẫu nhiên,ôm tường thì zic zag được sử dụng trong đề tài này vì ưu điểm là sẽ tối ưu được diện tích sàn nhà được lau
Ở lần lau đi robot có thể bỏ sót ở một bên của vật cản, nhưng ở lần lau về thì nó sẽ được robot lau.Vì vậy đảm bảo diện tích được lau là tối đa.
● Ưu điểm: Phần cứng đơn giản hơn so với thuật toán xoắn ốc diện tích lau tối ưu.
● Khuyết điểm: Để đạt tối ưu về diện tích được lau thì robot phải hoàn thành cả lượt đi lẫn về nên thời gian hoàn thành sẽ có phần lâu hơn các thuật toán khác.
29
Hình 3.1.8 Minh họa thuật toán zic zag Trong đó:Khoảng cách d chính bằng kích thước robot.
Trong tất cả các thuật toán nêu trên, thuật toán zic zag đạt được độ tối ưu cao nhất cả về phần cứng lẫn năng suất hoạt động của robot nên thuật toán zic zag được sử dụng làm giải thuật đường đi cho đồ án.