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

第190章 SceneEngine

第190章 SceneEngine

在 ICAI 的工程体系中,ObjectEngine 负责计算对象,StateEngine 负责计算对象当前状态,RelationEngine 负责计算对象之间的关系。当多个对象、多个状态、多个关系在特定时间和条件下共同出现时,仅仅分别计算对象、状态和关系还不足以表达当前认知环境。

因此,ICAI 需要进一步建立一个能够描述“当前整体条件”的计算层,即 SceneEngine(场景计算引擎)

SceneEngine 不是简单保存一张“场景表”,也不是给对象贴上一个场景名称。它的作用是把当前运行环境中的对象、对象状态、对象关系、时间、空间、条件、事件以及目标等事实组织起来,形成一个可以被计算、比较、判断和更新的 Scene(场景)

其基本关系为:

Object → State → Relation → Scene → Scene Calculation → Scene Change

其中:

  • Object 表示场景中的实体;
  • State 表示实体当前状态;
  • Relation 表示实体之间当前存在的关系;
  • Scene 表示这些事实在特定条件和时间下形成的整体环境;
  • Scene Calculation 表示对整体环境进行计算;
  • Scene Change 表示场景从一个状态变化到另一个状态。

190.1 Scene 的定义

Scene(场景)是由一组对象、对象状态、对象关系以及时间、空间和条件共同构成的动态认知环境。

可以定义:

Scene=(O,S,R,C,T,P,E,G)Scene=(O,S,R,C,T,P,E,G)

其中:

  • OO = Objects,对象集合;
  • SS = States,状态集合;
  • RR = Relations,关系集合;
  • CC = Conditions,场景条件;
  • TT = Time,时间;
  • PP = Position/Place,空间或位置;
  • EE = Events,场景事件;
  • GG = Goal,与当前场景相关的目标。

因此,Scene 并不是单个 Object。

例如:

一个仓库中存在:

  • 仓库对象;
  • 货物对象;
  • 货架对象;
  • 工作人员对象;
  • 订单对象;
  • 设备对象。

这些对象各自具有状态,同时对象之间存在:

  • 货物属于订单;
  • 货物位于货架;
  • 工作人员操作设备;
  • 设备处于运行状态;
  • 订单处于待处理状态。

当这些事实在某一个时间点共同存在时,它们共同构成一个场景。

因此:

Scene≠ObjectScene \neq Object

同时:

Scene≠StateScene \neq State

也不是:

Scene≠RelationScene \neq Relation

而是:

Scene=Objects+States+Relations+ContextScene = Objects + States + Relations + Context


190.2 SceneEngine 的定义

SceneEngine(场景计算引擎) 是 ICAI 中负责建立场景、计算场景以及检测场景变化的确定性计算引擎。

可以定义:

SceneEngine=SceneBuilding+SceneCalculation+SceneChangeDetectionSceneEngine= SceneBuilding+ SceneCalculation+ SceneChangeDetection

即:

场景建立 + 场景计算 + 场景变化检测

SceneEngine 的核心任务不是执行行为,也不是直接修改数据库,而是根据当前实际数据计算:

  1. 当前是什么场景;
  2. 当前场景由什么构成;
  3. 当前场景满足什么条件;
  4. 当前场景具有怎样的状态;
  5. 当前场景发生了什么变化;
  6. 场景变化是否影响 Goal、Capability、Method、Decision、Behavior 等后续认知过程。

因此:

SceneEngine=f(O,S,R,C,T,P,E,G)SceneEngine=f(O,S,R,C,T,P,E,G)

输出:

SceneResult=(Scene,Calculation,Evidence,Change,State,Time)SceneResult=(Scene,Calculation,Evidence,Change,State,Time)

其中:

  • Scene = 当前场景;
  • Calculation = 场景计算过程;
  • Evidence = 计算依据;
  • Change = 场景变化;
  • State = 场景计算状态;
  • Time = 计算时间。

190.3 场景建立

场景建立是 SceneEngine 的第一项核心功能。

场景不能凭名称直接建立,而应该从当前实际对象、状态和关系中构造。

