Skill Block(技能块)

Skill Block 是 Teach-and-Grow Learning 中可复用机器人行为的单元。它携带目标、可复用策略、适用条件、能够实现它的执行器,以及对效果的检验。被保留的是语义效果;物理实现——物体绑定、抓取几何、无碰撞运动——在每次执行时根据当前场景重新计算。

一次演示里有什么,值得留下什么

一次演示同时包含两样不同的东西:值得保留的策略,以及只属于某一个场景的物理细节。以把碗放到盘子上为例。在不同演示中,手可能从不同方向沿不同路径接近。稳定的部分是结构——获取指定的碗、确认已经拿住、移动到目标关系、把它放到盘子上。TGL 把这一结构与具体动作分开。

契约

一个技能块要回答实际问题:意图产生什么效果、何时适用、需要什么证据、哪些执行器能实现它、如何观察成功、允许什么恢复?验证必须指向意图中的物理效果。对于获取类技能块,仅仅夹爪闭合并不足以说明已经拿住物体;检验必须检查该块所声明的效果。

复用前的验证

候选技能块在被纳入技能库之前,要在示教演示之外的情形上评估:检查其支持范围、执行器兼容性、结果检验与恢复策略。较弱的候选会被收窄或修复。这使技能库的增长成为关于「一个行为及其适用条件」的显式决策,而不是多跑几个回合的副作用。

它在循环中的位置

执行时,工作计划是技能块的有序组合,而其余部分可以改变。效果通过就进入下一阶段;效果失败或不确定时,可以触发再一次观察、更换执行器,或修改后续路线。这正是 AI 智能体的推理与物理反馈相遇的地方:接下来做什么,取决于实际发生了什么。

常见问题

Skill Block 只是一段固定动作脚本吗?

不是。固定脚本规定了轨迹;Skill Block 规定的是意图效果与适用条件,并把动作委托给兼容的执行器,因此同一个块可以在几何不同的场景中运行。

Skill Block 与函数调用有什么不同?

函数调用假定前置条件成立。Skill Block 会声明其支持条件与结果检验,执行循环在允许进入下一阶段之前会检查效果。

相关页面