第175章 Object State
对象状态
第174章完成:
Element
+
Attribute
+
State
↓
Object Instance
机器已经能够将多个实时元素组织成为:
Egg Object
Table Object
Robot Object
Obstacle Object
但如果 Object Instance 只是创建以后保持不变的数据集合,那么它仍然只是:
Static Record
而不是机器认知中的动态对象。
因此第175章进一步建立:
Object(t)
↓
Real-Time Update
↓
Object(t+1)
核心概念是:
Object 不是静态记录,而是持续变化的 Dynamic State Object。
1. 对象存在于时间中
现实世界中的对象永远不是一个固定状态。
例如:
Egg(t)
在当前时刻可能:
Position = [100,80,30]
Orientation = [0,0,0]
Velocity = 0
Contact = Table
State = Stable
经过一段时间:
Egg(t+1)
可能变成:
Position = [110,82,30]
Orientation = [0,15,8]
Velocity = 0.5
Contact = Table
State = Rolling
因此:
Object(t)
≠
Object(t+1)
但:
Object Identity
仍然可以保持:
egg_001
2. Object Identity 与 Object State 分离
这是本章非常重要的结构。
一个对象同时具有:
Identity
+
State
例如:
egg_001
是:
Identity
而:
Position
Orientation
Velocity
Contact
State
构成:
Current State
因此:
egg_001
+
State(t)
形成:
Egg(t)
下一时刻:
egg_001
+
State(t+1)
形成:
Egg(t+1)
所以:
Identity
保持连续
State
持续变化
这使 ICAI 能够同时表达:
对象是谁。
以及:
对象现在是什么状态。
3. 状态来自实时元素
对象状态不是凭空产生的。
它来自第173章建立的:
Element Instance
例如:
Egg Object
内部具有:
Position Element
Orientation Element
Velocity Element
Force Element
Contact Element
这些实时元素不断更新:
Real-Time Data
↓
Element Update
↓
Object State Update
因此:
Element State
↓
Object State
成为一个连续过程。
4. Object State 是多元状态
一个对象的状态不能简单表示为:
State = Stable
因为:
Stable
只是对多个底层状态的一个结果描述。
真正的当前状态可以是:
Object State
{
position
orientation
velocity
force
contact
temperature
structural_state
motion_state
}
例如鸡蛋:
Egg
{
position: [100,80,30],
orientation: [0,15,8],
velocity: 0.5,
force: 0.2,
contact: "table",
motion_state: "rolling"
}
于是机器拥有的是:
Multivariate Object State
而不是一个简单标签。
5. 状态变化就是认知变化的基础
例如:
Egg(t)
状态:
Stable
经过动作:
Grasp
产生:
Egg(t+1)
状态变成:
Rolling
于是:
State Change
发生。
进一步:
Object State Change
↓
Scene Change
↓
Cognition Update
因此第175章实际上连接了前面的:
Action
↓
World Change
与后面的:
New Scene
↓
Re-Cognition
6. Object State 不是静态快照
可以把两种系统进行区分。
静态记录
Object
{
name: Egg
position: [100,80,30]
}
程序读取以后:
结束
它只是一个:
Record
动态对象
Egg Object
↓
Position Update
↓
Velocity Update
↓
Contact Update
↓
State Update
↓
New Object State
程序始终保持:
Current Object State
因此:
ICAI Object 是运行中的认知对象,而不是数据库中的静态记录。
7. 状态更新
在 OOP 中,可以建立:
class ObjectInstance
{
public $id;
public $type;
public $attributes = [];
public $elements = [];
public $state;
public $timestamp;
public function updateState($state)
{
$this->state = $state;
$this->timestamp = time();
}
}
例如:
$egg->updateState([
"position" => [110, 82, 30],
"orientation" => [0, 15, 8],
"velocity" => 0.5,
"contact" => "table",
"motion_state" => "rolling"
]);
于是:
egg_001
保持不变,而:
State
被更新。
8. State Update 具有时间戳
实时认知必须知道:
这个状态是什么时候产生的?
因此:
Object State
至少需要:
timestamp
例如:
Egg
State
{
position: ...
velocity: ...
contact: ...
timestamp: 10:35:21.125
}
下一次:
timestamp: 10:35:21.175
形成:
State(t)
↓
State(t+1)
这样系统才能计算:
Position Change
Velocity Change
Contact Change
甚至:
State Transition
9. State Transition
当对象状态发生变化时:
Stable
↓
Moving
↓
Rolling
↓
Stopped
可以形成:
State Transition
例如:
Egg
Stable
↓
Grasp
↓
Unstable
↓
Rolling
↓
Stopped
这些状态转换不是预先写死的自然语言流程,而是由:
Real-Time Element Changes
共同形成。
因此:
Element Change
↓
Object State Change
↓
State Transition
成为 ICAI 动态认知的重要基础。
10. 状态与 Action 的关系
动作不是直接针对一个永恒不变的 Object。
而是针对:
Object State(t)
例如:
Egg(t)
State = Stable
可能选择:
Method A
但是:
Egg(t+1)
State = Rolling
可能选择:
Method B
因此:
Same Object
+
Different State
↓
Different Method
进一步:
Different Method
↓
Different Action
形成:
Object State
↓
Cognition
↓
Method
↓
Action
这正是前面第151章:
Dynamic Action
的工程基础。
11. 状态与 Scene 的关系
单个对象状态发生变化,会进一步改变整个场景。
例如:
Egg(t)
原来:
Egg
↓
on
↓
Table
鸡蛋滚动以后:
Egg(t+1)
可能变成:
Egg
↓
near
↓
Table Edge
甚至:
Egg
↓
near
↓
Obstacle
所以:
Object State Change
↓
Relation Change
↓
Scene Change
因此第175章是未来:
Scene Instance
的重要基础。
12. Robot 自身也必须具有动态状态
不仅外部对象需要状态。
Robot
同样必须是:
Dynamic State Object
例如:
Robot(t)
{
arm_position
arm_velocity
gripper_state
gripper_force
contact
motion_state
}
动作执行以后:
Robot(t+1)
发生变化。
于是 ICAI 的当前认知实际上同时包含:
World Object State
+
Environment State
+
Robot State
最终形成:
Current World State
13. Object State 为认知计算提供当前输入
到这里,ICAI 的数据流开始变得非常清晰:
Real World
↓
Real-Time Data
↓
Element Instance
↓
Object Instance
↓
Object State
↓
Scene State
↓
Cognition
认知系统不再直接面对:
Raw Sensor Data
而面对:
Current Object State
例如:
Egg
Position = ...
Orientation = ...
Velocity = ...
Force = ...
Contact = ...
State = ...
然后进行:
Matching
Similarity
Reasoning
Risk
Method Selection
Decision
14. Object State 的工程意义
第175章实际上完成了一个重要转变:
Object
从:
静态对象描述
转变为:
动态运行对象
即:
Static Object
↓
Stateful Object
↓
Dynamic Object
因此:
对象不再只是“是什么”,还必须持续表达“现在是什么状态”。
15. 本章核心公式
可以定义:
Object(t)
=
Identity
+
Attributes
+
Elements(t)
+
State(t)
当实时数据发生变化:
Real-Time Data(t+1)
进入系统:
Elements(t)
↓
Update
↓
Elements(t+1)
进一步:
Object(t)
↓
State Update
↓
Object(t+1)
因此:
Object(t+1)
=
f(
Object(t),
Real-Time Data(t+1)
)
这使 Object 成为一个持续更新的计算实体。
16. 与前面三章形成完整基础
现在:
第172章
Element
定义认知最小结构。
第173章
Real-Time Data
↓
Element Instance
解决元素如何进入运行系统。
第174章
Elements
↓
Object Instance
解决元素如何组成现实对象。
第175章
Object(t)
↓
State Update
↓
Object(t+1)
解决对象如何持续存在并发生变化。
因此形成:
Real World
↓
Real-Time Data
↓
Element Instance
↓
Object Instance
↓
Dynamic Object State
下一步自然进入:
Object
+
Object
+
Relation
↓
Scene Structure
即:
第176章 Object Relation
对象关系
研究:
Object A
+
Object B
+
Relation
↓
Structured World
例如:
Egg
↓
on
↓
Table
以及:
Robot
↓
near
↓
Egg
从而开始由动态对象进入真正的动态场景结构。