基本过程:

Object Load → State Load → Relation Load → Condition Load → Time/Place → Event → Scene Build

即:

对象加载 → 状态加载 → 关系加载 → 条件加载 → 时间/空间加载 → 事件加载 → 场景建立

例如当前系统检测到:

Object A:订单
State A:待处理

Object B:货物
State B:已入库

Object C:仓库
State C:正常

Relation:
订单 → 包含 → 货物
货物 → 位于 → 仓库

SceneEngine 不需要把这些数据重新定义成新的对象,而是建立一个场景引用:

Scene
 ├── Objects
 │    ├── Order
 │    ├── Product
 │    └── Warehouse
 │
 ├── States
 │    ├── Order: Pending
 │    ├── Product: Stored
 │    └── Warehouse: Normal
 │
 ├── Relations
 │    ├── Order → contains → Product
 │    └── Product → located_in → Warehouse
 │
 ├── Conditions
 ├── Time
 └── Events

因此,Scene 是一个 当前事实集合的结构化组合


190.4 场景建立不是对象复制

SceneEngine 不应该把所有 Object 完整复制一遍。

场景中的对象通常采用引用方式:

Scene
    ↓
Object ID
    ↓
Object
    ↓
Current State
    ↓
Relations

这样可以避免:

Object → Scene Object Copy
Object → Scene Object Copy
Object → Scene Object Copy

造成大量重复数据。

因此,工程上更合理的方式是:

Scene=(ObjectReferences,StateReferences,RelationReferences,Context)Scene=(ObjectReferences,StateReferences,RelationReferences,Context)

即:

对象引用 + 状态引用 + 关系引用 + 场景上下文

Scene 本身表达的是“这些对象现在共同处于什么环境”。


190.5 场景条件

一个对象集合并不一定自动形成有效场景。

必须满足一定的条件。

可以定义:

SceneValid=O∧S∧R∧C∧TSceneValid= O\land S\land R\land C\land T

其中:

  • OO = 必要对象存在;
  • SS = 必要状态有效;
  • RR = 必要关系有效;
  • CC = 场景条件满足;
  • TT = 时间有效。

例如:

订单存在
+
货物存在
+
货物状态有效
+
订单与货物关系有效
+
仓库正常
+
当前时间有效

才可以建立一个有效的“订单处理场景”。

如果订单存在,但货物已经不存在,则不能简单认为原来的场景仍然有效。


190.6 场景计算

场景建立之后,SceneEngine 需要进一步进行场景计算。

场景计算不是判断“这个场景叫什么名字”,而是计算当前场景能够得出的确定性事实。

可以定义:

SceneCalculation=ObjectFacts+StateFacts+RelationFacts+ConditionEvaluation+EventEvaluationSceneCalculation= ObjectFacts+ StateFacts+ RelationFacts+ ConditionEvaluation+ EventEvaluation

即:

对象事实 + 状态事实 + 关系事实 + 条件计算 + 事件计算

例如:

订单 = 待处理
货物 = 已入库
仓库 = 正常
订单 → 包含 → 货物
货物 → 位于 → 仓库

通过规则:

订单待处理
AND
货物已入库
AND
仓库正常
AND
订单包含货物

可以计算出:

订单具备处理条件

但 SceneEngine 不应该直接得出:

立即执行某个动作

因为:

场景计算 ≠ 决策

场景计算产生的是当前环境事实。

之后可以由:

DecisionEngine

根据 Goal、Capability、Method、Risk、Conflict 等继续进行决策。


190.7 场景状态

场景本身也需要具有状态。

可以定义:

SceneState=(V,T,C,R)SceneState=(V,T,C,R)

其中:

  • VV = State Value,场景状态值;
  • TT = Time,状态时间;
  • CC = Context,状态上下文;
  • RR = Reason,状态原因。

典型场景状态可以包括:

Created
Initializing
Ready
Active
Changing
Blocked
Invalid
Expired
Archived

例如:

Scene Created
    ↓
Scene Initializing
    ↓
Scene Ready
    ↓
