Bỏ qua tới nội dung
LSLab

Nhiều robot lau chia khu vực và dùng chung trạm thế nào?

  • Nâng cao
  • Bài viết
  • Từ 18 tuổi
  • 8 phút đọc
Ba robot ở các vùng sàn nhuộm màu xanh lá, vàng cát và xanh lam, cùng một trạm ở mép chung trong văn phòng sáng.

Một đội robot lau chia sàn thành các khu vực rời nhau, giao mỗi khu cho một robot, và cho cả đội cùng dùng một trạm theo lượt. Bộ điều khiển trung tâm đứng giữa: nó gán khu, cấp quyền vào trạm và giao lại khu khi một robot hỏng hoặc pin thấp. Đó là thiết kế minh họa.

Mục lục
Mỗi khu có một robot riêng, còn cả đội cùng đi về một trạm.
  • Khu phòng họp
  • Khu bàn làm việc
  • Khu hành lang
  • Trạm dùng chung
  • Robot lau, mỗi khu một con

Bạn sẽ học được gì

  • Mô tả cách chia sàn thành khu vực và giao mỗi khu cho một robot, theo kiểu gán tập trung hoặc đấu giá.
  • Giải thích cách nhiều robot dùng chung một trạm mà không chen nhau, và ai cấp quyền vào trạm.
  • Theo dõi một khu được giao lại khi robot hỏng, rồi đọc các chỉ số của cả đội.

Cần biết trước

Bài này nối tiếp các bài về điều khiển tập trung, về phủ kín một phòng và về một lượt vào trạm. Bạn chỉ cần nhớ rằng bộ điều khiển trung tâm gom trạng thái của mọi robot và mỗi robot tự lo phản xạ an toàn.

Chia sàn thành khu vực và giao cho robot bằng cách nào?

Bộ điều khiển chia khu vực cho sàn, tức chia sàn thành các khu rời nhau, rồi gán mỗi khu cho một robot. Có ba cách chia phổ biến trong thiết kế minh họa: theo phòng, theo lưới ô đều, hoặc theo đồ thị trong đó mỗi nút là một phòng hay hành lang và mỗi cạnh là một cửa.

Một cách chia toán học là chia Voronoi. Một nghiên cứu về phủ vùng nhiều robot mô tả việc chia môi trường thành các miền bằng thuật toán Lloyd để điều chỉnh một phép chia Voronoi (Voronoi partition). Hai tên không chỉ cùng một đối tượng: phép chia là kết quả hình học, còn Lloyd là cách lặp để điều chỉnh nó.

Lợi ích lớn nhất của khu vực rời nhau là các robot không chồng lên nhau. Một khảo sát về phân bổ nhiệm vụ trong mạng robot nêu rằng khi mỗi miền được giao cho một robot thì không có chồng lấn giữa các robot. Trong mô hình này, hai robot hiếm khi cùng vào một ô sàn. Chỗ còn dùng chung chỉ là cửa, hành lang và trạm.

Gán khu cho robot là bài toán phân bổ nhiệm vụ (task allocation). Theo một nghiên cứu về phân bổ nhiệm vụ đa robot, bài toán này thường được giải bằng cách dựa trên thị trường hoặc cách tối ưu hóa. Cùng nghiên cứu mô tả cách dựa trên thị trường là một tối ưu hóa phi tập trung, dùng đấu giá (auction) với các giá thầu để đi tới một phép gán. Trong một phiên đấu giá điển hình, người đấu giá thông báo nhiệm vụ cho mọi robot, và các robot tính giá thầu rồi gửi lại. Giao thức Contract Net là ví dụ kinh điển: bên giao việc thông báo, bên nhận việc đặt giá.

Gán tập trung đi một chiều từ bộ điều khiển tới khu; đấu giá có thêm chiều giá thầu quay về.
  • Bộ điều khiển gán tập trung
  • Ba khu vực, mỗi khu một robot
  • Mũi tên giao khu
  • Người đấu giá
  • Thông báo nhiệm vụ
  • Robot đặt giá
  • Giá thầu gửi lại

