Affordance
- 別名: affordances, affordance detection, action possibilities
- カテゴリ: Planning & manipulation › Manipulation
- タグ: perception, manipulation, grasping, robot-learning, cognitive-robotics
物体や環境が特定のエージェントに可能にする行動。たとえば、つかめる取っ手や、置かれた物体を支えられる面。
定義
アフォーダンス(Affordances)とは、環境が特定のエージェントに提供する行為の可能性である。この用語は心理学者 James J. Gibson が導入したもので、彼は、動物は世界を部分的には自分がそれで何をできるかという観点から知覚すると論じた。椅子は座ることをアフォードし、取っ手はつかむことを、平らな面は置くことをアフォードする。アフォーダンスは関係的なものであり、物体と、エージェントの身体および能力の両方に依存する。
ロボティクスにおけるアフォーダンス推論とは、どんな行動がどこで可能かを予測することである。アフォーダンス検出は、画像や点群の各部分に、把持、切る、注ぐ、押す、収めるといった行動のラベルを付ける。アフォーダンスマップは、各画素や各位置にスコアを割り当てる。たとえば、その点での把持が成功する見込みがどれだけあるかである。こうした表現は、物体の名前で止まらずに、知覚を行動へ直接結びつける。
この関係的な性質はロボットにとって重要である。カップの取っ手は、それを通る大きさの手には把持をアフォードするが、大型の平行グリッパーにはアフォードしない。段差は脚ロボットには登ることをアフォードするが、車輪型ロボットにはアフォードしない。したがって優れたアフォーダンスモデルは、物体のカテゴリだけでなく、ロボットの身体性(エンボディメント)も考慮する。
大規模な言語モデルや視覚モデルとともに、アフォーダンスはグラウンディングの信号としても働く。言語モデルはタスクの手順を提案できるが、現在のシーンでロボットがそのうちどの手順を実際に実行できるかは知らない。SayCan のようなシステムは、言語モデルの提案と、各スキルが現在の状態から成功しうるかについての学習された推定とを組み合わせた。これは Gibson の意味でのアフォーダンスである。
重要な理由
ロボットは、物体が何であるかだけでなく、それで何ができるかを知る必要がある。アフォーダンスは知覚を行動に結びつけるものであり、だからこそ把持、道具の使用、言語に導かれたマニピュレーションのいたるところに現れる。
主な用途
- 画像や点群からの把持と配置の予測
- 取っ手、ふた、注ぎ口など、道具の使用や部品レベルのマニピュレーション
- 言語による指示を、ロボットが実際に実行できる行動に結びつけること
- ロボットを支えられる地形と支えられない地形でのナビゲーションと移動
実際の使われ方
家庭用のマニピュレーションシステムを構築するチームは、RGB-D 画像の各画素について、ロボットのグリッパーがどこで把持でき、物体をどこに置けるかを予測するネットワークを訓練することがある。タスクプランナーはそれらのマップを参照する。引き出しを開けるには把持可能な取っ手の領域を探し、カップを置くには置くことのできる面を探す。訓練データは多くの場合、ロボット自身の把持の試行から得られ、成功したかどうかでラベル付けされるので、予測はほかでもないそのグリッパーを反映したものになる。
よくある誤解
- アフォーダンスは物体だけの性質である — 物体と、エージェントの身体および能力との間の関係である
- アフォーダンス検出は物体認識と同じである — 認識は物体の名前を与えるが、アフォーダンス検出はそれがどんな行動をどこで支えるかを予測する
- あるロボットで学習したアフォーダンスは別のロボットにそのまま移せる — グリッパーや身体が違えば、可能な行動も変わりうる
知っておくべき人
- マニピュレーションと把持の研究者
- 行動指向の視覚モデルを構築する知覚エンジニア
- 言語モデルとロボットのスキルを結びつける研究者
関連技術
- 把持計画(Grasp Planning)
- セマンティックセグメンテーション(Semantic Segmentation)
- 視覚言語モデル(Vision-Language Models)
- タスク計画(Task Planning)
- 点群処理(Point Cloud Processing)
関連用語
関連プロジェクト
- LeRobot: HuggingFace ML library for real-world robotics in PyTorch
- OpenPI: Physical Intelligence VLA foundation models for general robot control
- Open3D: Modern library for 3D point cloud processing, mesh operations, and 3D machine learning
- PCL: Industry-standard C++ library for point cloud processing in robotics perception
- Isaac Lab: NVIDIA robot learning framework: one task API across Newton, PhysX and Isaac Sim
- NVIDIA Isaac GR00T: NVIDIA open foundation model for humanoid robot reasoning and skills