第17章 能力匹配
第16章建立了完整的能力结构:
Capability
├── Definition
├── Parameter
├── Constraint
├── Input
└── Output
但能力存在,并不意味着系统当前就应该使用它。
ICAI 在面对一个现实场景时,需要首先回答:
当前是什么状态?我要达到什么目标?我现在知道什么?我有哪些能力?哪一个能力最适合当前目标?
这就产生了能力匹配(Capability Matching)。
能力匹配是连接:
Current State
+
Current Goal
+
Available Knowledge
+
Available Capability
↓
Capability Matching
最终确定:
Which Capability?
也就是:
从个体当前可用的能力集合中,寻找与当前状态、目标、知识和执行条件相适应的能力。
17.1 当前状态
**Current State(当前状态)**是能力匹配的起点。
系统不能脱离当前状态选择能力。
例如一个机器个体当前状态:
Position = A
Battery = 80%
Arm = Available
Target = B
Obstacle = Unknown
这些状态构成当前场景中的:
Current State
状态可以来自:
Sensor
Memory
Knowledge
Previous Action
Feedback
Environment
形成:
Perception
↓
State
当前状态描述:
个体现在处于什么情况。
例如:
RobotState
├── Position
├── Velocity
├── Battery
├── DeviceState
├── ObjectState
└── EnvironmentState
能力匹配必须首先读取这些状态。
17.2 当前目标
**Current Goal(当前目标)**决定系统为什么需要能力。
例如:
Current State:
Robot = A
Current Goal:
Reach B
系统需要寻找能够缩小:
Current State
↓
Goal State
之间差距的能力。
例如:
Current:
Position = A
Goal:
Position = B
那么可能需要:
Movement Capability
如果:
Current:
Object detected
Goal:
Object identified
那么需要:
Object Recognition Capability
所以能力匹配不是:
“我有什么能力?”
而是:
“为了当前目标,我需要什么能力?”
17.3 当前状态与目标之间的差异
能力匹配真正关注的是:
State → Goal
之间的差异。
可以定义:
Goal Gap
例如:
Current State
Position = A
Goal State
Position = B
得到:
State Gap
A → B
系统由此产生能力需求:
Required Capability:
Movement
另一个例子:
Current State:
Object = Unknown
Goal:
Object = Identified
得到:
State Gap:
Unknown → Known
于是:
Required Capability:
Recognition
因此:
能力匹配之前,必须先确定当前状态与目标状态之间存在什么变化需求。
可以表示为:
Current State
↓
State Analysis
↓
Goal
↓
State Gap
↓
Capability Requirement
17.4 可用知识
能力匹配不能只依赖能力库。
还需要判断:
当前个体掌握哪些知识?
例如系统拥有:
Movement Capability
但当前不知道:
Target Position
那么这个能力可能无法被实例化。
又例如:
Object Recognition Capability
存在,但是系统没有:
Object Knowledge
或者没有当前对象的相关知识。
此时能力匹配的结果可能是:
Capability Available
Knowledge Insufficient
因此:
Available Knowledge
决定了能力是否具有足够的认知基础。
17.5 可用能力
系统内部可能存在大量能力:
Capabilities
├── Recognition
├── Movement
├── Grasp
├── Calculation
├── Communication
├── Learning
└── Planning
但并不是所有能力当前都可用。
因此需要形成:
All Capabilities
↓
Capability Availability
↓
Available Capabilities
例如:
Movement = Available
Recognition = Available
Grasp = Unavailable
Communication = Available
为什么 Grasp 不可用?
可能因为:
Gripper = Fault
或者:
Target = Out of Reach
因此:
Capability Availability
本身就是能力匹配的重要条件。
17.6 能力可用性
一个能力是否可用,可以由多个条件共同决定:
Capability Availability
│
├── Definition Available
├── Knowledge Available
├── Input Available
├── Parameter Available
├── Constraint Satisfied
├── Method Available
├── Resource Available
└── Execution Condition Valid
因此:
Capability Exists
不等于:
Capability Available
例如:
Grasp Capability
虽然系统拥有这个能力,但:
Arm = Busy
那么:
Capability Exists = True
Capability Available = False
17.7 能力匹配
Capability Matching就是将:
Current State
Current Goal
Available Knowledge
Available Capability
进行关联和比较。
可以表示为:
Current State
+
Current Goal
+
Available Knowledge
+
Available Capabilities
↓
Capability Matching
↓
Matched Capabilities
例如:
Current State:
Object Unknown
Goal:
Identify Object
Knowledge:
Object Recognition Knowledge
Available:
Recognition Capability
Movement Capability
Grasp Capability
匹配结果:
Recognition Capability = Match
Movement Capability = Weak Match
Grasp Capability = No Match
于是:
Selected Capability
↓
Object Recognition
17.8 能力匹配不是名称匹配
这里非常重要。
能力匹配不是简单地:
Goal = Recognition
Capability = Recognition
所以:
Match = True
ICAI 的匹配应该是结构匹配。
例如:
Goal
Identify Cup
系统需要判断:
Input:
Image Available?
Knowledge:
Cup-related Knowledge Available?
Parameter:
Recognition Parameters Available?
Constraint:
Recognition Conditions Satisfied?
Method:
Recognition Method Available?
Resource:
Vision Sensor Available?
只有多个条件满足后,才形成真正的:
Capability Match
因此:
能力匹配是一个结构关系判断,而不是字符串比较。
17.9 能力匹配的基本模型
可以建立:
Capability Match
=
State Compatibility
+
Goal Compatibility
+
Knowledge Compatibility
+
Input Compatibility
+
Parameter Compatibility
+
Constraint Compatibility
+
Resource Compatibility
概念上可以表示:
Current State
│
↓
Current Goal ──→ Capability Matching ←── Available Knowledge
↑
│
Available Capability
最终产生:
Match
No Match
Partial Match
17.10 完全匹配与部分匹配
能力匹配不一定只有:
Match / No Match
还可以存在:
Full Match
Partial Match
Weak Match
Unavailable
例如:
Movement Capability
当前目标:
Move to B
但是:
Target Position = Known
Path = Unknown
Obstacle = Unknown
那么能力并不是完全不可用。
它可能属于:
Partial Match
系统可以进一步寻找:
Planning Capability
于是:
Planning Capability
↓
Generate Path
↓
Movement Capability
↓
Execute Movement
因此能力匹配可以产生能力组合需求。
17.11 能力匹配与知识匹配
知识匹配与能力匹配并不是同一个过程。
知识匹配回答:
我有没有相关知识?
能力匹配回答:
我能不能利用这些知识完成当前目标?
例如:
Knowledge:
Door
Door Handle
Door Open/Close
说明系统具有相关知识。
但是:
Capability:
Open Door
可能不存在。
那么:
Knowledge Match = True
Capability Match = False
反过来:
Capability:
Open Door
存在,但是:
Door Position = Unknown
那么:
Capability Exists = True
Capability Available = False
因此:
Knowledge
↓
Knowledge Matching
↓
Capability Matching
二者存在连续关系。
17.12 能力匹配与目标
目标是能力匹配的方向。
可以定义:
Goal
↓
Required Capability
↓
Capability Matching
↓
Available Capability
例如:
Goal:
Move object to location B
这个目标可能不是一个能力能够直接完成。
系统可能分解为:
Goal
│
├── Find Object
│ ↓
│ Recognition Capability
│
├── Determine Position
│ ↓
│ Perception Capability
│
├── Grasp Object
│ ↓
│ Grasp Capability
│
└── Move Object
↓
Movement Capability
于是一个目标产生多个能力需求:
Goal
↓
Capability Requirements
↓
Capability Matching
这为后面的任务分解与能力组合奠定基础。
17.13 能力匹配与当前状态
能力匹配还必须考虑状态变化。
例如:
t1:
Arm = Available
此时:
Grasp Capability = Available
执行另一个动作之后:
t2:
Arm = Busy
那么:
Grasp Capability = Unavailable
因此:
Capability Match
不是永久结果。
它应该依赖:
Current State
重新计算。
即:
State(t1)
↓
Capability Match(t1)
State(t2)
↓
Capability Match(t2)
这使能力匹配成为一个动态认知过程。
17.14 能力匹配的运行流程
在 ICAI 中,可以建立:
Current Scene
↓
Current State
↓
Current Goal
↓
State-Goal Analysis
↓
Required Capability
↓
Available Knowledge
↓
Available Capability
↓
Capability Compatibility
↓
Capability Matching
↓
Matched Capability
↓
Capability Instance
↓
Method Selection
其中第15章负责:
Capability
↓
Capability Instance
第17章则负责:
Current Situation
↓
Which Capability?
这两个过程需要明确区分。
17.15 能力匹配结果
能力匹配最终可以产生一个结构化结果:
CapabilityMatch
│
├── Goal
├── CurrentState
├── RequiredCapability
├── CandidateCapabilities
├── MatchedCapability
├── MatchLevel
├── KnowledgeSupport
├── ParameterSupport
├── ConstraintStatus
└── Availability
例如:
Goal:
Move Robot to B
Current State:
Position = A
Battery = 80%
Required Capability:
Movement
Candidate:
Movement
Planning
Grasp
Matched:
Movement
Match Level:
High
Knowledge Support:
Available
Parameter Support:
Available
Constraint:
Satisfied
Availability:
Available
于是系统得到:
Movement Capability
↓
Capability Instance
然后进入:
Method Selection
17.16 能力匹配的核心闭环
能力匹配不是一次性的查询。
它可以随着执行反馈不断重新计算:
Current State
↓
Goal
↓
Capability Matching
↓
Capability Selection
↓
Execution
↓
Feedback
↓
New State
↓
Capability Matching
因此:
State₁
↓
Match₁
↓
Action₁
↓
State₂
↓
Match₂
↓
Action₂
这意味着 ICAI 的能力选择实际上是一个动态能力匹配循环。
17.17 第15、16、17章的关系
到这里,前三章可以形成非常清晰的连续结构。
第15章:知识到能力
解决:
知识如何形成能力?
Knowledge
↓
Parameter
↓
Capability Instance
第16章:能力结构
解决:
能力由什么组成?
Definition
Parameter
Constraint
Input
Output
第17章:能力匹配
解决:
当前应该使用哪个能力?
Current State
+
Current Goal
+
Available Knowledge
+
Available Capability
↓
Capability Matching
三章连接起来:
Knowledge
↓
Capability Formation
↓
Capability Structure
↓
Available Capability
↓
Current State + Current Goal
↓
Capability Matching
↓
Capability Instance
↓
Method Selection
17.18 本章核心结论
第17章可以归纳为:
能力匹配是人工个体根据当前状态、当前目标、可用知识和可用能力,对候选能力进行结构兼容性判断的过程。它不是简单的名称匹配,而是对能力的输入、参数、约束、知识支持、资源状态和目标适配性进行综合判断。能力匹配的结果决定当前应该激活哪一种能力,并进一步形成 Capability Instance,进入方法选择、行为生成和执行阶段。
最终形成:
Current State
↓
Current Goal
↓
State-Goal Gap
↓
Required Capability
↓
Available Knowledge
↓
Available Capability
↓
Capability Matching
↓
Capability Instance
↓
Method Selection
↓
Behavior
↓
Action
↓
Execution
↓
Feedback
↓
New State
↺
Capability Matching
因此,第17章实际上建立了 ICAI 从“拥有能力”走向“选择能力”的关键机制:第15章解决能力如何形成,第16章解决能力是什么,第17章解决个体在具体场景中如何判断“现在应该使用什么能力”。