Đối với câu hỏi này giả định rằng những điều sau đây là không rõ:
- Kích thước và hình dạng của căn phòng
- Vị trí của robot
- Sự hiện diện của bất kỳ trở ngại
Cũng giả sử rằng những điều sau đây là không đổi:
- Kích thước và hình dạng của căn phòng
- Số lượng, hình dạng và vị trí của tất cả (nếu có) chướng ngại vật
Và giả sử rằng robot có các thuộc tính sau:
- Nó chỉ có thể di chuyển về phía trước theo gia số của các đơn vị tuyệt đối và quay theo độ. Ngoài ra, thao tác di chuyển sẽ trả về đúng nếu thành công hoặc sai nếu không di chuyển do vật cản
- Một nguồn năng lượng hợp lý không giới hạn (giả sử đó là một robot chạy bằng năng lượng mặt trời được đặt trên một trạm không gian luôn phải đối mặt với mặt trời mà không có trần nhà)
- Mọi chuyển động và xoay đều được thực hiện với độ chính xác tuyệt đối mọi lúc (đừng lo lắng về dữ liệu không đáng tin cậy)
Cuối cùng, hãy xem xét các thuộc tính sau của môi trường robot:
- Ở trên một trạm không gian không có trần, căn phòng là một khoảng cách an toàn nhưng gần với các sao chổi đi qua, vì vậy bụi (và băng) liên tục xả rác ra môi trường.
Tôi đã được hỏi một phiên bản đơn giản hơn nhiều của câu hỏi này (phòng là một hình chữ nhật và không có trở ngại, làm thế nào bạn di chuyển qua nó để đảm bảo bạn có thể vượt qua mọi phần ít nhất một lần) và sau khi tôi bắt đầu tự hỏi làm thế nào bạn sẽ tiếp cận điều này nếu bạn không thể 't đảm bảo hình dạng hoặc sự hiện diện của chướng ngại vật. Tôi đã bắt đầu xem xét điều này với thuật toán của Dijkstra , nhưng tôi rất thích nghe người khác tiếp cận vấn đề này như thế nào (hoặc nếu có câu trả lời được chấp nhận tốt cho vấn đề này? (Roomba làm như thế nào?)