Hai kiểu gán đổi chỗ quyết định, nên bảng dưới so sánh chúng cho đội robot lau. Các ô có liên kết dựa trên nguồn đã nêu; phần còn lại là suy luận thiết kế.

Tiêu chíGán tập trungĐấu giá
Ai quyết địnhBộ điều khiển chọn robot cho từng khuRobot đặt giá, người đấu giá chọn
Cần gì ở robotChỉ báo cáo vị trí và pinĐủ sức tính giá thầu và liên lạc
Thế mạnhChuỗi chỉ huy rõ và dựng nhanh nhờ thông tin toàn cụcChia việc theo thông tin cục bộ của từng robot
Điểm yếuKém linh hoạt khi hoàn cảnh đổiNhiều công trình vẫn dùng một người đấu giá tập trung, làm tăng thời gian tính

Với một bộ điều khiển đã có sẵn trên máy tính, gán tập trung là điểm bắt đầu hợp lý. Đấu giá đáng thử khi robot đủ sức tính và số robot tăng nhiều.

Nhiều robot dùng chung một trạm thế nào?

Chỉ một robot vào trạm mỗi lần, và bộ điều khiển cấp quyền vào trạm theo hàng chờ. Trạm dùng chung (shared dock) tiết kiệm chi phí, nhưng biến trạm thành chỗ tắc nghẽn nếu nhiều robot muốn nạp cùng lúc.

Xếp lịch sạc (recharge scheduling) giải đúng chuyện này. Một nghiên cứu về chọn robot và xếp lịch sạc nêu mục tiêu quản lý việc sạc của các robot để tránh xung đột hoặc chen chúc. Một giao thức xếp lịch khác cho các robot quay về sạc lần lượt từng robot tại một trạm sạc duy nhất. Nếu dự đoán nhiều robot đến cùng lúc, giao thức dời một robot sang đến sớm hơn, và giữ một khoảng cách thời gian tối thiểu giữa các lần sạc.

Trong thiết kế minh họa, luồng đi như sau:

  1. Robot báo pin thấp hoặc bình nước cạn và xin vào trạm.
  2. Bộ điều khiển xếp robot vào hàng chờ, ưu tiên robot có ít pin dự trữ nhất.
  3. Mỗi robot chờ tại vị trí riêng ngoài lối tiếp cận. Robot đã được cấp quyền mới đi tới điểm chuẩn bị; quyền được giải phóng sau khi xác nhận robot đã rời trạm, không chỉ khi pin đầy.
  4. Trạm báo "trống", bộ điều khiển cho robot đầu hàng vào.
  5. Sau khi nạp xong, robot rời trạm; trạm xác nhận lối vào đã trống rồi trung tâm mới cấp quyền cho robot kế tiếp.

Để hàng chờ ngắn, nên cho các robot bắt đầu lệch nhau, vì các robot xuất phát cùng lúc sẽ cạn pin gần như cùng lúc.

Robot chờ ở khung nét đứt cho tới lượt, nên trạm chỉ có một robot tại mỗi thời điểm.
  • Robot, mỗi hàng một con
  • Chờ ở điểm chuẩn bị
  • Đang nạp tại trạm
  • Trạm: một robot mỗi lần
  • Trục thời gian

Khi một robot hỏng hoặc pin thấp, khu của nó đi đâu?

Bộ điều khiển giao phần việc còn lại của khu đó cho một robot khác, hoặc giữ lại chờ robot ban đầu trở về. Bộ điều khiển nhận ra sự cố nhờ nhịp tim và báo cáo kẹt, như các bài về mất liên kết đã nêu.

Việc giao lại diễn ra theo các bước:

  1. Giữ khu ở trạng thái chưa rõ khi robot mất liên lạc, giữ bản đồ tiến độ và thu hồi quyền nhiệm vụ cũ. Chỉ giao lại sau khi xác nhận robot cũ đã dừng, rời vùng hoặc vùng đó đã được cô lập.
  2. Chọn robot có khu của mình đã xong hoặc sắp xong, đủ pin để làm thêm và để về trạm.
  3. Gán phần ô chưa lau cho robot đó. Nó chỉ lau các ô còn lại.
  4. Khi robot ban đầu hồi phục, bộ điều khiển cho nó nhận lại khu, hoặc giao khu mới.