Scene Active
    ↓
Scene Changing
    ↓
Scene Active

如果关键对象消失:

Active
   ↓
Change Detected
   ↓
Required Object Missing
   ↓
Invalid

因此,场景状态不是人为设置的名称,而应该由对象、状态、关系和条件共同计算。


190.8 场景变化

SceneEngine 的第三项核心功能是 Scene Change(场景变化)

场景不是静态数据。

当对象、状态、关系、条件、时间、位置或事件发生变化时,场景也可能发生变化。

可以定义:

Scenet→ΔScene→Scenet+1Scene_t \rightarrow \Delta Scene \rightarrow Scene_{t+1}

其中:

  • ScenetScene_t = 当前场景;
  • ΔScene\Delta Scene = 场景变化;
  • Scenet+1Scene_{t+1} = 新场景。

场景变化可以来自:

Object Change
State Change
Relation Change
Condition Change
Time Change
Position Change
Event
Goal Change

因此:

ΔScene=ΔO+ΔS+ΔR+ΔC+ΔT+ΔP+ΔE\Delta Scene= \Delta O+ \Delta S+ \Delta R+ \Delta C+ \Delta T+ \Delta P+ \Delta E


190.9 对象变化导致场景变化

例如原场景:

订单 = 待处理
货物 = 已入库
仓库 = 正常

如果订单状态变成:

订单 = 已处理

那么:

St(Order)=PendingS_t(Order)=Pending

变成:

St+1(Order)=CompletedS_{t+1}(Order)=Completed

SceneEngine 检测到:

State Change

从而产生:

Scene Change

因此:

对象状态变化 → 场景变化


190.10 关系变化导致场景变化

关系变化同样可以导致场景变化。

例如:

Product → located_in → Warehouse A

变成:

Product → located_in → Warehouse B

对象本身没有发生变化,但关系发生了变化。

因此:

ΔR≠0\Delta R\neq0

从而:

ΔScene≠0\Delta Scene\neq0

这说明 SceneEngine 必须同时关注:

对象事实

和:

关系事实

不能只检查对象状态。


190.11 时间导致场景变化

场景还可能在没有明显对象修改的情况下,因为时间变化而发生变化。

例如:

营业时间:09:00–18:00

在:

17:59

时:

Scene = Open

进入:

18:01

之后:

Scene = Closed

对象没有增加,也没有删除,关系也可能没有变化。

但是:

ΔT≠0\Delta T\neq0

导致:

ΔScene≠0\Delta Scene\neq0

因此 SceneEngine 必须支持时间条件。


190.12 场景变化计算

可以定义场景差异:

ΔScene=Compare(Scenet,Scenet+1)\Delta Scene= Compare(Scene_t,Scene_{t+1})

比较维度包括:

Object Added
Object Removed
Object Changed

State Added
State Removed
State Changed

Relation Added
Relation Removed
Relation Changed

Condition Changed
Time Changed
Position Changed
Event Added
Event Removed

最终形成:

SceneChange

可以定义:

SceneChange=(Type,O,S,R,C,T,E,Reason)SceneChange=(Type,O,S,R,C,T,E,Reason)

其中:

  • Type = 变化类型;
  • O = 对象变化;
  • S = 状态变化;
  • R = 关系变化;
  • C = 条件变化;
  • T = 时间变化;
  • E = 事件变化;
  • Reason = 变化原因。

190.13 场景变化类型

SceneEngine 可以使用固定的变化类型集合:

Created
Expanded
Reduced
ObjectChanged
StateChanged
RelationChanged
ConditionChanged
TimeChanged
PositionChanged
EventTriggered
Blocked
Invalidated
Recovered
Expired

例如:

货物进入仓库
→ ObjectAdded

订单状态改变
→ StateChanged

货物从仓库A移动到仓库B
→ RelationChanged

营业时间结束
→ TimeChanged

场景条件不再满足
→ Invalidated

这些变化都是离散、可记录、可验证的。


190.14 场景变化不是普通日志

普通日志只记录:

某个时间发生了某件事。

