Nếu nhấc cái bát lên, mọi thứ trong bát đi theo. Nếu rút quyển sách dưới cùng, cả chồng đổ. Hai quan hệ này — chứa đựng và nâng đỡ — chi phối phần lớn suy luận về một cảnh có nhiều vật.
Vì sao hai quan hệ này đặc biệt
Chúng khác với các quan hệ không gian thông thường ở một điểm: chúng dự đoán được hệ quả của hành động.
Biết vật A nằm bên trái vật B không cho biết gì về việc nhấc A lên thì B ra sao. Nhưng biết A đang nâng đỡ B thì suy ra ngay: nhấc A, B sẽ rơi.
Vì vậy hai quan hệ này không chỉ mô tả cảnh mà mã hoá cấu trúc nhân quả của nó.
Với robot, đây chính là thông tin cần cho lập kế hoạch: thứ tự thao tác, cái gì phải nhấc trước, cái gì sẽ kéo theo cái gì.
Có bằng chứng cho thấy trẻ nhỏ nắm được các quan hệ này rất sớm, và tỏ ra ngạc nhiên khi một vật lơ lửng không có gì đỡ.
Chứa đựng khó hơn vẻ ngoài
Quan hệ chứa đựng có nhiều mức, và chúng dẫn tới hệ quả khác nhau.
Chứa hoàn toàn: vật nằm trọn trong, nghiêng vật chứa thì vật bên trong đi theo tới một góc nhất định rồi đổ ra.
Chứa một phần: vật thò ra ngoài, nên hành vi khi nghiêng khác hẳn.
Đặt trên chứ không chứa: nhìn từ trên xuống có thể trông giống chứa đựng, nhưng nghiêng nhẹ là rơi ngay.
Phân biệt ba trường hợp này từ một góc nhìn thường không làm được — cần nhìn từ góc khác hoặc cần biết hình dạng ba chiều.
Đây là một ví dụ cụ thể của việc tri giác chủ động cần thiết cho suy luận: không di chuyển để nhìn thì không phân biệt được, và suy luận dựa trên phân loại sai sẽ dẫn tới hành động sai.
Nâng đỡ và bài toán ổn định
Câu hỏi một chồng đồ có đổ không là câu hỏi vật lý khó nếu tính chính xác, nhưng con người trả lời khá tốt bằng trực giác.
Các yếu tố quyết định: trọng tâm của phần trên có nằm trong vùng đỡ của phần dưới không, ma sát giữa các mặt tiếp xúc, và độ cứng của các vật.
Con người ước lượng được điều này từ vẻ ngoài với độ chính xác đủ dùng — và cũng sai theo những kiểu có hệ thống, ví dụ đánh giá thấp ảnh hưởng của độ nghiêng nhỏ.
Với robot, bài toán này quan trọng ở hai chỗ.
Khi lấy vật ra khỏi chồng: lấy sai thứ tự thì phần còn lại đổ.
Khi đặt vật lên: đặt sai chỗ thì cả chồng mất ổn định.
Cách xử lý thực dụng trong nhiều hệ thống: tránh tạo ra chồng cao ngay từ đầu, thay vì cố dự đoán chính xác độ ổn định. Đây lại là một trường hợp sửa môi trường rẻ hơn sửa hệ thống.
Suy ra thứ tự thao tác
Khi đã biết các quan hệ nâng đỡ trong một cảnh, thứ tự thao tác suy ra khá trực tiếp.
Quy tắc cơ bản: lấy từ trên xuống, đặt từ dưới lên. Không lấy vật đang đỡ vật khác trước khi lấy vật được đỡ.
Quy tắc này nghe hiển nhiên nhưng cần được mã hoá tường minh, vì hệ thống không tự có.
Với các cảnh phức tạp hơn, quan hệ nâng đỡ tạo thành một cấu trúc phụ thuộc, và thứ tự hợp lệ là thứ tự tôn trọng cấu trúc đó.
Điều làm bài toán khó trong thực tế không phải là suy ra thứ tự mà là nhận biết đúng các quan hệ từ dữ liệu cảm biến. Từ một ảnh, biết vật nào đang đỡ vật nào không phải lúc nào cũng rõ, đặc biệt khi tiếp xúc bị che khuất.
Lỗi thường gặp và cách phòng
Ba lỗi hay xuất hiện khi hệ thống suy luận về hai quan hệ này.
Nhầm đặt cạnh với đỡ. Hai vật chạm nhau theo phương ngang không phải quan hệ nâng đỡ, nhưng từ một góc nhìn có thể trông giống.
Bỏ sót vật đỡ bị che. Vật trông như lơ lửng thật ra đang tựa vào thứ gì đó ngoài tầm nhìn.
Giả định tiếp xúc là cứng. Vật đặt trên bề mặt mềm hành xử khác, và điều này ảnh hưởng tới cả ổn định lẫn lực cần dùng.
Cách phòng chung cho cả ba: kiểm chứng bằng hành động nhẹ trước khi cam kết. Đẩy nhẹ để xem vật có cố định không, nhấc thử một chút để xem có gì đi theo không.
Cách này tốn vài giây nhưng thay thế được cho suy luận không chắc chắn, và nó chính là điều con người làm khi gặp một đống đồ lạ.
Câu hỏi thường gặp
Vì sao khó phân biệt chứa đựng với đặt lên từ một góc nhìn?
Vì từ trên xuống, một vật nằm trong hõm và một vật đặt trên mặt phẳng có thể trông giống nhau. Cần nhìn từ góc nghiêng hoặc cần thông tin hình dạng ba chiều để phân biệt, và đây là ví dụ cụ thể cho thấy tri giác chủ động cần thiết cho suy luận.
Robot nên dự đoán độ ổn định của chồng đồ thế nào?
Dự đoán chính xác rất khó vì phụ thuộc ma sát và hình dạng tiếp xúc. Cách thực dụng hơn trong nhiều hệ thống là tránh tạo chồng cao ngay từ đầu, và khi phải xử lý chồng có sẵn thì lấy từ trên xuống kèm kiểm chứng nhẹ.
Quy tắc thứ tự thao tác là gì?
Lấy từ trên xuống và đặt từ dưới lên, không lấy vật đang đỡ vật khác trước khi lấy vật được đỡ. Quy tắc đơn giản nhưng cần mã hoá tường minh vì hệ thống không tự có, và phần khó thực tế là nhận biết đúng quan hệ từ dữ liệu.
Vì sao nên đẩy nhẹ trước khi thao tác?
Vì suy luận từ ảnh về quan hệ nâng đỡ thường không chắc chắn, nhất là khi điểm tiếp xúc bị che. Một tác động nhẹ cho thông tin trực tiếp về việc vật có cố định không và có gì đi theo không, thay cho một suy luận có thể sai.
Đọc thêm trong So sánh với AI ngôn ngữ và Nhận thức qua cơ thể.