Chia đều diện tích chưa chắc cân tải. Một nghiên cứu phủ vùng đề xuất bộ điều khiển có xét năng lượng, điều chỉnh trọng số của robot theo động học năng lượng rồi chia vùng theo đó. Ý chính áp dụng được cho đội robot lau: robot nào hao pin nhanh hơn nên nhận khu nhỏ hơn.

Phần chưa lau chỉ được giao lại sau khi robot cũ đã dừng, rời khu hoặc được cô lập khỏi vùng làm việc.
  • Robot hỏng
  • Ô đã lau và ô chưa lau trước khi giao lại
  • Ô chưa lau sau khi được giao
  • Robot nhận việc
  • Đường giao lại khu

Đo đội bằng chỉ số nào, và mô hình này hết đúng khi nào?

Ba chỉ số đủ để đọc sức khỏe của đội: thời gian xong cả đội, thời gian chờ trạm và thời gian rảnh của robot. Thời gian xong cả đội là lúc robot cuối cùng lau xong, nên khu chậm nhất quyết định kết quả. Thời gian chờ trạm cho thấy trạm có là cổ chai. Thời gian rảnh cho thấy có khu nào quá nhỏ.

Robot chậm nhất quyết định lúc cả đội xong, và các khoảng rảnh của robot khác là phần thời gian bỏ phí.
  • Thời gian làm khi chia đều diện tích
  • Robot chậm nhất quyết định lúc xong
  • Thời gian rảnh
  • Lúc cả đội xong
  • Thời gian làm khi chia theo năng lượng
  • Lúc cả đội xong sớm hơn
  • Robot

Mô hình có giới hạn rõ, bảng dưới nêu cách thiết kế minh họa xử lý chúng.

Tình huốngHệ quảCách xử lý trong mô hình
Đồ đạc bị dờiRanh giới khu và ô lau saiChia lại khu sau khi quét lại bản đồ
Robot kẹt dưới gầm giườngTrạng thái có thể chưa rõXác nhận dừng hoặc cô lập vùng trước khi giao lại
Wi-Fi chập chờnRobot không xin được trạm và vị trí có thể chưa rõRobot chỉ về khi đủ điều kiện cục bộ; không tự vào trạm hay giao chồng khu
Trạm hỏngCả đội không nạp đượcChưa có cách xử lý trong mô hình, cần người can thiệp

Trong mô hình tập trung, đơn vị trung tâm cần liên lạc được với mọi robot. Vì vậy mọi quyết định giao khu và cấp trạm đều phụ thuộc vào liên kết, và phần phản xạ ở robot là lưới an toàn khi liên kết mất.

Ví dụ trong đời sống

Một văn phòng nhỏ có ba khu: phòng họp, khu bàn làm việc và hành lang, mỗi khu một robot. Đây là kịch bản thiết kế, chưa phải kết quả thử.

Buổi sáng, bộ điều khiển giao ba khu và cho ba robot xuất phát lệch nhau. Robot ở hành lang hết pin dự trữ trước, xin vào trạm và được vào ngay vì trạm đang trống. Robot ở phòng họp lau xong sớm, nạp một lượt rồi quay lại.

Robot ở khu bàn làm việc báo kẹt dưới một bàn thấp, rồi im lặng. Hết thời hạn chờ, bộ điều khiển giữ trạng thái chưa rõ và khóa vùng đó. Chỉ khi người xác nhận robot đã dừng và đưa nó ra khỏi vùng, trung tâm mới cho phép giao lại. Khu của nó còn nhiều ô chưa lau. Bộ điều khiển chọn robot phòng họp, vì khu này đã xong và pin còn dự trữ, rồi gán các ô chưa lau của khu bàn làm việc cho robot đó. Robot cũ khi nối lại phải đối chiếu phiên và mã nhiệm vụ; lệnh giao khu cũ không được tự chạy lại.