SceneEngine 需要进一步计算:

原场景是什么
+
发生了什么变化
+
变化影响了哪些对象
+
影响了哪些关系
+
影响了哪些条件
+
新场景是什么

因此:

SceneHistory≠LogSceneHistory \neq Log

SceneHistory 记录的是场景结构变化。

例如:

Scene 1001
    ↓
Product moved
    ↓
Relation changed
    ↓
Scene 1002

这比简单记录:

2026-09-11 12:30 Product moved

具有更强的认知计算价值。


190.15 SceneEngine 与 ObjectEngine

ObjectEngine 负责:

Object → Object Fact

SceneEngine 负责:

Objects + States + Relations → Scene

两者不能混淆。

ObjectEngine 回答:

这个对象是什么?

SceneEngine 回答:

这些对象现在共同构成什么环境?

因此:

ObjectEngine→ObjectFactObjectEngine \rightarrow ObjectFact SceneEngine→SceneFactSceneEngine \rightarrow SceneFact

SceneEngine 可以调用 ObjectEngine 的计算结果,但不应该重新实现 ObjectEngine。


190.16 SceneEngine 与 StateEngine

StateEngine 负责单个对象或指定实体的状态计算:

St→St+1S_t\rightarrow S_{t+1}

SceneEngine 则负责多个状态共同形成的场景:

S1+S2+⋯+Sn→SceneS_1+S_2+\cdots+S_n \rightarrow Scene

例如:

仓库 = 正常
订单 = 待处理
货物 = 已入库
设备 = 可用

这些状态共同决定:

订单处理场景 = Active

因此:

StateEngine 计算局部状态,SceneEngine 计算整体场景。


190.17 SceneEngine 与 RelationEngine

RelationEngine 负责:

Object A
    ↓
Relation
    ↓
Object B

SceneEngine 则把多个关系组合起来。

例如:

订单 → contains → 商品
商品 → located_in → 仓库
仓库 → managed_by → 人员
人员 → operates → 设备

SceneEngine 可以将这些关系组合成:

订单处理场景

因此:

RelationEngine→RelationFactsRelationEngine \rightarrow RelationFacts SceneEngine→SceneStructureSceneEngine \rightarrow SceneStructure

SceneEngine 不替代 RelationEngine,而是使用 RelationEngine 的结果。


190.18 SceneEngine 与 DecisionEngine

场景计算不能直接等于决策。

例如:

Scene:
订单待处理
货物已入库
仓库正常

SceneEngine 可以计算:

订单处理条件成立

但下一步究竟选择:

Method A

还是:

Method B

需要 DecisionEngine 进行候选方案计算。

因此:

SceneEngine≠DecisionEngineSceneEngine\neq DecisionEngine

正确关系是:

SceneEngine→SceneResult→DecisionEngineSceneEngine \rightarrow SceneResult \rightarrow DecisionEngine

场景为决策提供当前环境事实。


190.19 SceneEngine 与 RiskEngine

场景变化还可能产生风险。

例如:

仓库正常
→
设备停止

SceneEngine 首先检测:

SceneChanged

然后 RiskEngine 可以继续计算:

设备停止
+
订单正在处理
→
Potential Processing Risk

因此:

SceneChange→RiskDetectionSceneChange \rightarrow RiskDetection

但 SceneEngine 本身不负责风险处理。


190.20 SceneEngine 与 ConflictEngine

场景中的多个对象、状态和条件也可能产生冲突。

例如:

订单要求立即处理

同时:

设备状态 = 不可用

场景中同时存在:

Goal Requirement
+
Resource Unavailable

SceneEngine 可以计算并提供:

Current Scene Fact

ConflictEngine 再判断:

Goal Conflict

因此:

SceneEngine→ConflictEngineSceneEngine \rightarrow ConflictEngine

而不是由 SceneEngine 直接解决冲突。


190.21 SceneEngine 与 Runtime

Runtime 表示当前运行环境:

Runtime=(I,O,S,C,T,E)Runtime=(I,O,S,C,T,E)

