第109章 完整目录架构
前面的章节已经逐步建立了 SAI 的主要组成部分:
Individual
Core
Information
Perception
Cognition
Memory
Reasoning
Decision
Behavior
Action
Expression
SATE
Template
Renderer
Adapter
Device
Feedback
Experience
Learning
Detection
Risk
Conflict
Diagnosis
Repair
Verification
Extension
Module
Engine
Object
Event
Task
Log
Exception
State Machine
第109章把这些组件重新组织成一个完整的 SAI Framework 目录架构。
这里的“目录架构”不是简单把 PHP 文件堆在一起,而是建立:
概念层 → 运行层 → 功能层 → 外部连接层 → 自维护层 → 扩展层
同时保持各模块职责边界清晰。
1. Core
1.1 Core 定义
Core 是 SAI Framework 的基础核心。
主要负责:
Kernel
Lifecycle
Container
Registry
Manager
Event
Task
Log
Exception
State Machine
Configuration
目录:
Core/
├── Kernel/
├── Container/
├── Registry/
├── Manager/
├── Lifecycle/
├── Event/
├── Task/
├── Log/
├── Exception/
├── StateMachine/
└── Config/
Core 不直接承担:
Cognition
Reasoning
Decision
Learning
Core 的作用是:
让整个 SAI 系统能够稳定地组织、加载、运行和管理各个组件。
2. Information
Information 是 SAI 接收到的信息。
目录:
Information/
├── InformationInterface.php
├── Information.php
├── InformationValidator.php
├── InformationManager.php
└── InformationSource.php
基本结构:
Information
├── id
├── source
├── type
├── data
├── timestamp
└── state
流程:
External Source
↓
Information
↓
InformationReceiver
↓
Individual
Information 是输入,不是 Cognition。
3. Scene
Scene 是当前环境的结构化表示。
目录:
Scene/
├── Scene.php
├── SceneCollector.php
├── SceneManager.php
├── SceneObject.php
├── SceneState.php
└── SceneRelation.php
例如:
Scene_A
│
├── Robot_A
├── Obstacle_A
├── Road_A
├── Lane_A
├── Position
├── Time
└── Environment
Scene 的作用是把多个 Information 组织成:
当前环境状态。
4. Individual
Individual 是 SAI 的运行主体。
目录:
Individual/
├── IndividualInterface.php
├── Individual.php
├── IndividualManager.php
├── Identity/
├── State/
└── Ability/
基本结构:
Individual
│
├── Identity
├── State
├── Ability
├── Memory
├── Central
└── InformationReceiver
Individual 负责组织自身的运行过程。
5. Central
Central 是 Individual 内部的协调中心。
目录:
Central/
├── CentralInterface.php
├── Central.php
├── ProcessManager.php
└── Runtime.php
Central 主要负责:
接收信息
↓
组织处理顺序
↓
调用组件
↓
收集结果
↓
返回结果
因此:
Central ≠ Cognition
Central ≠ Reasoning
Central ≠ Decision
Central 是协调者。
6. Element
Element 是 SAI 处理的基本离散信息单元。
目录:
Element/
├── ElementInterface.php
├── Element.php
├── ElementManager.php
├── ObjectElement.php
├── PropertyElement.php
├── StateElement.php
├── RelationElement.php
├── ValueElement.php
├── TimeElement.php
├── LocationElement.php
└── EventElement.php
例如:
temperature
92
Machine_A
RUNNING
Road_A
20m
都可以作为结构化 Element。
基本关系:
Information
↓
Element
↓
Object / Property / State / Relation
7. Object
Object 是实体的结构化表示。
目录:
Object/
├── ObjectInterface.php
├── Object.php
├── ObjectManager.php
├── ObjectRegistry.php
├── Property/
├── Method/
├── Relation/
└── State/
结构:
Object
│
├── Identity
├── Property
├── Method
├── Relation
└── State
例如:
Robot_A
Machine_A
Vehicle_A
Obstacle_A
Sensor_A
Object 是 SAI 世界表示的重要基础。
8. Relation
Relation 专门描述对象之间的关系。
目录:
Relation/
├── RelationInterface.php
├── Relation.php
├── RelationManager.php
├── RelationRegistry.php
└── Types/
例如:
Robot_A
│
├── FRONT_OF → Obstacle_A
├── LOCATED_ON → Road_A
└── CONNECTED_TO → Sensor_A
基本结构:
Source
+
Relation Type
+
Target
9. Perception
Perception 负责从 Information 中获得结构化内容。
目录:
Perception/
├── PerceptionInterface.php
├── Perception.php
├── PerceptionEngine.php
├── PerceptionManager.php
├── ElementExtractor.php
├── ObjectRecognizer.php
├── PropertyRecognizer.php
├── StateRecognizer.php
└── RelationRecognizer.php
核心:
Information
↓
Perception
↓
Element
↓
Object
↓
Property
↓
State
↓
Relation
Perception 的核心定义:
获取并结构化信息。
10. Cognition
Cognition 负责理解 Perception 产生的结构。
目录:
Cognition/
├── CognitionInterface.php
├── Cognition.php
├── CognitionEngine.php
├── CognitionManager.php
├── Matching/
├── Understanding/
└── Context/
流程:
Perception
↓
Element / Object / Relation / State
↓
Matching
↓
Understanding
↓
Cognition Result
Cognition 的核心:
理解当前信息及其结构关系。
11. Memory
Memory 负责保存和提供历史认知资源。
目录:
Memory/
├── MemoryInterface.php
├── Memory.php
├── MemoryManager.php
├── ShortMemory/
├── LongMemory/
├── FactMemory/
├── RelationMemory/
├── StateMemory/
├── ExperienceMemory/
└── HistoryMemory/
结构:
Memory
│
├── ShortMemory
│
└── LongMemory
├── Fact
├── Relation
├── State
├── Experience
└── History
Memory 不只是文件存储。
它承担:
Write
Read
Update
Validate
Archive
Retrieve
12. Reasoning
Reasoning 使用当前理解和 Memory 中的资源进行推理。
目录:
Reasoning/
├── ReasoningInterface.php
├── Reasoning.php
├── ReasoningEngine.php
├── ReasoningManager.php
├── FactResolver.php
├── RuleResolver.php
├── ConditionResolver.php
└── Conclusion.php
基本流程:
Current Understanding
↓
Memory
↓
Facts
↓
Rules
↓
Conditions
↓
Reasoning
↓
Conclusion
Reasoning:
从已知结构和规则中得到新的结构化结论。
13. Decision
Decision 负责从候选方案中选择。
目录:
Decision/
├── DecisionInterface.php
├── Decision.php
├── DecisionManager.php
├── Candidate/
├── Risk/
├── Priority/
└── Conflict/
流程:
Conclusion
↓
Candidates
↓
Condition
↓
Risk
↓
Priority
↓
Conflict
↓
Decision
Decision 不直接等于 Action。
14. Behavior
Behavior 负责组织执行过程。
目录:
Behavior/
├── BehaviorInterface.php
├── Behavior.php
├── BehaviorManager.php
├── BehaviorCondition.php
├── BehaviorExecutor.php
└── BehaviorResult.php
结构:
Decision
↓
Behavior
↓
Action
例如:
Decision = SAFE_STOP
可以形成:
Behavior = SAFE_STOP
│
├── CHECK_STATE
├── REDUCE_SPEED
├── STOP
├── READ_STATE
└── VERIFY
15. Expression
Expression 负责把内部结果形成外部可表达结构。
目录:
Expression/
├── ExpressionInterface.php
├── Expression.php
├── ExpressionManager.php
├── ResultExpression.php
├── StatusExpression.php
├── ActionExpression.php
└── ErrorExpression.php
流程:
Internal Result
↓
Expression
↓
Template
↓
Renderer
Expression 不是自然语言生成器。
它是:
内部结构到外部表现之间的结构化表达层。
16. Template
Template 属于 SATE 表现层。
目录:
Template/
├── Template.php
├── TemplateEngine.php
├── TemplateParser.php
├── TemplateCompiler.php
├── TemplateRegistry.php
├── TemplateLoader.php
└── Templates/
例如:
Templates/
├── web/
├── api/
├── device/
├── robot/
└── status/
核心:
Expression
↓
Template
↓
Template Engine
Template 负责:
如何组织输出数据。
17. Renderer
Renderer 把 Template 处理后的结构转换为具体表现形式。
目录:
Renderer/
├── RendererInterface.php
├── Renderer.php
├── RendererManager.php
├── RendererRegistry.php
├── WebRenderer.php
├── ApiRenderer.php
├── DeviceRenderer.php
└── CustomRenderer.php
例如:
Expression
↓
Template
↓
WebRenderer
↓
HTML
或者:
Expression
↓
Template
↓
ApiRenderer
↓
JSON
Renderer:
决定数据以什么形式表现。
18. Adapter
Adapter 负责连接外部环境。
目录:
Adapter/
├── AdapterInterface.php
├── Adapter.php
├── AdapterManager.php
├── AdapterRegistry.php
├── WebAdapter.php
├── ApiAdapter.php
├── DeviceAdapter.php
├── RobotAdapter.php
└── CustomAdapter.php
关系:
Renderer
↓
Rendered Result
↓
Adapter
↓
External Environment
核心区别:
Renderer = 表现成什么
Adapter = 连接到哪里
19. Device
Device 是 SAI 对外部设备的结构化表示和设备相关管理层。
目录:
Device/
├── DeviceInterface.php
├── Device.php
├── DeviceManager.php
├── DeviceRegistry.php
├── DeviceState.php
├── DeviceProperty.php
├── DeviceMethod.php
├── DeviceCommand.php
└── DeviceResponse.php
结构:
Device
│
├── Identity
├── Property
├── Method
├── Ability
├── State
├── Command
└── Response
例如:
Machine_A
Robot_A
Motor_A
Sensor_A
20. Feedback
Feedback 把实际执行结果返回 SAI。
目录:
Feedback/
├── FeedbackInterface.php
├── Feedback.php
├── FeedbackManager.php
├── DeviceFeedback.php
├── ActionFeedback.php
├── BehaviorFeedback.php
└── EnvironmentFeedback.php
核心路径:
Action
↓
Adapter
↓
External Environment
↓
Feedback
↓
Information
↓
Perception
另外:
Feedback
↓
Memory
↓
Experience
因此 Feedback 是闭环的重要入口。
21. Experience
Experience 保存已经发生过的过程和结果。
目录:
Experience/
├── ExperienceInterface.php
├── Experience.php
├── ExperienceManager.php
├── ExperienceAnalyzer.php
├── ExperienceValidator.php
└── ExperienceMemory.php
核心结构:
Experience
=
Condition
+
Decision
+
Behavior
+
Action
+
Result
+
Feedback
例如:
条件:
障碍物距离 0.8m
决策:
STOP
行为:
SAFE_STOP
结果:
Robot stopped
反馈:
speed 1.2 → 0
结果:
SAFE
22. Learning
Learning 从 Information、Feedback、Experience、Memory 中获取知识资源。
目录:
Learning/
├── LearningInterface.php
├── Learning.php
├── LearningEngine.php
├── LearningManager.php
├── LearningTask.php
├── ExperienceAnalyzer.php
├── PatternExtractor.php
├── KnowledgeUpdater.php
├── MemoryUpdater.php
└── LearningHistory.php
核心流程:
Information
↓
Experience
↓
Learning
↓
Knowledge
↓
Memory Update
按照本体系:
学习 = 获取知识。
而:
知识 = 能力资源。
Learning 不等于生成文本。
23. Maintenance
Maintenance 是 SAI 自我维护系统。
这一层整合前面已经建立的:
Detection
Risk
Conflict
Diagnosis
Decision
Repair
Verification
Exception
Recovery
目录可以组织为:
Maintenance/
│
├── Detection/
│ ├── Detection.php
│ ├── DetectionEngine.php
│ └── DetectionResult.php
│
├── Risk/
│ ├── Risk.php
│ └── RiskManager.php
│
├── Conflict/
│ ├── Conflict.php
│ └── ConflictResolver.php
│
├── Diagnosis/
│ ├── Diagnosis.php
│ ├── DiagnosisEngine.php
│ └── DiagnosisResult.php
│
├── Repair/
│ ├── Repair.php
│ ├── RepairEngine.php
│ └── RepairResult.php
│
├── Verification/
│ ├── Verification.php
│ └── VerificationResult.php
│
├── Recovery/
│ ├── Recovery.php
│ └── RecoveryManager.php
│
└── Exception/
├── ExceptionHandler.php
└── RecoveryHandler.php
完整维护闭环:
Detection
↓
Risk
↓
Conflict
↓
Diagnosis
↓
Decision
↓
Repair
↓
Verification
↓
Detection
如果修复失败:
Repair
↓
Failure
↓
Recovery / Rollback
↓
Verification
Maintenance 的核心不是“发现错误”而已,而是:
发现 → 分析 → 决策 → 修复 → 验证 → 恢复运行。
24. Extension
Extension 是整个 Framework 的扩展机制。
目录:
Extension/
├── ExtensionInterface.php
├── Extension.php
├── ExtensionManager.php
├── ExtensionRegistry.php
├── ExtensionLoader.php
├── ExtensionConfig.php
└── Extensions/
实际扩展:
Extensions/
│
├── RobotExtension/
│ ├── Extension.php
│ ├── config.php
│ ├── Module/
│ ├── Engine/
│ ├── Object/
│ └── Adapter/
│
├── VehicleExtension/
│ ├── Extension.php
│ └── config.php
│
└── IndustrialExtension/
├── Extension.php
└── config.php
Extension 的运行:
Registry
↓
Loader
↓
Extension
↓
Configuration
↓
Initialize
↓
Start
↓
Runtime
25. 完整 SAI 目录
把本章 24 个部分组合起来,可以得到第一版完整 SAI Framework:
SAI/
│
├── Core/
│ ├── Kernel/
│ ├── Container/
│ ├── Registry/
│ ├── Manager/
│ ├── Lifecycle/
│ ├── Event/
│ ├── Task/
│ ├── Log/
│ ├── Exception/
│ ├── StateMachine/
│ └── Config/
│
├── Information/
│
├── Scene/
│
├── Individual/
│
├── Central/
│
├── Element/
│
├── Object/
│
├── Relation/
│
├── Perception/
│
├── Cognition/
│
├── Memory/
│
├── Reasoning/
│
├── Decision/
│
├── Behavior/
│
├── Expression/
│
├── Template/
│
├── Renderer/
│
├── Adapter/
│
├── Device/
│
├── Feedback/
│
├── Experience/
│
├── Learning/
│
├── Maintenance/
│
└── Extension/
26. 各目录之间的主运行关系
不能把上面的目录理解成简单的上下级调用关系。
SAI 的主要运行链是:
Information
↓
Scene
↓
Perception
↓
Element
↓
Object
↓
Relation
↓
Cognition
↓
Memory
↓
Reasoning
↓
Decision
↓
Behavior
↓
Expression
↓
Template
↓
Renderer
↓
Adapter
↓
Device / External Environment
↓
Feedback
↓
Experience
↓
Learning
↓
Memory Update
↓
新的 Information
27. Individual 在整个架构中的位置
Individual 不是简单的一个普通目录。
它是这些能力的组织主体:
Individual
│
┌──────────────┼──────────────┐
↓ ↓ ↓
Information Central Memory
│
↓
SAI Runtime
│
┌────────────────┼────────────────┐
↓ ↓ ↓
Perception Cognition Reasoning
↓ ↓ ↓
Object Understanding Conclusion
│
↓
Decision
↓
Behavior
↓
Action
↓
External Execution
↓
Feedback
因此:
Framework = 系统框架
Individual = SAI 个体
Central = 个体内部协调
28. Core 与功能目录的关系
Core 不应该和所有功能混成一个目录。
可以形成:
Core
│
┌────────────┼────────────┐
↓ ↓ ↓
Kernel Registry Manager
│
↓
Runtime
│
└──────────────┐
↓
SAI Components
然后:
SAI Components
│
├── Information
├── Scene
├── Individual
├── Element
├── Object
├── Relation
├── Perception
├── Cognition
├── Memory
├── Reasoning
├── Decision
├── Behavior
├── Expression
├── Template
├── Renderer
├── Adapter
├── Device
├── Feedback
├── Experience
├── Learning
├── Maintenance
└── Extension
29. Extension 与完整目录的关系
Extension 不应该简单地成为另一个普通功能目录。
它是:
SAI Framework
│
↓
Extension System
│
↓
External Extensions
例如:
Extension/
│
└── Extensions/
│
├── RobotExtension/
├── VehicleExtension/
├── IndustrialExtension/
└── WebExtension/
一个 RobotExtension 可以调用:
Object
Engine
Adapter
Device
Perception
但是这些能力仍然属于 Framework 的标准结构。
30. 完整架构分层
第109章可以进一步把 24 个目录分成八个大层。
第一层:Framework Core
Core
负责:
Runtime
Lifecycle
Registry
Manager
Event
Task
Log
Exception
第二层:World Representation
Information
Scene
Element
Object
Relation
Device
负责:
表示信息和世界对象。
第三层:Individual
Individual
Central
负责:
形成可运行的 SAI 个体。
第四层:Cognitive System
Perception
Cognition
Memory
Reasoning
Decision
负责:
获取
理解
记忆
推理
决策
第五层:Behavior & Expression
Behavior
Expression
Template
Renderer
负责:
行为组织
结果表达
模板处理
表现转换
第六层:External Connection
Adapter
Device
Feedback
负责:
外部连接
设备执行
结果反馈
第七层:Learning
Experience
Learning
负责:
经历
学习
知识
记忆更新
第八层:Self-Maintenance & Extension
Maintenance
Extension
负责:
检测
风险
冲突
诊断
修复
验证
恢复
以及:
扩展
加载
配置
运行
卸载
31. 最终完整架构
最终可以形成:
SAI Framework
│
┌────────────────────────┼────────────────────────┐
│ │ │
Core Individual Extension
│ │ │
│ Central Extensions
│ │
│ ↓
│ SAI Runtime
│ │
└──────────────┬─────────┴──────────────┐
↓ ↓
World Representation Cognitive System
│ │
┌──────────────┼──────────────┐ │
↓ ↓ ↓ ↓
Information Scene Object Perception
Element Relation Device Cognition
Memory
Reasoning
Decision
│ │
└──────────┬─────────────┘
↓
Behavior
↓
Expression
↓
Template
↓
Renderer
↓
Adapter
↓
Device / External World
↓
Feedback
↓
Experience
↓
Learning
↓
Memory Update
│
└────→ New Information
本章核心定义
| 目录 | 核心职责 |
|---|---|
| Core | Framework 基础运行 |
| Information | 信息输入 |
| Scene | 当前环境结构 |
| Individual | SAI 个体 |
| Central | 个体内部协调 |
| Element | 离散信息单元 |
| Object | 实体结构表示 |
| Relation | 对象关系 |
| Perception | 信息获取与结构化 |
| Cognition | 信息理解 |
| Memory | 记忆管理 |
| Reasoning | 结构化推理 |
| Decision | 方案选择 |
| Behavior | 行为过程 |
| Expression | 结果表达 |
| Template | 输出结构 |
| Renderer | 表现转换 |
| Adapter | 外部连接 |
| Device | 设备对象与设备管理 |
| Feedback | 执行结果反馈 |
| Experience | 历史经历 |
| Learning | 获取知识 |
| Maintenance | 自我检测、诊断、修复、验证 |
| Extension | Framework 功能扩展 |
第109章最终模型
可以把整个 SAI Framework 压缩成:
Core
↓
Individual
↓
Information
↓
Scene
↓
Perception
↓
Element
↓
Object
↓
Relation
↓
Cognition
↓
Memory
↓
Reasoning
↓
Decision
↓
Behavior
↓
Expression
↓
Template
↓
Renderer
↓
Adapter
↓
Device / External World
↓
Feedback
↓
Experience
↓
Learning
↓
Memory Update
↓
New Information
旁路系统:
Maintenance
↕
整个 SAI Runtime
以及:
Extension
↓
扩展整个 Framework 的功能
所以,第109章完成的不是单纯的“PHP 文件夹整理”,而是建立了 SAI Framework 第一套完整目录边界:
Core 负责框架,Individual 负责个体,Information 到 Decision 负责认知过程,Behavior 到 Adapter 负责行动与外部连接,Feedback 到 Learning 负责闭环学习,Maintenance 负责自我维护,Extension 负责持续扩展。
这套目录结构也为后续把前面各章的 Interface、Manager、Engine、Object、Registry、Lifecycle 等逐步落到实际 PHP 文件提供了统一基础。