首页 理论 架构 工程 文档 白皮书 著作 研究 案例 下载 博客 关于 开始使用 →

第152章 Action Condition 动作条件

第152章 Action Condition

动作条件

Dynamic Action(动态动作) 之后,需要进一步解决一个核心问题:

机器究竟依据什么条件决定当前应该执行哪个动作?

如果 Action 是动态生成的,那么就不能简单表示为:

Task
↓
Action

而应该建立:

Task
+
Current State
+
Condition
+
Goal
+
Capability
↓
Action

因此,本章研究 Action Condition(动作条件)


152.1 Action 不是无条件执行

一个动作真正成立,需要满足一定条件。

例如:

Action = Grip

并不意味着机器看到鸡蛋就一定执行 Grip。

它可能需要满足:

Object Detected
+
Object Reachable
+
Hand Available
+
Grip Force Safe
+
No Blocking Obstacle

才产生:

Grip

因此:

Action
=
Action
+
Condition

更准确地说:

Condition
→
Action Enabled

152.2 动作条件与对象条件

对象本身具有状态:

Egg
├── Position
├── Size
├── Orientation
├── Fragility
├── Stability
└── Surface

环境也具有状态:

Scene
├── Obstacle
├── Distance
├── Contact
├── Temperature
└── Available Space

机器自身也具有状态:

Machine
├── Hand State
├── Force
├── Velocity
├── Battery
└── Capability

因此 Action Condition 不是单一变量。

而是:

Object State
+
Environment State
+
Machine State
+
Relation
+
Goal

共同构成:

Action Condition

152.3 条件决定动作是否成立

例如:

Object = Egg
Goal = Pick Up

可能存在:

Condition A:
Egg Stable
→
Grip

Condition B:
Egg Slippery
→
Reduce Force

Condition C:
Egg Blocked
→
Reposition

Condition D:
Egg Falling
→
Emergency Catch

所以:

Same Object
+
Same Goal

仍然可能产生:

Grip
Reduce Force
Reposition
Emergency Catch

不同 Action。


152.4 Action Condition 是动态的

最重要的一点是:

动作条件本身也会随时间变化。

例如:

t0:
Egg Stable

于是:

Grip

但是:

t1:
Egg Starts Sliding

条件改变:

Grip
↓
Reduce Force

继续变化:

t2:
Egg Falling

动作再次改变:

Reduce Force
↓
Catch

形成:

Condition(t0)
→
Action(t0)

Condition(t1)
→
Action(t1)

Condition(t2)
→
Action(t2)

因此:

Condition(t)
≠
Condition(t+1)

自然可能导致:

Action(t)
≠
Action(t+1)

152.5 从 Action Rule 到 Action Condition

传统规则可能写成:

IF Egg
THEN Grip

这种规则过于简单。

更合理的结构是:

IF
Object = Egg
AND
Distance < ReachableRange
AND
Stable = True
AND
Force < SafeLimit
THEN
Grip

甚至进一步:

IF
Current State
+
Relation
+
Capability
+
Goal
满足条件
THEN
Generate Action

因此系统不再保存大量固定动作,而是保存:

Condition
→
Action Relationship

152.6 Action Condition 与 Method 的关系

现在可以形成更完整的层次:

Goal
 ↓
Method
 ↓
Action Condition
 ↓
Action

例如:

Goal:
Pick Up Egg

Method:
Safe Grasp

Condition:
Egg Reachable
+
Stable
+
No Obstacle
+
Safe Force

Action:
Approach
→
Grip
→
Lift

如果条件变化:

Egg Slippery

那么 Method 可能仍然是:

Safe Grasp

但 Action 改变为:

Approach Slowly
→
Reduce Force
→
Grip
→
Lift Slowly

这说明:

Method 可以保持不变,而 Action 根据 Condition 动态变化。


152.7 Action Condition 的多条件结构

动作条件可以进一步表示为:

C(Action)
=
Object Condition
+
Spatial Condition
+
Temporal Condition
+
Relational Condition
+
Machine Condition
+
Environmental Condition
+
Goal Condition

例如:

C(Grip)
=
Object Detected
+
Reachable
+
Stable
+
Hand Available
+
Safe Force
+
No Blocking Relation
+
Goal = Pick Up

只有:

C(Grip) = True

时:

Grip

才成为当前可执行 Action。


152.8 Action Condition → Action Space

当系统拥有多个可能动作:

Approach
Grip
Release
Move
Stop
Avoid
Wait
Reposition

每个 Action 都有自己的 Condition:

C1 → Approach
C2 → Grip
C3 → Release
C4 → Move
C5 → Stop
C6 → Avoid
C7 → Wait
C8 → Reposition

于是机器面对当前状态时,不再直接寻找一个固定答案,而是计算:

Current State
 ↓
Evaluate Conditions
 ↓
Available Actions
 ↓
Action Selection

这就与前面的:

Method Matching

进一步连接起来。


152.9 Action Condition 的核心模型

最终建立:

Current State
+
Object
+
Relation
+
Environment
+
Machine State
+
Goal
 ↓
Condition Evaluation
 ↓
Available Actions
 ↓
Action Selection
 ↓
Action(t)

而执行动作之后:

Action(t)
 ↓
Environment Change
 ↓
New State(t+1)
 ↓
Condition Re-Evaluation
 ↓
Action(t+1)

形成:

State
 ↓
Condition
 ↓
Action
 ↓
State'
 ↓
Condition'
 ↓
Action'

152.10 本章核心定义

因此可以正式定义:

Action Condition 是决定某个动作在当前认知状态下是否成立、是否可执行以及是否适合执行的条件集合。

核心公式:

ActionEnabled
=
Condition(
State,
Object,
Relation,
Environment,
Machine,
Goal
)

进一步:

Action(t)
=
Select(
EnabledActions(t),
Goal,
State(t)
)

于是前面三章开始形成连续结构:

Cognitive Method
        ↓
Method Matching
        ↓
Dynamic Method
        ↓
Action Condition
        ↓
Dynamic Action
        ↓
State Transition
        ↓
New Cognition

这意味着机器的行为不再是:

输入 → 固定动作

而是:

当前认知
 ↓
判断条件
 ↓
产生可行动作空间
 ↓
选择当前动作
 ↓
执行
 ↓
获得新状态
 ↓
重新判断

这一步把 Method → Action 之间缺失的“条件层”正式建立起来了。

Leave a Reply

Your email address will not be published. Required fields are marked *