第264章 Object API|对象 API
264.1 提出背景
在 ICAI 机器认知工程中,Element API 解决的是现实数据进入认知系统的问题。现实世界中的位置、速度、力量、压力、温度、图像、声音、时间等动态数据首先被表示为 Element(元素)。
但是,机器认知并不是只处理孤立的数据元素。
现实世界中的机器认知对象通常由多个元素、属性、状态以及关系共同构成。例如,一个鸡蛋并不是一个简单的数值,而是一个具有身份、类型、位置、尺寸、重量、表面状态、运动状态以及与其他对象存在空间关系的对象实例。
因此,ICAI 需要在 Element 与 Scene、Cognition 之间建立一个稳定的工程对象层。
这个工程层就是 Object API(对象 API)。
其基本作用可以表示为:
Real-Time Data
↓
Element API
↓
Element
↓
Object API
↓
Object Instance
↓
Scene
↓
Cognition
Object API 的核心目的,是将分散的 Element 数据组织为具有身份、类型、属性、关系和状态的 Object Instance(对象实例),并支持对象在运行过程中的创建、更新、查询、删除、关联以及动态状态变化。
因此:
Object API 是 ICAI 机器认知系统中对象实例的标准工程接口,是 Element 数据进入对象认知层的重要桥梁。
264.2 Object API 的定义
Object API 是 ICAI 系统面向 Object(对象)提供的数据访问、对象构建、对象更新和对象通信能力的标准接口。
定义对象:
Ot=F(I,C,At,Rt,St,Pt,Tt)O_t=F(I,C,A_t,R_t,S_t,P_t,T_t)
其中:
- OtO_t:时间 tt 时刻的对象;
- II:Object Identity,对象身份;
- CC:Object Class,对象类别;
- AtA_t:对象在时间 tt 的属性集合;
- RtR_t:对象在时间 tt 的关系集合;
- StS_t:对象在时间 tt 的状态;
- PtP_t:对象的位置或空间信息;
- TtT_t:对象时间信息。
Object API 的任务,就是在软件工程中维护这一对象结构。
因此可以表示为:
Object API
↓
Object Identity
+
Object Class
+
Object Attribute
+
Object Relation
+
Object State
+
Object Position
+
Object Time
↓
Object Instance
Object API 并不负责替代认知系统进行全部认知计算,而是负责建立和维护可被认知系统调用的对象结构。
264.3 Object API 的工程目的
Object API 在 ICAI 工程中的第一个目的,是把多个 Element 组织成为一个 Object。
例如传感器连续产生:
Position = (120,80,50)
Velocity = (0,0,10)
Force = 2.3N
Pressure = 0.15MPa
Temperature = 25℃
这些数据分别可以作为 Element:
Position Element
Velocity Element
Force Element
Pressure Element
Temperature Element
Object API 将这些元素关联到同一个对象:
Object
├── ID = O1001
├── Class = Egg
├── Position
├── Velocity
├── Force
├── Pressure
└── Temperature
于是:
多个 Element
↓
Object API
↓
一个 Object Instance
这一步是机器认知从“数据”进入“对象结构”的关键工程过程。
264.4 对象身份
Object API 首先必须解决 Object Identity(对象身份)问题。
现实环境中可能同时存在多个同类对象:
Egg A
Egg B
Egg C
虽然它们属于相同的 Object Class,但不能被系统认为是同一个对象。
因此:
Object Class ≠ Object Instance
例如:
Class = Egg
Instance:
O1001
O1002
O1003
Object API 必须保证对象身份具有稳定性。
对象可以定义为:
O=(ID,Class,…)O=(ID,Class,\ldots)
其中:
- IDID:对象唯一标识;
- ClassClass:对象所属类别。
因此 Object API 可以提供:
Create Object
Get Object
Update Object
Delete Object
List Objects
但这些接口的目的不是简单数据库操作,而是维护 ICAI 的对象生命周期。
264.5 对象类别
Object Class(对象类)用于描述对象的类别。
例如:
Egg
Bottle
Glass
Hand
Robot
Table
Door
Machine
Person
Vehicle
对象类定义对象具有哪些基本结构。
例如:
Egg
↓
Object Class
Egg-001
↓
Object Instance
Object API 在创建对象时,可以同时记录:
Object ID
Object Class
Object Type
Creation Time
Source
形成:
Object
├── Identity
├── Class
├── Type
├── Attributes
├── Relations
└── State
这样,系统可以区分:
“这是什么类别的对象”
与:
“当前是哪一个具体对象”
这两个不同层次的问题。
264.6 Element 到 Object
Element API 与 Object API 之间存在明确的工程关系。
Element API:
接收 Element
Object API:
组织 Element
↓
形成 Object
例如:
Position Element
Force Element
Velocity Element
Pressure Element
↓
Object API
↓
Object O1001
因此对象并不是凭空产生的。
在动态机器认知系统中:
Ot=F(E1,E2,…,En)O_t=F(E_1,E_2,\ldots,E_n)
其中:
- E1,E2,…,EnE_1,E_2,\ldots,E_n:与对象相关的元素;
- OtO_t:当前时刻形成的对象。
但是,并不是所有 Element 都属于同一个 Object。
因此工程系统必须具有 Element → Object 的关联机制。
例如:
Element E001 → Object O001
Element E002 → Object O001
Element E003 → Object O001
Element E004 → Object O002
Element E005 → Object O002
这使得 Object API 成为元素数据组织的重要工程层。
264.7 对象属性更新
对象不是静态结构。
例如一个对象的位置不断变化:
t1 → Position = (100,50,20)
t2 → Position = (101,50,20)
t3 → Position = (103,50,20)
Object API 接收新的 Element 数据后,可以更新对象属性:
New Element
↓
Object API
↓
Object Attribute Update
↓
Object State Update
因此:
At+1=Update(At,Et+1)A_{t+1}=Update(A_t,E_{t+1})
其中:
- AtA_t:当前对象属性;
- Et+1E_{t+1}:新的元素数据;
- At+1A_{t+1}:更新后的对象属性。
进一步形成:
旧对象状态
+
新元素
↓
Object Update
↓
新对象状态
这使 Object API 能够支持动态对象。
264.8 对象状态
Object API 不仅维护对象属性,还可以维护 Object State(对象状态)。
例如一个对象可以具有:
静止
运动
接触
受力
不稳定
稳定
打开
关闭
损坏
正常
状态可以由对象当前属性和关系计算得到:
St=F(At,Rt,Ct)S_t=F(A_t,R_t,C_t)
其中:
- StS_t:对象当前状态;
- AtA_t:对象当前属性;
- RtR_t:对象当前关系;
- CtC_t:对象类别及相关条件。
因此:
Element
↓
Attribute
↓
Object
↓
State
Object API 可以保存当前状态,同时把状态变化通知后续 Scene Engine、Cognitive Engine 等运行模块。
264.9 对象关系
现实中的对象不是孤立存在的。
例如:
Hand
↓ touches
Egg
或者:
Egg
↓ on
Table
或者:
Robot
↓ near
Table
这些都属于 Relation(关系)。
Object API 可以维护:
Source Object
Relation Type
Target Object
Relation Value
Relation State
Timestamp
例如:
O1001
↓
Touch
↓
O2001
形成:
R=(Os,Type,Ot,V,S,T)R=(O_s,Type,O_t,V,S,T)
其中:
- OsO_s:关系源对象;
- TypeType:关系类型;
- OtO_t:关系目标对象;
- VV:关系值;
- SS:关系状态;
- TT:时间。
因此 Object API 不只是维护:
Object
还维护:
Object ↔ Object
之间的结构。
264.10 对象动态性
ICAI 的 Object 不是一次创建后永远不变的数据记录。
对象具有:
Identity
↓
Attributes
↓
State
↓
Relations
↓
Position
↓
Time
这些内容可以随时间变化。
因此:
Ot+1=Update(Ot,Et+1,Rt+1)O_{t+1}=Update(O_t,E_{t+1},R_{t+1})
其中:
- OtO_t:当前对象;
- Et+1E_{t+1}:新的元素数据;
- Rt+1R_{t+1}:新的关系数据;
- Ot+1O_{t+1}:更新后的对象。
例如:
t1
Egg
Position = P1
State = Stable
↓ 手接近
t2
Egg
Position = P1
Relation = Near(Hand)
State = Stable
↓ 手接触
t3
Egg
Relation = Touch(Hand)
State = Contact
↓ 手施加力量
t4
Egg
Force = 2.3N
State = Grasping
这里始终是同一个 Object Instance,只是对象的动态属性、关系和状态发生了变化。
264.11 Object API 与 Scene API
Object API 负责对象。
Scene API 负责多个对象以及它们之间形成的当前场景。
因此两者存在层次关系:
Element API
↓
Object API
↓
Object Instance
↓
Scene API
↓
Scene Instance
对象层关注:
“这个对象是什么?”
“它当前有什么属性?”
“它处于什么状态?”
“它与谁存在关系?”
场景层关注:
“当前有哪些对象?”
“这些对象如何排列?”
“对象之间有什么关系?”
“当前整体场景是什么状态?”
因此:
Scenet=F(Ot,Rt,St,Et,Pt,Tt)Scene_t=F(O_t,R_t,S_t,E_t,P_t,T_t)
Object API 是 Scene API 的基础数据来源之一。
264.12 Object API 与 Cognitive System
Object API 本身不是完整的认知引擎。
它负责建立:
Object
↓
Attribute
↓
Relation
↓
State
认知系统再根据:
Goal
+
Object
+
Attribute
+
Relation
+
State
+
Scene
形成 Cognitive Model(认知模型)。
即:
Ct=F(Ot,At,Rt,St,Sct,Gt)C_t=F(O_t,A_t,R_t,S_t,Sc_t,G_t)
其中:
- CtC_t:当前认知;
- OtO_t:对象;
- AtA_t:属性;
- RtR_t:关系;
- StS_t:状态;
- SctSc_t:场景;
- GtG_t:目标。
因此:
Object API
↓
Object Model
↓
Scene Model
↓
Cognitive Model
↓
Behavior
↓
Action
Object API 是认知计算的重要基础,但不直接等同于 Cognition。
264.13 Object API 的工程架构
在 PHP OOP 工程中,可以建立:
ObjectApiController
↓
ObjectService
↓
ObjectEngine
↓
ObjectModel
↓
ObjectRepository
↓
MySQL
其中:
ObjectApiController(对象 API 控制器)
负责接收外部请求并返回 JSON 数据。
ObjectService(对象服务)
负责对象业务处理。
ObjectEngine(对象引擎)
负责对象构建、更新、关联和状态处理。
ObjectModel(对象模型)
负责对象运行时结构。
ObjectRepository(对象仓储)
负责数据库中的对象数据存储。
其运行关系:
External System
↓
Object API
↓
Object Controller
↓
Object Service
↓
Object Engine
↓
Object Model
↓
Object Repository
↓
MySQL
264.14 Object API 数据结构
一个基本 Object 数据可以表示为:
{
"id": "O1001",
"class": "Egg",
"type": "physical_object",
"attributes": {
"position": [120, 80, 50],
"velocity": [0, 0, 10],
"force": 2.3,
"pressure": 0.15
},
"state": "stable",
"relations": [],
"timestamp": "2026-09-04 10:00:00"
}
这个 JSON 不是对象本身,而是 Object Runtime Data(对象运行数据)的结构化表达。
其层次关系是:
Object Theory
↓
Object Class
↓
Object Runtime Object
↓
Object Runtime Data
↓
JSON
因此 JSON 只是数据交换形式。
264.15 Object API 的基本接口
Object API 可以提供:
/api/object/create
/api/object/get
/api/object/update
/api/object/delete
/api/object/list
/api/object/relations
/api/object/state
/api/object/history
也可以采用资源形式:
/api/objects
/api/objects/{id}
/api/objects/{id}/state
/api/objects/{id}/relations
/api/objects/{id}/history
这些接口分别对应对象生命周期中的不同工程操作。
例如:
Create
↓
Object Instance
Get
↓
Read Current Object
Update
↓
Dynamic Object Update
Relations
↓
Object Relationship
State
↓
Current Object State
History
↓
Object Change History
Delete
↓
Object Lifecycle End
264.16 PHP OOP 对象模型
工程上可以定义:
class ObjectModel
{
protected $id;
protected $className;
protected $attributes = array();
protected $relations = array();
protected $state;
protected $position;
protected $timestamp;
public function updateAttribute($name, $value)
{
$this->attributes[$name] = $value;
}
public function setState($state)
{
$this->state = $state;
}
public function addRelation($relation)
{
$this->relations[] = $relation;
}
public function getAttributes()
{
return $this->attributes;
}
}
这里的 ObjectModel 不是 MVC 中简单意义上的数据库 Model,而是 ICAI 对象在软件运行环境中的结构化表示。
因此必须区分:
ICAI Object Model
与:
MVC Model
前者描述机器认知对象结构,后者是软件 MVC 架构中的模型层。
264.17 Object Engine
ObjectEngine 负责将 Element 数据转换为对象属性和对象状态。
例如:
class ObjectEngine
{
public function updateFromElement($object, $element)
{
$type = $element['type'];
$value = $element['value'];
$object->updateAttribute($type, $value);
return $object;
}
}
其基本逻辑:
Element
↓
Identify Object
↓
Identify Attribute
↓
Update Attribute
↓
Update State
↓
Update Relation
↓
Object Updated
进一步可以扩展:
Element Update
↓
Object Engine
↓
Attribute Update
↓
State Calculation
↓
Relation Update
↓
Object Update Event
这样 Object API 就可以成为实时对象更新系统的一部分。
264.18 Object API 与动态认知
ICAI 的认知不是建立在一个永远不变的对象记录上,而是建立在当前对象状态之上。
因此:
Ct=F(Ot)C_t=F(O_t)
在更完整的情况下:
Ct=F(Gt,Ot,Rt,St,Sct)C_t=F(G_t,O_t,R_t,S_t,Sc_t)
当 Object 发生变化:
Ot→Ot+1O_t\rightarrow O_{t+1}
认知输入也发生变化:
Ct→Ct+1C_t\rightarrow C_{t+1}
于是:
Object Update
↓
Scene Update
↓
Cognition Update
这就是 Object API 对动态机器认知的重要意义。
264.19 Object API 的事件机制
对象发生重要变化时,可以产生 Object Event(对象事件)。
例如:
Object Created
Object Updated
Object State Changed
Object Relation Changed
Object Position Changed
Object Deleted
事件流可以表示为:
Element Update
↓
Object Engine
↓
Object Updated
↓
Object Event
↓
Scene Engine
↓
Cognitive Engine
例如:
Force = 2.3N
↓
Object Attribute Changed
↓
Object State Changed
↓
Scene Changed
↓
Cognition Recalculation
因此 Object API 不只是被动查询接口,也可以成为 ICAI 运行系统中的动态更新节点。
264.20 Object API 与对象生命周期
一个完整对象具有生命周期:
Object Detection
↓
Object Creation
↓
Object Initialization
↓
Object Update
↓
Object Relation
↓
Object State Change
↓
Object Movement
↓
Object History
↓
Object Disappearance
↓
Object Deletion
Object API 对应:
Create
↓
Initialize
↓
Update
↓
Relate
↓
State
↓
Move
↓
History
↓
Delete
这使对象从一个数据库记录转变为一个具有生命周期的 Runtime Object(运行时对象)。
264.21 Object API 的完整工程链
综合 Element API 与 Object API:
Sensor
↓
Real-Time Data
↓
Element API
↓
Element
↓
Element Validation
↓
Element Association
↓
Object API
↓
Object Instance
↓
Attribute Update
↓
State Update
↓
Relation Update
↓
Scene Update
↓
Cognition Update
而认知执行后:
Cognition
↓
Behavior
↓
Action
↓
Device
↓
World Change
↓
Sensor
↓
Element API
↓
Object API
↓
Object Update
↓
Re-Cognition
最终形成完整闭环:
World
↓
Real-Time Data
↓
Element API
↓
Element
↓
Object API
↓
Object
↓
Scene
↓
Cognition
↓
Behavior
↓
Action
↓
Device
↓
World Change
↓
Feedback
↓
Element API
↓
Object API
↓
Re-Cognition
264.22 Object API 的理论与工程边界
Object API 必须保持清晰的工程边界。
它主要负责:
对象身份
对象类别
对象属性
对象关系
对象状态
对象位置
对象时间
对象生命周期
对象更新
对象查询
对象通信
它不直接承担:
目标推理
复杂认知决策
行为规划
动作执行
设备控制
这些能力属于后续 Cognition、Method、Behavior、Action、Device 等层。
因此整个系统形成明确分层:
Element API
↓
解决“数据是什么”
Object API
↓
解决“对象是什么”
Scene API
↓
解决“当前环境中对象如何组成场景”
Cognition API
↓
解决“系统当前形成什么认知”
Behavior API
↓
解决“根据目标与当前认知产生什么行为”
Action API
↓
解决“行为转化为什么动作”
Device API
↓
解决“动作如何进入设备执行”
这种 API 分层与 ICAI 的理论对象层是一一对应的。
264.23 Object API 的核心价值
Object API 的工程价值并不在于增加几个 HTTP 接口,而在于建立一个稳定的机器对象边界。
现实世界中的数据首先进入 Element 层。
Element 是离散的数据认知元素。
当多个相关 Element 被组织起来之后,形成 Object。
Object 再进入 Scene。
Scene 再进入 Cognition。
因此:
Element→Object→Scene→CognitionElement\rightarrow Object\rightarrow Scene\rightarrow Cognition
成为 ICAI 从数据进入机器认知的重要结构链。
Object API 正是这条链上的对象工程接口。
其核心关系可以概括为:
Element API
=
现实数据进入系统
Object API
=
现实数据形成对象
Scene API
=
对象形成当前场景
Cognition API
=
场景进入认知计算
264.24 本章总结
第264章建立了 Object API 的工程定义。
Object API 不是普通的对象 CRUD 接口,而是 ICAI 机器认知系统中的对象工程边界。
它将 Element API 接收到的离散元素数据组织为具有:
Identity
+
Class
+
Attribute
+
Relation
+
State
+
Position
+
Time
的 Object Instance。
其基本运行关系为:
Ot=F(I,C,At,Rt,St,Pt,Tt)O_t=F(I,C,A_t,R_t,S_t,P_t,T_t)
随着实时数据变化:
Ot→Ot+1O_t\rightarrow O_{t+1}
对象属性、关系和状态也随之发生变化,并进一步推动:
Object
↓
Scene
↓
Cognition
发生动态更新。
因此,ICAI 的对象工程结构可以正式表示为:
Real-Time Data
↓
Element API
↓
Element
↓
Object API
↓
Object Instance
↓
Scene API
↓
Scene Instance
↓
Cognition API
↓
Cognitive Model
Object API 由此成为 ICAI API 体系中的第二个基础层。
第263章解决了:
现实数据如何进入 ICAI。
第264章解决了:
进入系统的数据如何形成和维护机器对象。
下一层自然进入第265章:
Scene API|场景 API
其核心问题将从“对象是什么”进一步进入:
多个动态对象如何在空间、时间、关系和状态中形成当前场景。