Một lúc sau cả đội dùng lại trạm, nhưng lần này hàng chờ ngắn vì ba robot đã lệch nhịp.

Hiểu lầm thường gặp

Chia đều diện tích thì cả đội xong cùng lúc. Khu có nhiều đồ đạc lâu hơn khu trống, và robot hao pin khác nhau. Vì vậy một nghiên cứu phủ vùng đề xuất điều chỉnh khu theo động học năng lượng của robot.

Thêm robot luôn làm xong sớm hơn. Mỗi robot thêm cũng thêm một lượt chờ trạm. Khi hàng chờ dài, thời gian chờ ăn hết phần thời gian lau tiết kiệm được.

Mỗi robot tự quyết khi nào vào trạm cũng được. Khi không có ai điều phối, hai robot có thể cùng tới trạm. Trong thiết kế này bộ điều khiển cấp quyền vào trạm, và đổi lại, robot mất liên lạc thì không xin được trạm.

Câu hỏi thường gặp

Mỗi robot lau một khu hay nhiều robot cùng lau một phòng?

Thiết kế minh họa giao mỗi khu cho một robot, để các robot không chồng lên nhau. Một phòng rất lớn có thể chia thành nhiều khu nhỏ, mỗi khu một robot.

Một trạm đủ cho bao nhiêu robot?

Còn tùy thời gian nạp và khoảng cách giữa hai lần về trạm của mỗi robot. Nên đo thời gian chờ trạm trên hệ thật, và thêm trạm khi hàng chờ dài.

Robot hỏng thì khu của nó có bị bỏ không?

Không bị bỏ. Bộ điều khiển giữ bản đồ ô đã lau và giao phần còn lại cho robot khác, hoặc giữ chờ robot ban đầu trở về.

Tóm tắt

  • Chia sàn thành khu vực rời nhau, mỗi khu một robot, để các robot không chồng lên nhau; gán khu bằng bộ điều khiển hoặc đấu giá.
  • Trạm dùng chung cần hàng chờ do bộ điều khiển cấp quyền, và lịch xuất phát lệch nhau giúp hàng chờ ngắn.
  • Khi robot hỏng, khu được giao lại với bản đồ ô đã lau; thời gian xong cả đội, thời gian chờ trạm và thời gian rảnh cho biết mô hình còn hợp hay không.

Thuật ngữ trong bài

Tên tiếng Việt, tên tiếng Anh và nghĩa dùng trong bài. Di chuột, chạm hoặc dùng phím Tab tới từ có gạch chân chấm để xem giải thích ngay khi đọc.

phân bổ nhiệm vụtask allocation
Giao các nhiệm vụ cho robot dựa trên khả năng của robot và yêu cầu của nhiệm vụ.
đấu giáauction
Cách giao nhiệm vụ trong đó người đấu giá thông báo nhiệm vụ, các robot gửi giá thầu và người đấu giá chọn robot nhận.
chia VoronoiVoronoi partition
Cách chia một môi trường thành các miền, mỗi miền gắn với một robot, theo thuật toán Lloyd.
trạm dùng chungshared dock
Một trạm duy nhất mà nhiều robot dùng lần lượt để nạp.
xếp lịch sạcrecharge scheduling
Quản lý thời điểm các robot đi sạc để tránh xung đột hoặc chen chúc ở trạm.
chia khu vựczone partition
Chia sàn thành các miền rời nhau, mỗi miền giao cho một robot nên các robot không chồng lên nhau.

Bài này chưa được đánh dấu là đã xem

Thấy nội dung sai hoặc chưa an toàn?

Báo cho quản trị viên qua email. Thư có sẵn tên bài và đường dẫn.

Báo lỗi bài này
Xem tất cả bài của chủ đề

Nguồn

Các nguồn này viết cho người đọc lớn hơn. Nếu thấy khó, hãy đọc cùng người lớn.