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

第89章 让 Individual 进行决策

第89章 让 Individual 进行决策

第88章中,Individual 已经能够完成:

Scene → Cognition → Understanding → Memory → Fact → Rule → Reasoning → Conclusion

但是,Conclusion 仍然不是 Decision

例如:

Conclusion:
Vehicle_A.risk = HIGH

这个结论只能说明:

当前车辆存在较高风险。

Individual 下一步必须回答:

现在应该做什么?

这就是 Decision。

决策不是简单地把结论转换成动作,而是需要综合:

  • Reasoning Result
  • Candidate
  • Risk
  • Priority
  • Experience
  • Ability
  • Current State
  • Conditions

最后选择一个可执行方案。


1. Reasoning Result

Reasoning Result 是第88章 Reasoning 产生的推理结果。

它是 Decision 的重要输入。

例如:

Reasoning Result

Vehicle_A.risk = HIGH
Vehicle_A.relative_speed = 30
Obstacle_A.distance = 20
Vehicle_A.state = MOVING

可以理解为:

Reasoning
    ↓
Reasoning Result
    ↓
Decision

1.1 Reasoning Result 结构

ReasoningResult
├── id
├── subject
├── conclusions
├── facts
├── rules
├── reasoning_chain
├── state
├── confidence
└── created_at

例如:

$reasoningResult = array(
    'id' => 'reasoning_001',

    'subject' => 'Vehicle_A',

    'conclusions' => array(
        array(
            'property' => 'risk',
            'value' => 'HIGH'
        ),
        array(
            'property' => 'relative_speed',
            'value' => 30
        )
    ),

    'facts' => array(
        'fact_001',
        'fact_002',
        'fact_003'
    ),

    'rules' => array(
        'rule_001'
    ),

    'reasoning_chain' => 'chain_001',

    'state' => 'CONFIRMED',

    'confidence' => 1.0
);

1.2 Reasoning Result 不等于 Decision

例如:

Reasoning Result:

risk = HIGH

不能直接表示:

Decision = STOP

因为 Individual 还需要考虑:

有哪些候选行为?
哪个候选行为风险最低?
哪个行为当前能够执行?
哪个行为优先级最高?
当前是否存在冲突?
历史经验如何?
Individual 是否具有对应能力?

因此:

Reasoning Result
       ↓
Candidate
       ↓
Risk
       ↓
Priority
       ↓
Decision

2. Candidate

Candidate 是 Individual 根据当前目标和条件形成的候选决策方案

例如车辆发现前方障碍物:

Candidate_1 = CONTINUE
Candidate_2 = DECELERATE
Candidate_3 = STOP
Candidate_4 = TURN

这时 Individual 还没有选择。

只是:

把可能采取的方案列出来。


2.1 Candidate 来源

Candidate 可以来自:

Rule
Experience
Ability
Method
Memory
Current State
Environment
Task

例如:

Current Situation:
Obstacle_A.distance = 20m

根据 Individual 当前能力,可以形成:

CONTINUE
DECELERATE
STOP
TURN
WAIT

2.2 Candidate 结构

Candidate
├── id
├── type
├── target
├── action
├── condition
├── capability
├── risk
├── priority
├── experience
├── score
└── state

例如:

$candidate = array(
    'id' => 'candidate_001',
    'type' => 'DECELERATE',
    'target' => 'Vehicle_A',
    'action' => array(
        'method' => 'SET_SPEED',
        'value' => 20
    ),
    'condition' => 'Vehicle_A.state == MOVING',
    'state' => 'AVAILABLE'
);

2.3 Candidate 的核心意义

Candidate 解决的是:

“有哪些可以考虑的方案?”

而不是:

“最终应该选择哪一个?”

所以:

Candidate ≠ Decision

3. Risk

Risk 是 Decision 对候选方案进行选择时必须考虑的重要因素。

第51章已经定义:

RiskScore = Probability × Impact

因此,一个 Candidate 不应该只看“能不能执行”,还必须判断:

执行以后可能产生什么风险?


3.1 Candidate Risk

例如:

Candidate 可能结果 Risk
CONTINUE 继续接近障碍物 HIGH
DECELERATE 降低速度 MEDIUM
STOP 停止 LOW
TURN 改变方向 MEDIUM/HIGH

所以:

Candidate
    ↓
Risk Evaluation
    ↓
Risk Result

3.2 Risk 不能简单理解为“不能执行”

例如:

Risk = HIGH

不一定意味着:

Candidate = REJECT

还需要判断:

有没有更安全的候选方案?
当前任务是否允许?
风险是否可接受?
是否存在更高优先级任务?

只有达到不可接受条件时,才应该拒绝。

例如:

CRITICAL
+
不可接受
+
存在替代方案

可以:

Candidate → REJECTED