Scene 则是 Runtime 中与当前认知过程相关的结构化环境。

可以表示为:

Runtime→Scene→SceneCalculationRuntime \rightarrow Scene \rightarrow SceneCalculation

也就是说:

Runtime 是当前运行事实集合,Scene 是经过结构组织后的当前环境模型。

例如 Runtime 中可能包含:

Individual
Objects
States
Events
Time
Execution

SceneEngine 根据这些数据建立当前 Scene。


190.22 PHP OOP 工程实现

在 PHP 5.6 / 7.0 环境中,可以建立:

abstract class Engine
{
    abstract public function calculate($input);
}

SceneEngine:

class SceneEngine extends Engine
{
    public function calculate($input)
    {
        $scene = $this->buildScene($input);

        if (!$this->validateScene($scene)) {
            return new EngineResult(
                false,
                $scene,
                'scene_invalid'
            );
        }

        $calculation = $this->calculateScene($scene);

        $change = $this->calculateChange(
            isset($input['previous_scene'])
                ? $input['previous_scene']
                : null,
            $scene
        );

        return new EngineResult(
            true,
            array(
                'scene' => $scene,
                'calculation' => $calculation,
                'change' => $change
            ),
            'scene_calculated'
        );
    }

    protected function buildScene($input)
    {
        return array(
            'objects' => isset($input['objects'])
                ? $input['objects']
                : array(),

            'states' => isset($input['states'])
                ? $input['states']
                : array(),

            'relations' => isset($input['relations'])
                ? $input['relations']
                : array(),

            'conditions' => isset($input['conditions'])
                ? $input['conditions']
                : array(),

            'time' => isset($input['time'])
                ? $input['time']
                : null
        );
    }

    protected function validateScene($scene)
    {
        return !empty($scene['objects']);
    }

    protected function calculateScene($scene)
    {
        return array(
            'object_count' => count($scene['objects']),
            'state_count' => count($scene['states']),
            'relation_count' => count($scene['relations'])
        );
    }

    protected function calculateChange($previous, $current)
    {
        if ($previous === null) {
            return array(
                'type' => 'created'
            );
        }

        return array(
            'type' => 'compared'
        );
    }
}

这里的重点不是代码数量,而是职责边界。

SceneEngine:

接收事实
→
建立场景
→
验证场景
→
计算场景
→
比较场景
→
输出结果

而不是:

SceneEngine
→
直接执行数据库SQL
→
直接修改业务对象
→
直接执行行为

190.23 SceneResult

SceneEngine 应该输出结构化计算结果。

可以定义:

SR=(I,S,C,E,D,Ch,T)SR=(I,S,C,E,D,Ch,T)

其中:

  • II = Input;
  • SS = Scene;
  • CC = Calculation;
  • EE = Evidence;
  • DD = Derived Facts;
  • ChCh = Scene Change;
  • TT = Time。

例如:

array(
    'scene_id' => 1001,
    'state' => 'active',
    'objects' => array(10, 20, 30),
    'relations' => array(101, 102),
    'calculation' => array(
        'order_ready' => true
    ),
    'change' => array(
        'type' => 'state_changed',
        'object_id' => 20
    ),
    'verified' => true
);

这样后续 Service 层可以直接使用 SceneResult。


190.24 SceneEngine 不负责持久化

SceneEngine 可以计算:

Scene
SceneResult
SceneChange

但数据库保存应该由:

SceneService

负责。

架构:

Controller
    ↓
SceneService
    ↓
SceneEngine
    ↓
ObjectEngine
StateEngine
RelationEngine
    ↓
EngineResult
    ↓
SceneService
    ↓
SceneRepository
    ↓
MySQL

这样可以保持:

Service=OrchestrationService=Orchestration Engine=ComputationEngine=Computation Repository=PersistenceRepository=Persistence


190.25 数据库结构

可以建立:

scenes

保存场景主体:

id
scene_type
state
context
time_start
time_end
created_at
updated_at

场景对象:

scene_objects

保存:

scene_id
object_id
role
state

场景关系:

scene_relations

保存:

scene_id
relation_id
relation_type
state

场景条件:

scene_conditions

保存:

scene_id
condition_type
condition_value
state

场景变化:

scene_changes

保存:

scene_id
change_type
object_id
relation_id
before_value
after_value
reason
created_at

这样可以形成:

Scene
 ├── Scene Objects
 ├── Scene Relations
 ├── Scene Conditions
 └── Scene Changes

190.26 场景生命周期

Scene 生命周期可以定义为:

Created
   ↓
Initializing
   ↓
Ready
   ↓
Active
   ↓
Changing
   ↓
Active
   ↓
Expired
   ↓
Archived

异常情况:

Active
   ↓
Invalid
   ↓
Diagnosis
   ↓
Repair / Rebuild
   ↓
Ready

场景发生重大变化时,不一定必须创建新的 Scene ID。

如果只是场景内部状态变化,可以:

Scene 1001
    ↓
Scene Version 2

因此工程上可以同时存在:

Scene Identity
+
Scene Version

用于表示同一个场景实体在不同时间的结构状态。


190.27 场景版本

为了保存场景变化,可以定义:

Scenet→SceneVersiont+1Scene_t \rightarrow SceneVersion_{t+1}

例如:

Scene 1001
Version 1
    Order = Pending
    Product = Stored

Version 2
    Order = Processing
    Product = Stored

Version 3
    Order = Completed
    Product = Shipped

这样可以形成完整的:

Scene History

并可以进一步进入:

Memory
Experience
Learning

但必须注意:

Scene History 是历史事实,不等于 Experience。


190.28 场景与记忆

当一个场景实际发生之后:

Scene
→
Scene Change
→
Result
→
Feedback
→
History
→
Memory

Memory 保存的是经过筛选后有价值的场景信息。

例如:

某类订单
+
某类仓库状态
+
某种设备状态
→
某种处理结果

经过多次实际验证后,才可能形成:

Experience

因此:

Scene≠MemoryScene \neq Memory Scene≠ExperienceScene \neq Experience

Scene 是当前或历史环境结构;Memory 是保留的信息;Experience 是从历史和记忆中形成的结构化经验。


190.29 场景与学习

SceneEngine 本身不学习。

它只负责:

当前事实
→
当前场景
→
场景计算
→
场景变化

LearningService 才负责根据已经验证的历史事实更新:

Knowledge
Capability
Method
Learning Data

因此:

SceneEngine≠LearningEngineSceneEngine\neq LearningEngine

正确关系是:

Scene→Result→Feedback→History→Memory→Experience→LearningScene \rightarrow Result \rightarrow Feedback \rightarrow History \rightarrow Memory \rightarrow Experience \rightarrow Learning


190.30 场景计算的确定性原则

ICAI 的 SceneEngine 必须遵循确定性计算原则。

相同输入:

InputtInput_t

在相同规则:

RuleRule

和相同条件:

ConditionCondition

下,应得到相同计算结果:

F(Input,Rule,Condition)=ResultF(Input,Rule,Condition)=Result

不能通过:

随机生成

或者:

大模型自由生成

决定场景。

SceneEngine 不使用:

  • LLM;
  • Transformer;
  • Embedding;
  • Vector Search;
  • Prompt Engineering;
  • Neural Network;
  • LLM API;
  • 生成式大模型机制。

其核心计算来源是:

Object
+
State
+
Relation
+
Condition
+
Event
+
Time
+
Rule

190.31 SceneEngine 的完整计算链

SceneEngine 的完整工作流程可以表示为:

Load Runtime
    ↓
Load Objects
    ↓
Load States
    ↓
Load Relations
    ↓
Load Conditions
    ↓
Load Time / Position
    ↓
Load Events
    ↓
Build Scene
    ↓
Validate Scene
    ↓
Calculate Scene
    ↓
Compare Previous Scene
    ↓
Detect Scene Change
    ↓
Verify Scene Result
    ↓
Return SceneResult

如果场景变化:

Scene Change
    ↓
Risk Detection
    ↓
Conflict Detection
    ↓
Decision Re-evaluation

