第179章 BehaviorService
在 ICAI 工程体系中,DecisionService 完成候选方案的选择之后,系统已经确定“现在采用哪个方法”,但仍然没有进入真正的运行过程。
例如:
Goal = 获取杯子
↓
Capability = Move + Grasp + Detect
↓
Method = FetchCup
↓
Decision = Select FetchCup
此时还需要把被选择的方法组织成当前个体实际执行的行为。
因此,BehaviorService 位于:
Decision
↓
Selected Method
↓
BehaviorService
↓
Behavior
↓
Action
↓
Execution
↓
Result
BehaviorService 负责的不是“方法选择”,也不是“单个动作执行”,而是把已经确定的方法转化为一个当前可运行、可追踪、可产生结果并形成历史记录的行为过程。
因此,本章将 BehaviorService 定义为:
BehaviorService 是负责行为建立、行为执行协调、行为结果管理以及行为历史记录的应用服务。
其核心模型可以表示为:
BS=(B,E,R,H)BS=(B,E,R,H)
其中:
- BB = Behavior Building,行为建立;
- EE = Behavior Execution,行为执行;
- RR = Behavior Result,行为结果;
- HH = Behavior History,行为历史。
即:
BehaviorService
├── Behavior Build
├── Behavior Execution
├── Behavior Result
└── Behavior History
一、行为建立
行为建立(Behavior Building)是 BehaviorService 的第一项职责。
Behavior 并不是 Method 的另一个名称。
前面的 Method 解决:
采用什么方法完成目标?
Behavior 解决:
当前这个 Individual 如何按照选定方法组织实际行为?
因此:
Method
=
方法结构
Behavior
=
当前个体对方法的行为组织
前面已经定义 Behavior:
B=(G,C,A,E,R,S)B=(G,C,A,E,R,S)
其中:
- GG = Goal,目标;
- CC = Condition,行为条件;
- AA = Action Set,动作集合;
- EE = Execution,执行过程;
- RR = Result,结果;
- SS = State,行为状态。
因此,行为建立至少需要:
Individual
+
Goal
+
Selected Method
+
Current State
+
Condition
完整流程:
Selected Method
↓
Load Individual
↓
Load Goal
↓
Load Current State
↓
Create Behavior
↓
Bind Method
↓
Build Action Set
↓
Set Initial State
↓
Behavior Ready
二、行为建立不是立即执行
这一边界非常重要。
当 DecisionService 输出:
Selected Method = FetchCup
BehaviorService 可以建立:
Behavior = Robot01.FetchCup
但此时:
Behavior State = Created / Ready
并不意味着:
Action Already Executed
所以:
Create(B)≠Execute(B)Create(B)\neq Execute(B)
行为建立和行为执行必须是两个不同阶段。
完整生命周期:
Created
↓
Initialized
↓
Ready
↓
Running
↓
Completed
异常:
Running
├── Failed
├── Cancelled
└── Blocked
这样系统才能准确区分:
行为已经建立
与:
行为已经执行
三、行为建立的数据结构
一个 Behavior 可以至少包含:
Behavior
├── ID
├── Individual
├── Goal
├── Method
├── Condition
├── Actions
├── State
├── Execution
├── Result
└── CreatedAt
例如:
Behavior ID = 2001
Individual = Robot01
Goal = FetchCup
Method = FetchCupMethod
Actions:
1. DetectCup
2. MoveToCup
3. Align
4. Grasp
5. Confirm
State = Ready
这时 Behavior 已经具备执行条件。
四、行为与 Action 的关系
Behavior 是由一个或多个 Action 组织起来的。
可以表示为:
B=(A1,A2,…,An)B=(A_1,A_2,\ldots,A_n)
例如:
FetchCup Behavior
↓
Action 1 = DetectCup
↓
Action 2 = MoveToCup
↓
Action 3 = Align
↓
Action 4 = Grasp
↓
Action 5 = Confirm
但是:
Behavior 不是 Action 的简单集合。
Behavior 还必须定义:
Goal
Condition
Action Order
Execution Context
State
Expected Result
因此:
Behavior
=
Goal
+
Condition
+
Action Set
+
Execution Context
+
Result
+
State
Action 是具体操作单元,而 Behavior 是对这些操作的整体组织。
五、行为执行
行为执行(Behavior Execution)是 BehaviorService 的第二项职责。
这里必须严格区分:
Behavior
Action
Execution
三者分别表示:
Behavior
当前行为整体。
Action
行为中的具体操作。
Execution
Action 真正发生的运行过程。
因此:
Behavior≠Action≠ExecutionBehavior\neq Action\neq Execution
例如:
Behavior = FetchCup
Action = MoveToCup
Execution =
Robot01 从当前位置实际移动到杯子位置的过程
所以 BehaviorService 不应该把:
$behavior->execute()
理解成整个系统已经完成实际执行。
真正的执行过程应该进入 Execution 层。
六、BehaviorService 对执行的职责
BehaviorService 的“行为执行”主要表现为执行协调。
它负责:
检查 Behavior State
↓
检查 Goal
↓
检查 Method
↓
加载 Action
↓
建立 Execution Context
↓
启动 Action / Execution
↓
接收 Execution Result
↓
更新 Behavior State
因此:
BehaviorService
↓
ExecutionService
↓
Action
↓
Execution
BehaviorService 不应该直接承担所有底层执行逻辑。
七、行为执行的完整流程
一次 Behavior 执行可以表示为:
Behavior Created
↓
Behavior Initialized
↓
Condition Check
↓
Behavior Ready
↓
Start Behavior
↓
Action 1
↓
Execution 1
↓
Result 1
↓
Action 2
↓
Execution 2
↓
Result 2
↓
...
↓
Action N
↓
Execution N
↓
Behavior Result
如果任何 Action 失败:
Action N
↓
Execution
↓
Failure
↓
Behavior Failed
↓
Feedback
↓
Diagnosis
因此 BehaviorService 必须能够管理行为级状态,而不能只关注单个 Action。
八、行为执行状态
Behavior 可以具有:
created
initialized
ready
running
paused
blocked
completed
failed
cancelled
例如:
Created
↓
Initialized
↓
Ready
↓
Running
↓
Completed
异常:
Running
↓
Action Failure
↓
Failed
或者:
Running
↓
External Condition
↓
Paused
↓
Condition Restored
↓
Running
状态转换仍然应该交由 StateService / StateEngine 管理。
因此:
BehaviorService
↓
StateService
↓
StateEngine
↓
Behavior State
BehaviorService 负责协调,而不是绕过状态规则直接修改状态。
九、行为结果
行为结果(Behavior Result)是 BehaviorService 的第三项职责。
必须区分:
Action Result
Behavior Result
Goal Result
Action Result:
一个具体 Action 实际产生了什么。
Behavior Result:
整个 Behavior 最终产生了什么。
Goal Result:
Behavior 的结果是否满足 Goal。
例如:
Action 1 = DetectCup
Result 1 = Found
Action 2 = MoveToCup
Result 2 = Arrived
Action 3 = GraspCup
Result 3 = Held
Action 4 = ConfirmCup
Result 4 = Confirmed
则:
Behavior Result
=
Cup Successfully Retrieved
但是如果:
Detect = Success
Move = Success
Grasp = Failure
那么:
Behavior Result
=
Failed
不能因为前两个 Action 成功,就认为整个 Behavior 成功。
十、行为结果必须来自实际执行
这是 ICAI 工程体系中的基本原则:
Result 必须来自实际 Execution,而不能根据预期直接生成。
因此:
ExpectedResult≠ActualResultExpectedResult\neq ActualResult
完整关系:
Execution→ActualResultExecution\rightarrow ActualResult
然后:
ExpectedResult+ActualResult→ComparisonExpectedResult+ActualResult \rightarrow Comparison
例如:
Expected:
CupHeld = true
Actual:
CupHeld = false
则:
Behavior Result = Failed
而不能因为:
Grasp Action = Executed
就认为:
Behavior = Success
这与前面 Result、Feedback、Verification 的定义保持一致。
十一、行为结果的结构
可以建立:
BR=(B,E,A,C,S,T)BR=(B,E,A,C,S,T)
其中:
- BB = Behavior;
- EE = Expected Result;
- AA = Actual Result;
- CC = Comparison;
- SS = Result Status;
- TT = Time。
例如:
Behavior = FetchCup
Expected = CupHeld
Actual = CupHeld
Comparison = Match
Status = Success
失败:
Behavior = FetchCup
Expected = CupHeld
Actual = CupNotHeld
Comparison = Mismatch
Status = Failed
这样行为结果可以直接进入 Feedback。
十二、Behavior Result 与 Goal Completion
Behavior 完成不一定等于 Goal 完成。
例如:
Behavior = MoveToWarehouse
行为结果:
Robot Arrived = true
但是 Goal 可能是:
Box Delivered = true
如果箱子没有被放下:
Behavior Result = Success
Goal Result = Incomplete
因此:
BehaviorCompleted≠GoalCompletedBehaviorCompleted\neq GoalCompleted
Goal 完成仍然需要:
Behavior Result
+
Goal Condition
+
Verification
这一点与第175章 GoalService 保持一致。
十三、行为历史
行为历史(Behavior History)是 BehaviorService 的第四项职责。
Behavior History 记录:
过去发生过哪些 Behavior,以及这些 Behavior 在什么条件下产生了什么结果。
例如:
Behavior History
B001
Goal = FetchCup
Method = MethodA
Result = Success
Time = T1
B002
Goal = FetchCup
Method = MethodA
Result = Failure
Time = T2
B003
Goal = FetchCup
Method = MethodB
Result = Success
Time = T3
可以表示为:
HB={B1,B2,…,Bn}H_B=\{B_1,B_2,\ldots,B_n\}
每条行为历史可以包含:
Behavior ID
Individual ID
Goal ID
Method ID
Start Time
End Time
Initial State
Final State
Action Summary
Result
Failure
Reason
十四、行为历史不是 Behavior 本身
必须保持:
Behavior
=
当前行为对象
Behavior History
=
过去行为事实
例如当前:
Behavior B100
State = Running
历史可能已经有:
B001 Completed
B002 Failed
B003 Completed
因此:
CurrentBehavior≠BehaviorHistoryCurrentBehavior\neq BehaviorHistory
History 是过去事实的集合,而 Behavior 是当前或者具体一次行为对象。
十五、行为历史与 Memory 的关系
Behavior History 可以成为 Memory 的来源。
完整过程:
Behavior
↓
Action
↓
Execution
↓
Result
↓
Behavior History
↓
Memory
↓
Experience
例如:
过去 10 次 FetchCup
其中 8 次 Method A 成功
2 次失败
这些首先是历史事实。
系统进一步整理:
Memory
↓
Pattern Comparison
↓
Experience
形成:
Experience:
当 ObjectPosition = Side
Method B 的成功率更高
然后未来 DecisionService 可以使用该经验。
所以:
History
→ 记录
Memory
→ 保存可利用信息
Experience
→ 从历史和记忆中形成结构化模式
三者不能混为一个对象。
十六、行为历史与 Decision History
Behavior History 和 Decision History 也必须分开。
Decision History:
选择了什么?
为什么选择?
Behavior History:
实际执行了什么行为?
最终发生了什么?
例如:
Decision History:
Method A selected
Reason = Lowest Risk
Behavior History:
Method A executed
Action 1 = Success
Action 2 = Failure
Behavior = Failed
因此:
DecisionHistory≠BehaviorHistoryDecisionHistory\neq BehaviorHistory
但二者可以通过关系连接:
Decision
↓
Behavior
这样系统可以追溯:
为什么选择这个方法?
↓
选择之后实际发生了什么?
↓
结果是否符合预期?
十七、行为建立与 Method 的关系
Behavior 通常由 Selected Method 建立。
因此:
Decision Result
↓
Selected Method
↓
BehaviorService
↓
Create Behavior
例如:
Decision:
Selected Method = FetchCupMethod
BehaviorService 建立:
Behavior:
Individual = Robot01
Goal = FetchCup
Method = FetchCupMethod
State = Ready
因此:
Behavior 是 Selected Method 在具体 Individual、Goal、State 和 Runtime Context 下形成的运行对象。
同一个 Method 可以产生不同 Behavior:
FetchCupMethod
↓
Robot01.FetchCup Behavior
Robot02.FetchCup Behavior
因为两个 Individual 的:
State
Capability
Position
Environment
Memory
Experience
可能不同。
十八、BehaviorService 与 ActionService
BehaviorService 不应该把所有 Action 逻辑全部写进自己内部。
正确结构:
BehaviorService
↓
ActionService
↓
Action
↓
ExecutionService
↓
Execution
BehaviorService 负责:
Action 顺序
Action 条件
Behavior 状态
Behavior 上下文
Behavior 级结果
ActionService 负责:
Action 创建
Action读取
Action 参数
Action 状态
Action 执行协调
ExecutionService 负责:
实际执行过程
执行开始
执行结束
执行状态
实际执行结果
这样能够避免 BehaviorService 变成一个巨型 Service。
十九、BehaviorService 的执行协调
BehaviorService 可以建立:
class BehaviorService
{
protected $repository;
protected $actionService;
protected $executionService;
protected $stateService;
public function __construct(
$repository,
$actionService,
$executionService,
$stateService
) {
$this->repository = $repository;
$this->actionService = $actionService;
$this->executionService = $executionService;
$this->stateService = $stateService;
}
public function create($goal, $method, $individual)
{
$behavior = new Behavior();
$behavior->setGoal($goal);
$behavior->setMethod($method);
$behavior->setIndividual($individual);
$behavior->setState('created');
return $this->repository->save($behavior);
}
public function execute($behaviorId)
{
$behavior = $this->repository->find($behaviorId);
if (!$behavior) {
return false;
}
$this->stateService->change(
$behavior,
'running'
);
return $this->executionBehavior($behavior);
}
protected function executionBehavior($behavior)
{
$actions = $behavior->getActions();
foreach ($actions as $action) {
$result = $this->executionService->execute($action);
if (!$result->isSuccess()) {
$this->stateService->change(
$behavior,
'failed'
);
return $result;
}
}
$this->stateService->change(
$behavior,
'completed'
);
return true;
}
}
这里的关键不是代码形式,而是职责关系:
BehaviorService
→ 组织 Behavior
ActionService
→ 管理 Action
ExecutionService
→ 执行 Action
StateService
→ 管理状态
Repository
→ 保存数据
二十、行为结果处理
行为执行结束后,BehaviorService 必须形成 Behavior Result。
流程:
Action Results
↓
Collect
↓
Compare Expected / Actual
↓
Build Behavior Result
↓
Update Behavior State
↓
Save Behavior History
↓
Feedback
例如:
Action 1 = Success
Action 2 = Success
Action 3 = Failure
Action 4 = NotExecuted
最终:
Behavior Result = Failed
Failure Action = Action 3
Remaining Actions = NotExecuted
这比简单保存:
behavior.status = failed
更加完整。
二十一、行为失败后的处理
Behavior 失败后,不能简单删除 Behavior。
正确流程:
Behavior
↓
Action Failure
↓
Execution Result
↓
Behavior Result
↓
Feedback
↓
Diagnosis
Diagnosis 可以判断:
Capability Problem
Method Problem
Action Problem
Execution Problem
Environment Problem
Object State Problem
然后进入:
Capability Update
Method Update
Repair
Protection
Decision Re-evaluation
因此 BehaviorService 是连接执行结果与后续认知更新的重要服务。
二十二、行为历史数据库结构
可以建立:
behaviors
behavior_actions
behavior_executions
behavior_results
behavior_history
behaviors
id
individual_id
goal_id
method_id
state
created_at
updated_at
behavior_actions
id
behavior_id
action_id
sequence
condition
state
created_at
behavior_executions
id
behavior_id
action_id
execution_id
state
started_at
ended_at
behavior_results
id
behavior_id
expected_result
actual_result
comparison
status
reason
created_at
behavior_history
id
behavior_id
event
from_state
to_state
result
reason
created_at
这样可以完整保存一次 Behavior 的运行过程。
二十三、行为历史与状态历史
Behavior History 与 State History 也不是同一个对象。
State History:
Ready
↓
Running
↓
Failed
Behavior History:
Behavior Started
Action 1 Completed
Action 2 Completed
Action 3 Failed
Behavior Failed
因此:
StateHistory≠BehaviorHistoryStateHistory\neq BehaviorHistory
但是二者可以相互关联。
例如:
Behavior History
↓
State History
以及:
State Change
↓
Feedback
↓
Behavior History
二十四、行为历史必须保留实际事实
Behavior History 不能只记录最终状态。
例如:
Behavior = FetchCup
Status = Failed
这种记录无法回答:
在哪一步失败?
失败之前完成了什么?
失败时对象是什么状态?
哪个 Action 导致失败?
当时采用什么 Method?
因此应该保存:
Goal
Method
Action Sequence
Execution
Expected Result
Actual Result
State Changes
Failure
Reason
Time
这样历史才具有认知价值。
二十五、BehaviorService 与 FeedbackService
行为结果产生之后,可以进入 FeedbackService。
完整关系:
Behavior
↓
Action
↓
Execution
↓
Result
↓
Behavior Result
↓
FeedbackService
↓
Feedback
BehaviorService 负责产生和整理行为结果。
FeedbackService 负责把结果、状态变化和环境变化组织成反馈对象。
因此:
Behavior Result
≠
Feedback
Result:
行为实际产生了什么。
Feedback:
系统从这个结果及状态变化中获得了什么反馈信息。
这与第163章 Feedback 类保持一致。
二十六、BehaviorService 与 Memory / Experience
行为完成之后:
Behavior History
↓
Memory
↓
Experience
例如:
Behavior History:
FetchCup Method A
10 次执行
8 次成功
2 次失败
Memory 保存相关事实。
Experience 则可能形成:
Condition X
+
Method A
+
Result Pattern
→
Method A 更适合 Condition X
下一次:
Goal
↓
Capability
↓
Method Candidates
↓
Decision
↓
Behavior
DecisionService 可以再次利用这些经验。
因此行为历史成为 ICAI 闭环学习的重要数据来源。
二十七、BehaviorService 与 Runtime Object
第168章已经建立 Runtime Object。
BehaviorService 运行时处理的 Behavior,不应该被理解为普通数据库记录。
数据库:
behavior_id = 1001
state = running
只是持久化数据。
真正运行中的 Behavior 是:
Runtime Behavior
=
Behavior Object
+
Current State
+
Current Action
+
Execution Context
+
Current Time
+
Relations
可以表示为:
RB=(B,S,A,E,C,T)RB=(B,S,A,E,C,T)
其中:
- BB = Behavior;
- SS = Current State;
- AA = Current Action;
- EE = Current Execution;
- CC = Runtime Context;
- TT = Current Time。
因此:
Class
↓
Behavior Object
↓
Runtime Behavior
这与第168章建立的:
Class → Object → Runtime Object
保持一致。
二十八、行为执行的运行时结构
运行过程中可以形成:
Runtime Behavior
↓
Current Action
↓
Current Execution
↓
Actual Result
↓
State Update
例如:
Behavior = FetchCup
State = Running
CurrentAction = MoveToCup
Execution = Running
Result = Pending
执行结束:
CurrentAction = MoveToCup
Execution = Completed
Result = Arrived
Behavior State = Continue
下一步:
CurrentAction = GraspCup
这样 BehaviorService 就真正连接了 ICAI 的运行时对象体系。
二十九、BehaviorService 的完整工程架构
最终可以形成:
Controller
↓
BehaviorService
├── BehaviorRepository
├── ActionService
├── ExecutionService
├── ResultService
├── StateService
└── FeedbackService
其中:
BehaviorService
→ 行为生命周期与执行协调
ActionService
→ Action 管理
ExecutionService
→ 实际执行
ResultService
→ Result 管理
StateService
→ 状态转换
FeedbackService
→ 执行反馈
Repository 只负责持久化。
三十、BehaviorService 的核心执行模型
可以将 BehaviorService 正式表示为:
BS=(B,E,R,H)BS=(B,E,R,H)
其中:
B=Behavior BuildB=Behavior\ Build
负责建立当前行为;
E=Behavior ExecutionE=Behavior\ Execution
负责协调行为及其 Action 的实际执行;
R=Behavior ResultR=Behavior\ Result
负责收集 Action Result、比较 Expected / Actual 并形成 Behavior Result;
H=Behavior HistoryH=Behavior\ History
负责记录行为生命周期、Action 执行、状态变化和最终结果。
因此:
BehaviorService
=
Build
+
Execute
+
Result
+
History
三十一、行为完整生命周期
完整生命周期为:
Decision Result
↓
Selected Method
↓
Create Behavior
↓
Initialize
↓
Ready
↓
Running
↓
Action 1
↓
Execution 1
↓
Result 1
↓
Action 2
↓
Execution 2
↓
Result 2
↓
...
↓
Action N
↓
Execution N
↓
Behavior Result
↓
Completed / Failed
↓
Behavior History
↓
Feedback
↓
Memory
↓
Experience
异常路径:
Running
↓
Execution Failure
↓
Behavior Failed
↓
Feedback
↓
Diagnosis
↓
Repair / Method Update / Capability Update
↓
Decision Re-evaluation
↓
New Behavior
这样 Behavior 不只是一个“执行按钮”,而是一个完整的运行时认知对象。
三十二、行为结果与下一次决策
行为结果最终会影响未来 Decision。
例如:
Decision
↓
Method A
↓
Behavior
↓
Execution
↓
Failure
之后:
Behavior History
↓
Memory
↓
Experience
↓
DecisionService
下一次:
Method A
↓
Candidate Evaluation
↓
Risk Increase
↓
Method B
因此形成:
Decisiont→Behaviort→Resultt→Historyt→Experience→Decisiont+1Decision_t \rightarrow Behavior_t \rightarrow Result_t \rightarrow History_t \rightarrow Experience \rightarrow Decision_{t+1}
这就是 ICAI 中行为反馈进入后续决策的基本路径。
三十三、BehaviorService 与前面 Service 层的统一结构
目前整个 Service 层可以进一步形成:
NeedService
↓
Need
GoalService
↓
Goal
CapabilityService
↓
Capability
MethodService
↓
Method
DecisionService
↓
Decision
BehaviorService
↓
Behavior
Action / Execution
↓
Result
FeedbackService
↓
Feedback
MemoryService
↓
Memory
ExperienceService
↓
Experience
其中核心运行链为:
Need→Goal→Capability→Method→Decision→Behavior→Action→Execution→ResultNeed \rightarrow Goal \rightarrow Capability \rightarrow Method \rightarrow Decision \rightarrow Behavior \rightarrow Action \rightarrow Execution \rightarrow Result
然后反向形成:
Result→Feedback→History→Memory→ExperienceResult \rightarrow Feedback \rightarrow History \rightarrow Memory \rightarrow Experience
再进入下一次:
Decision→BehaviorDecision \rightarrow Behavior
由此形成完整闭环。
三十四、本章总结
BehaviorService 是 ICAI Service 层中从“决策选择”进入“实际行为运行”的核心服务。
本章建立了四项基本职责:
行为建立
行为执行
行为结果
行为历史
其核心模型为:
BehaviorService=(Build,Execute,Result,History)BehaviorService=(Build,Execute,Result,History)
其中:
行为建立负责将 DecisionService 选择的 Method 绑定到具体 Individual、Goal 和当前 Runtime Context,形成一个可以运行的 Behavior。
行为执行负责协调 Behavior 中 Action 与 Execution 的运行过程,但不把 BehaviorService 本身变成底层执行器。
行为结果负责根据真实 Execution Result 汇总整个 Behavior 的实际结果,并严格区分 Expected Result 与 Actual Result。
行为历史负责保存过去 Behavior 的执行事实、状态变化、Action、Execution、Result、Failure 和原因,为 Memory、Experience、Diagnosis 和未来 Decision 提供事实依据。
最终形成:
Decision
↓
Selected Method
↓
Behavior Build
↓
Behavior Ready
↓
Behavior Execute
↓
Action
↓
Execution
↓
Actual Result
↓
Behavior Result
↓
Behavior History
↓
Feedback
↓
Memory
↓
Experience
↓
Future Decision
最重要的工程边界是:
Method
→ 采用什么方法
Decision
→ 选择哪个方法
Behavior
→ 当前个体如何组织这个方法
Action
→ 具体做什么操作
Execution
→ 操作实际如何发生
Result
→ 实际产生了什么
History
→ 过去发生过什么
因此,BehaviorService 最终建立的是:
SelectedMethod→Behavior→Action→Execution→Result→HistorySelectedMethod \rightarrow Behavior \rightarrow Action \rightarrow Execution \rightarrow Result \rightarrow History
这一完整行为运行链。
行为完成后又通过:
BehaviorHistory→Memory→Experience→DecisionBehaviorHistory \rightarrow Memory \rightarrow Experience \rightarrow Decision
将实际运行事实重新送回认知体系,使 ICAI 形成:
目标 → 能力 → 方法 → 决策 → 行为 → 执行 → 结果 → 历史 → 记忆 → 经验 → 再决策
的连续认知工程闭环。