3.3 UNKNOWN 不是 LOW

这一点必须保持。

Risk = LOW

表示已经判断风险较低。

而:

Risk = UNKNOWN

表示:

当前信息不足,无法确认风险。

因此:

UNKNOWN ≠ LOW

对于安全相关 Decision,UNKNOWN 通常不能直接当作安全。


4. Priority

当多个 Candidate 都可以执行时,Individual 还需要确定:

哪个更应该优先?

这就是 Priority。


4.1 Priority 的来源

Priority 可以来自:

Goal
Task
Rule
Risk
Time
Object Importance
Current State
Experience
System Policy

例如:

当前目标:
避免碰撞

那么:

STOP

可能具有比:

CONTINUE

更高的优先级。


4.2 Priority Score

可以使用离散、可配置的计算方式:

PriorityScore =
ConditionScore × ConditionWeight
+
UrgencyScore × UrgencyWeight
+
ImportanceScore × ImportanceWeight
+
SafetyScore × SafetyWeight

例如:

ConditionScore = 1.0
UrgencyScore = 0.9
ImportanceScore = 0.8
SafetyScore = 0.95

根据系统配置计算最终 Priority Score。

这里的计算是明确的数学规则,不需要神经网络,也不需要生成式模型。


4.3 Priority 与 Risk 的关系

Risk 和 Priority 不一样。

Risk
=
这个方案可能有多危险?

Priority
=
这个方案应该多优先考虑?

例如:

Candidate A
Risk = LOW
Priority = LOW

Candidate B
Risk = MEDIUM
Priority = HIGH

Candidate B 仍然可能被选择,因为当前任务可能具有很高的时间要求。

因此:

Risk ≠ Priority

5. Decision

Decision 是 Individual 对多个 Candidate 进行条件检查、风险评估、优先级计算、冲突处理后形成的选择结果

核心过程:

Reasoning Result
       ↓
Candidate Generation
       ↓
Condition Check
       ↓
Capability Check
       ↓
Risk Evaluation
       ↓
Priority Evaluation
       ↓
Conflict Check
       ↓
Candidate Ranking
       ↓
Decision

5.1 Decision 的基本结构

Decision
├── id
├── goal
├── context
├── reasoning_result
├── candidates
├── conditions
├── risks
├── priorities
├── conflicts
├── selected
├── rejected
├── reason
├── state
└── created_at

例如:

$decision = array(
    'id' => 'decision_001',

    'goal' => 'Vehicle Safety',

    'reasoning_result' => 'reasoning_001',

    'candidates' => array(
        'candidate_continue',
        'candidate_decelerate',
        'candidate_stop'
    ),

    'selected' => 'candidate_decelerate',

    'reason' => 'HIGH risk detected; deceleration provides safer available response',

    'state' => 'DECIDED'
);

5.2 Decision 的基本流程

第一步:读取 Reasoning Result

risk = HIGH
relative_speed = 30
distance = 20

第二步:获取 Candidate

CONTINUE
DECELERATE
STOP
TURN

第三步:检查条件

例如:

Vehicle_A.state = MOVING

那么:

DECELERATE → AVAILABLE
STOP → AVAILABLE
CONTINUE → AVAILABLE

第四步:风险评估

CONTINUE → HIGH
DECELERATE → MEDIUM
STOP → LOW
TURN → MEDIUM

第五步:Priority

根据当前目标:

Safety Priority = HIGH

第六步:选择

例如:

DECELERATE

成为当前 Decision。


6. Decision Result

Decision 完成后,Individual 需要形成明确的 Decision Result。

它记录:

最终选择了什么,以及为什么选择。


6.1 Decision Result 结构

DecisionResult
├── id
├── decision_id
├── goal
├── selected_candidate
├── rejected_candidates
├── risk
├── priority
├── reason
├── state
├── next_behavior
└── created_at

例如:

$decisionResult = array(
    'id' => 'decision_result_001',

    'decision_id' => 'decision_001',

    'goal' => 'Vehicle Safety',

    'selected_candidate' => 'DECELERATE',

    'rejected_candidates' => array(
        'CONTINUE',
        'TURN'
    ),

    'risk' => 'MEDIUM',

    'priority' => 'HIGH',

    'reason' => 'Reduce speed because obstacle distance is decreasing',

    'state' => 'DECIDED',

    'next_behavior' => 'BEHAVIOR_DECELERATE'
);

这里出现一个重要连接:

Decision Result
      ↓
Behavior
      ↓
Action

Decision 不直接执行 Action。


7. 实际案例

继续使用第87章、第88章中的:

Individual_A
Vehicle_A
Obstacle_A

这样三个章节能够形成连续的 Individual 运行过程。


7.1 第87章:理解场景

Individual 感知到:

Vehicle_A
speed = 40 km/h
state = MOVING

前方:

Obstacle_A
speed = 10 km/h
distance = 20 m

关系:

Vehicle_A front_of Obstacle_A

形成:

Scene Understanding

7.2 第88章:Reasoning

Individual 计算:

relative_speed
=
40 - 10
=
30 km/h

Rule:

IF
distance < 30
AND
relative_speed > 20

THEN
risk = HIGH

条件:

20 < 30 → TRUE

30 > 20 → TRUE

所以:

Reasoning Result

Vehicle_A.risk = HIGH
Vehicle_A.relative_speed = 30

7.3 第89章:Candidate

Individual 现在开始决策。

产生:

Candidate_1 = CONTINUE
Candidate_2 = DECELERATE
Candidate_3 = STOP
Candidate_4 = TURN

7.4 Risk Evaluation

Individual 对 Candidate 分别计算风险:

CONTINUE
Risk = HIGH

因为车辆仍然高速接近障碍物。

DECELERATE
Risk = MEDIUM

因为降低速度能够增加安全距离。

STOP
Risk = LOW

因为停止能够最大程度降低继续接近风险。

TURN
Risk = MEDIUM/HIGH

因为转向还需要确认相邻区域是否安全。


7.5 Priority Evaluation

当前目标:

Goal = Vehicle Safety

因此安全相关行为具有高优先级。

例如得到:

CONTINUE
Priority = LOW

DECELERATE
Priority = HIGH

STOP
Priority = HIGH

TURN
Priority = MEDIUM

7.6 Candidate Comparison

最终形成:

Candidate Risk Priority 状态
CONTINUE HIGH LOW 不优先
DECELERATE MEDIUM HIGH 可选
STOP LOW HIGH 可选
TURN MEDIUM/HIGH MEDIUM 条件不足

此时并不是简单:

Risk 最低 = 自动选择

而是继续结合:

  • 当前速度
  • 当前距离
  • 车辆状态
  • 当前目标
  • Vehicle_A 的 Ability
  • 可执行性
  • 历史 Experience
  • 当前环境

进行最终选择。

假设系统当前判断:

DECELERATE

能够降低风险,同时不需要立即停止车辆。

于是:

Decision = DECELERATE

7.7 Decision Result

最终:

DecisionResult

goal:
Vehicle Safety

selected:
DECELERATE

risk:
MEDIUM

priority:
HIGH

state:
DECIDED

并形成下一阶段:

Behavior = DECELERATE

所以完整链条变成:

Information
    ↓
Perception
    ↓
Scene
    ↓
Cognition
    ↓
Understanding
    ↓
Memory
    ↓
Fact
    ↓
Rule
    ↓
Reasoning
    ↓
Reasoning Result
    ↓
Candidate
    ↓
Risk
    ↓
Priority
    ↓
Decision
    ↓
Decision Result
    ↓
Behavior
    ↓
Action

本章核心模型

                  Individual
                      │
                      ▼
              Reasoning Result
                      │
                      ▼
                 Candidates
                      │
          ┌───────────┼───────────┐
          ▼           ▼           ▼
       Condition     Risk       Ability
          │           │           │
          └───────────┼───────────┘
                      ▼
                   Priority
                      │
                      ▼
                   Conflict
                      │
                      ▼
                Candidate
                 Evaluation
                      │
                      ▼
                   Decision
                      │
                      ▼
               Decision Result
                      │
                      ▼
                  Behavior
                      │
                      ▼
                   Action

本章核心定义

对象 定义
Reasoning Result Individual 根据事实、规则、经验等得到的推理结果
Candidate 当前条件下可以考虑的候选方案
Risk Candidate 可能产生的不利影响及其程度
Priority Candidate 在当前目标中的重要程度和处理顺序
Decision 对 Candidate 进行综合判断后形成的选择过程与结果
Decision Result 明确记录最终选择、风险、优先级和选择原因的结构化结果

最重要的边界是:

Reasoning
=
得出结论

Candidate
=
提出可选方案

Risk
=
判断可能的危险

Priority
=
判断处理重要程度

Decision
=
选择方案

Behavior
=
组织执行过程

Action
=
执行具体操作

因此,第89章之后,Individual 已经形成:

第87章
Individual 能够感知并理解世界

        ↓

第88章
Individual 能够推理并形成结论

        ↓

第89章
Individual 能够根据结论、
候选方案、风险和优先级进行决策

        ↓

第90章
Individual 将进入 Behavior / 行为执行

核心关系最终确定为:

Understanding
      ↓
Reasoning
      ↓
Conclusion
      ↓
Decision
      ↓
Behavior
      ↓
Action

也就是:

理解世界 → 推导结论 → 选择方案 → 组织行为 → 执行行动。

Leave a Reply

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