如果场景恢复:

Repair
    ↓
Verification
    ↓
Scene Rebuild
    ↓
Scene Recalculation

190.32 SceneEngine 在 ICAI 中的位置

至此,ObjectEngine、StateEngine、RelationEngine 和 SceneEngine 可以形成一个逐级结构:

ObjectEngine
    ↓
Object Fact
    ↓
StateEngine
    ↓
State Fact
    ↓
RelationEngine
    ↓
Relation Fact
    ↓
SceneEngine
    ↓
Scene Structure
    ↓
Scene Calculation
    ↓
Scene Change
    ↓
DecisionEngine

四者分别解决四个不同层级的问题:

Engine 核心问题
ObjectEngine 对象是什么?
StateEngine 对象现在是什么状态?
RelationEngine 对象之间是什么关系?
SceneEngine 这些对象、状态、关系共同构成什么场景?

因此形成:

Object→State→Relation→SceneObject \rightarrow State \rightarrow Relation \rightarrow Scene

这也是 ICAI 从“单个对象认知”进入“环境整体认知”的关键一步。


190.33 场景驱动的认知闭环

完整的 ICAI 场景认知过程可以表示为:

Runtime→Object→State→Relation→Scene→Calculation→Change→DecisionRuntime \rightarrow Object \rightarrow State \rightarrow Relation \rightarrow Scene \rightarrow Calculation \rightarrow Change \rightarrow Decision

执行之后:

Decision→Behavior→Action→Execution→Result→FeedbackDecision \rightarrow Behavior \rightarrow Action \rightarrow Execution \rightarrow Result \rightarrow Feedback

然后:

Feedback→History→Memory→Experience→LearningFeedback \rightarrow History \rightarrow Memory \rightarrow Experience \rightarrow Learning

最终:

Learning→Knowledge→Capability→Method→DecisionLearning \rightarrow Knowledge \rightarrow Capability \rightarrow Method \rightarrow Decision

形成:

当前环境
    ↓
对象
    ↓
状态
    ↓
关系
    ↓
场景
    ↓
场景计算
    ↓
场景变化
    ↓
决策
    ↓
行为
    ↓
执行
    ↓
结果
    ↓
反馈
    ↓
记忆
    ↓
经验
    ↓
学习
    ↓
知识 / 能力 / 方法更新
    ↓
重新进入场景计算

190.34 本章小结

SceneEngine 解决的是 ICAI 中从“对象认知”向“环境整体认知”过渡的问题。

ObjectEngine 计算对象:

ObjectObject

StateEngine 计算状态:

StateState

RelationEngine 计算关系:

RelationRelation

SceneEngine 则把三者以及时间、条件、位置和事件组织起来:

Scene=Object+State+Relation+ContextScene= Object+ State+ Relation+ Context

其三个核心职责为:

SceneEngine=SceneBuilding+SceneCalculation+SceneChangeSceneEngine= SceneBuilding+ SceneCalculation+ SceneChange

其中:

场景建立解决“当前环境由什么组成”。

场景计算解决“当前环境能够确定什么事实”。

场景变化解决“当前环境与之前相比发生了什么变化”。

最终形成:

Object→State→Relation→Scene→DecisionObject \rightarrow State \rightarrow Relation \rightarrow Scene \rightarrow Decision

因此,SceneEngine 并不是一个简单的场景管理模块,而是 ICAI 从“对象级计算”进入“环境级计算”的核心 Engine。

它使 ICAI 能够在不依赖大模型、神经网络和生成式模型的情况下,通过对象、状态、关系、条件、事件和时间等离散事实建立动态场景,并通过场景变化推动后续的风险判断、冲突检测、决策重新计算、行为调整以及学习更新。

最终可以将本章核心关系概括为:

Scenet→Calculate→Compare→ΔScene→Scenet+1\boxed{ Scene_t \rightarrow Calculate \rightarrow Compare \rightarrow \Delta Scene \rightarrow Scene_{t+1} }

这构成了 ICAI 环境认知的基本动态计算机制。

Leave a Reply

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