第105章 决策与个体行为
105.1 提出背景
个体人工智能在完成需求识别、目标形成、能力匹配、方法匹配以及决策选择之后,还必须解决一个更加直接的问题:已经形成的决策如何进入实际行为。
在前面的理论中,方法解决的是“采用什么执行方式”,决策解决的是“最终确定什么方案”。但是,决策确定并不意味着行为已经发生。一个机器个体可以已经完成决策,却因为状态、资源、安全、环境或者其他条件发生变化而暂时不能执行。
因此,必须在决策与行为之间建立明确的转换机制:
Decision→BehaviorDecision\rightarrow Behavior
但是这一转换不是无条件发生的,而是:
Decision→DecisionCondition→BehaviorCondition→ConstraintCheck→BehaviorDecision \rightarrow DecisionCondition \rightarrow BehaviorCondition \rightarrow ConstraintCheck \rightarrow Behavior
由此形成“决策—行为”之间的基本工程关系。
个体行为不是独立产生的。行为是个体在当前状态、目标、能力、方法、决策和条件共同作用下产生的实际运行过程。
因此:
Behavior=f(Decision,Goal,Method,Capability,State,Condition,Constraint)Behavior= f( Decision, Goal, Method, Capability, State, Condition, Constraint )
本章研究决策如何形成行为,以及决策条件、行为条件、决策约束和决策结果之间的关系。
105.2 决策形成行为
105.2.1 行为定义
**个体行为(Individual Behavior)**是机器个体根据已经确定的决策,在满足执行条件和约束的情况下,对一个对象、目标或环境实施的有结构的执行过程。
行为不是简单的动作。
可以定义:
Behavior=Decision+Method+Action+Condition+ResultBehavior= Decision+ Method+ Action+ Condition+ Result
其中:
- BehaviorBehavior:行为;
- DecisionDecision:已经确定的决策;
- MethodMethod:执行方法;
- ActionAction:具体动作;
- ConditionCondition:行为执行条件;
- ResultResult:行为产生的结果。
因此:
Decision≠BehaviorDecision\neq Behavior
决策回答:
做什么、选择什么方案。
行为回答:
按照已经确定的方案实际执行什么。
动作则是行为中的具体执行单位:
Behavior→Action1→Action2→Action3Behavior\rightarrow Action_1\rightarrow Action_2\rightarrow Action_3
例如,一个机器个体决定“将某个设备切换到安全状态”。
决策是:
Decision=SwitchToSafeStateDecision=SwitchToSafeState
行为则是:
Behavior→StopCurrentOperation→CheckDevice→SwitchSafeState→VerifyStateBehavior \rightarrow StopCurrentOperation \rightarrow CheckDevice \rightarrow SwitchSafeState \rightarrow VerifyState
因此,决策是行为的形成依据,而行为是决策进入运行阶段后的具体表现。
105.2.2 决策形成行为的基本关系
决策形成行为可以表示为:
Decision→BehaviorDecision\rightarrow Behavior
但是完整过程应当表示为:
Goal→Method→Decision→ConditionCheck→ConstraintCheck→BehaviorGoal \rightarrow Method \rightarrow Decision \rightarrow ConditionCheck \rightarrow ConstraintCheck \rightarrow Behavior
进一步展开:
Decision→DecisionCondition→BehaviorCondition→Capability→Resource→Constraint→Action→BehaviorDecision \rightarrow DecisionCondition \rightarrow BehaviorCondition \rightarrow Capability \rightarrow Resource \rightarrow Constraint \rightarrow Action \rightarrow Behavior
因此,行为不是决策对象直接产生的,而是经过执行条件检查之后形成。
可以定义行为形成函数:
Behavior=f(D,M,G,C,S,Cond,Con)Behavior=f(D,M,G,C,S,Cond,Con)
其中:
- DD:决策;
- MM:方法;
- GG:目标;
- CC:能力;
- SS:当前状态;
- CondCond:条件;
- ConCon:约束。
105.2.3 决策到行为的转换
决策转换为行为需要经过执行确认:
Decision→ExecutionCheck→BehaviorDecision \rightarrow ExecutionCheck \rightarrow Behavior
其中:
ExecutionCheck=Decision∧Condition∧Capability∧Resource∧Constraint∧SafetyExecutionCheck= Decision \land Condition \land Capability \land Resource \land Constraint \land Safety
只有:
ExecutionCheck=TrueExecutionCheck=True
时,决策才能形成实际行为。
因此:
DecisionConfirmed≠BehaviorStartedDecisionConfirmed \neq BehaviorStarted
已经决策只代表最终方案已经确定。
行为开始则代表:
DecisionConfirmed∧ExecutionConditionSatisfiedDecisionConfirmed \land ExecutionConditionSatisfied
105.3 决策条件
105.3.1 决策条件定义
**决策条件(Decision Condition)**是机器个体在形成和确认决策时必须满足的对象、状态、环境、时间、空间、能力、资源、关系和规则条件。
定义:
DecisionCondition={Object,State,Goal,Capability,Method,Environment,Time,Space,Resource,Relation,Rule}DecisionCondition= \{ Object, State, Goal, Capability, Method, Environment, Time, Space, Resource, Relation, Rule \}
决策条件用于回答:
当前情况下,这个决策是否成立?
例如,一个机器个体准备执行某项任务。
即使方法存在、能力存在,如果当前对象状态不满足要求,那么该决策仍然不能进入执行阶段。
因此:
DecisionCondition→DecisionValidityDecisionCondition \rightarrow DecisionValidity
105.3.2 决策条件分类
决策条件可以划分为:
(1)对象条件
ObjectConditionObjectCondition
判断决策对象是否正确。
Objectcurrent=ObjectdecisionObject_{current}=Object_{decision}
如果对象发生变化,则需要重新判断。
(2)状态条件
StateConditionStateCondition
判断对象当前状态是否满足决策要求。
Statecurrent∈StaterequiredState_{current}\in State_{required}
(3)能力条件
CapabilityConditionCapabilityCondition
判断个体是否具有完成决策所需要的能力。
Capabilityavailable⊇CapabilityrequiredCapability_{available} \supseteq Capability_{required}
(4)资源条件
ResourceConditionResourceCondition
判断执行决策所需资源是否存在。
例如:
ResourceAvailable=TrueResourceAvailable=True
(5)环境条件
EnvironmentConditionEnvironmentCondition
判断当前环境是否允许决策执行。
(6)时间条件
Timecurrent∈TimeRangeTime_{current}\in TimeRange
判断当前时间是否属于决策允许的时间范围。
(7)空间条件
Position∈SpaceRangePosition\in SpaceRange
判断执行位置是否满足决策要求。
(8)规则条件
RuleCondition=TrueRuleCondition=True
判断决策是否违反机器个体已经建立的规则。
105.3.3 决策条件状态
决策条件可以表示为:
ConditionResult∈{Satisfied,Partial,Unsatisfied,Unknown}ConditionResult\in \{ Satisfied, Partial, Unsatisfied, Unknown \}
其中:
Satisfied:满足;Partial:部分满足;Unsatisfied:不满足;Unknown:无法确定。
如果存在关键条件不满足:
CriticalCondition=FalseCriticalCondition=False
则:
Decision→BlockedDecision\rightarrow Blocked
而不能直接形成行为。
105.4 行为条件
105.4.1 行为条件定义
**行为条件(Behavior Condition)**是机器个体在真正开始执行行为时,对当前执行环境、对象状态、能力状态、资源状态、安全状态以及方法步骤所提出的实时要求。
决策条件主要解决:
这个决策是否成立?
行为条件解决:
现在是否可以真正执行?
因此:
DecisionCondition≠BehaviorConditionDecisionCondition\neq BehaviorCondition
二者存在继承和转换关系:
DecisionCondition→BehaviorConditionDecisionCondition \rightarrow BehaviorCondition
但是行为条件更加接近运行现场。
105.4.2 行为条件结构
可以定义:
BehaviorCondition={ObjectState,CapabilityState,ResourceState,Environment,Time,Space,Safety,MethodStep,Event}BehaviorCondition= \{ ObjectState, CapabilityState, ResourceState, Environment, Time, Space, Safety, MethodStep, Event \}
其中:
- ObjectStateObjectState:对象当前状态;
- CapabilityStateCapabilityState:能力当前状态;
- ResourceStateResourceState:资源当前状态;
- EnvironmentEnvironment:当前环境;
- TimeTime:当前时间;
- SpaceSpace:当前位置;
- SafetySafety:安全状态;
- MethodStepMethodStep:当前执行步骤;
- EventEvent:触发行为的事件。
行为条件具有实时性。
例如:
DecisiontDecision_t
成立时:
Conditiont=TrueCondition_t=True
但是经过一段时间后:
Conditiont+1=FalseCondition_{t+1}=False
那么原来的决策即使没有被删除,也不能继续直接执行。
因此:
ConditionChange→BehaviorRecheckConditionChange \rightarrow BehaviorRecheck
必要时:
BehaviorRecheck→DecisionReevaluationBehaviorRecheck \rightarrow DecisionReevaluation
105.4.3 行为条件与方法步骤
一个方法可能包含:
M={Step1,Step2,Step3}M=\{Step_1,Step_2,Step_3\}
每一个步骤都有自己的行为条件:
Stepi→Conditioni→ActioniStep_i\rightarrow Condition_i\rightarrow Action_i
因此完整行为可以表示为:
Behavior=Step1→Condition1→Action1→Step2→Condition2→Action2→Step3Behavior = Step_1 \rightarrow Condition_1 \rightarrow Action_1 \rightarrow Step_2 \rightarrow Condition_2 \rightarrow Action_2 \rightarrow Step_3
这说明行为并不是一次性产生,而是可以按照方法步骤逐步形成。
105.5 决策约束
105.5.1 决策约束定义
**决策约束(Decision Constraint)**是限制机器个体能够选择、确认或者执行某个决策的边界条件。
决策条件回答:
是否满足?
决策约束回答:
即使满足条件,是否允许这样做?
因此:
Condition≠ConstraintCondition\neq Constraint
例如,一个方法在技术上可以执行,但如果超过资源限制、安全边界或者规定范围,则仍然不能执行。
105.5.2 决策约束结构
Constraint={Resource,Time,Space,Cost,Safety,Rule,Capability,Range,Authority,Object}Constraint= \{ Resource, Time, Space, Cost, Safety, Rule, Capability, Range, Authority, Object \}
主要包括:
资源约束
ResourceUsed≤ResourceLimitResourceUsed\le ResourceLimit
时间约束
Time∈TimeLimitTime\in TimeLimit
空间约束
Space∈SpaceLimitSpace\in SpaceLimit
成本约束
Cost≤CostLimitCost\le CostLimit
安全约束
SafetyRisk≤SafetyLimitSafetyRisk\le SafetyLimit
能力约束
CapabilityRequired⊆CapabilityAvailableCapabilityRequired\subseteq CapabilityAvailable
范围约束
ExecutionRange⊆AllowedRangeExecutionRange\subseteq AllowedRange
规则约束
RuleViolation=FalseRuleViolation=False
105.5.3 决策约束优先级
决策约束不能简单按照普通评分进行处理。
通常应当建立:
MandatoryConstraint>SafetyConstraint>RequiredCondition>CapabilityConstraint>OrdinaryPriorityMandatoryConstraint > SafetyConstraint > RequiredCondition > CapabilityConstraint > OrdinaryPriority
即:
强制约束
↓
安全约束
↓
必要条件
↓
能力约束
↓
普通优先级
如果一个方案违反强制约束:
ConstraintViolation=TrueConstraintViolation=True
则:
Decision=BlockedDecision=Blocked
即使该方案具有很高的普通优先级,也不能强行执行。
105.6 决策结果
105.6.1 决策结果定义
**决策结果(Decision Result)**是机器个体完成决策计算和选择之后形成的最终决策状态、选择内容以及后续执行依据。
定义:
DecisionResult={Decision,Method,Object,Goal,Condition,Constraint,Action,Status,Reason,Time}DecisionResult= \{ Decision, Method, Object, Goal, Condition, Constraint, Action, Status, Reason, Time \}
决策结果首先描述:
机器个体最终决定采用什么方案。
而不是直接描述执行完成后的现实结果。
因此:
DecisionResult≠ExecutionResultDecisionResult\neq ExecutionResult
105.6.2 决策结果状态
决策结果可以具有:
DecisionResultStatus∈{Confirmed,Blocked,Cancelled,Pending,Failed}DecisionResultStatus\in \{ Confirmed, Blocked, Cancelled, Pending, Failed \}
其中:
Confirmed:决策已经确认;Blocked:受到条件或约束阻止;Cancelled:决策被取消;Pending:仍等待必要条件;Failed:决策形成或执行过程失败。
当:
DecisionResultStatus=ConfirmedDecisionResultStatus=Confirmed
并且:
ExecutionCondition=TrueExecutionCondition=True
才允许:
DecisionResult→BehaviorDecisionResult\rightarrow Behavior
105.6.3 决策结果与执行结果
必须严格区分两个结果。
决策结果:
Decision→DecisionResultDecision\rightarrow DecisionResult
执行结果:
Behavior→Action→ExecutionResultBehavior\rightarrow Action\rightarrow ExecutionResult
完整关系:
Decision→DecisionResult→Behavior→Action→ExecutionResultDecision \rightarrow DecisionResult \rightarrow Behavior \rightarrow Action \rightarrow ExecutionResult
例如:
DecisionResult=采用方法ADecisionResult=采用方法A
并不代表:
ExecutionResult=成功ExecutionResult=成功
实际执行可能得到:
ExecutionResult∈{Success,Partial,Failed,Interrupted,Blocked}ExecutionResult\in \{ Success, Partial, Failed, Interrupted, Blocked \}
因此:
DecisionSuccess≠ExecutionSuccessDecisionSuccess\neq ExecutionSuccess
一个决策可以是正确形成的,但执行过程中由于环境变化、设备故障、资源不足等原因而失败。
105.7 决策—行为闭环
决策与行为最终形成一个动态闭环:
Goal→Method→Decision→DecisionCondition→ConstraintCheck→BehaviorCondition→Behavior→Action→ResultGoal \rightarrow Method \rightarrow Decision \rightarrow DecisionCondition \rightarrow ConstraintCheck \rightarrow BehaviorCondition \rightarrow Behavior \rightarrow Action \rightarrow Result
结果产生反馈:
Result→Feedback→Memory→ExperienceResult \rightarrow Feedback \rightarrow Memory \rightarrow Experience
经验进一步影响未来决策:
Experience→Knowledge→Capability→Method→DecisionExperience \rightarrow Knowledge \rightarrow Capability \rightarrow Method \rightarrow Decision
因此完整闭环为:
Goal→Method→Decision→Condition→Constraint→Behavior→Action→Result→Feedback→Experience→Learning→Update→NewDecision\boxed{ Goal \rightarrow Method \rightarrow Decision \rightarrow Condition \rightarrow Constraint \rightarrow Behavior \rightarrow Action \rightarrow Result \rightarrow Feedback \rightarrow Experience \rightarrow Learning \rightarrow Update \rightarrow NewDecision }
这使决策不再是一次性的静态数据,而成为机器个体持续运行中的动态认知对象。
105.8 决策与行为工程模型
在 ICAI 工程中,决策、行为和动作应当分别建立对象。
105.8.1 决策对象
class CognitiveDecision
{
protected $id;
protected $subjectId;
protected $objectId;
protected $goalId;
protected $methodId;
protected $conditions;
protected $constraints;
protected $risk;
protected $action;
protected $result;
protected $status;
protected $createdAt;
}
105.8.2 行为对象
class CognitiveBehavior
{
protected $id;
protected $individualId;
protected $decisionId;
protected $methodId;
protected $objectId;
protected $actions;
protected $conditions;
protected $state;
protected $result;
protected $status;
protected $createdAt;
}
105.8.3 行为动作对象
class CognitiveAction
{
protected $id;
protected $behaviorId;
protected $sequence;
protected $type;
protected $objectId;
protected $parameters;
protected $condition;
protected $result;
protected $status;
protected $createdAt;
}
105.9 决策—行为引擎
可以建立:
class DecisionBehaviorEngine
{
public function checkDecisionCondition($decision, $context)
{
return false;
}
public function checkBehaviorCondition($decision, $context)
{
return false;
}
public function checkConstraint($decision, $context)
{
return false;
}
public function confirmExecution($decision, $context)
{
return false;
}
public function createBehavior($decision, $context)
{
return null;
}
public function executeBehavior($behavior)
{
return null;
}
public function recordResult($behavior, $result)
{
return false;
}
}
其核心运行流程为:
最终决策
↓
决策条件检查
↓
能力检查
↓
资源检查
↓
约束检查
↓
安全检查
↓
行为条件检查
↓
形成行为
↓
形成动作
↓
执行动作
↓
形成执行结果
↓
结果验证
↓
反馈
105.10 数据库结构
决策与行为需要分别保存。
cognitive_decisions
cognitive_decision_conditions
cognitive_decision_constraints
cognitive_decision_results
cognitive_decision_history
cognitive_behaviors
cognitive_behavior_conditions
cognitive_behavior_actions
cognitive_behavior_results
cognitive_behavior_history
其中:
cognitive_decisions 保存决策主体、对象、目标、方法和最终决策。
cognitive_decision_conditions 保存决策形成和执行前的条件。
cognitive_decision_constraints 保存资源、时间、空间、安全、规则等约束。
cognitive_decision_results 保存决策本身产生的结果。
cognitive_behaviors 保存由决策形成的行为。
cognitive_behavior_actions 保存行为中的具体动作。
cognitive_behavior_results 保存实际执行结果。
因此形成:
Decision→DecisionResult→Behavior→Action→ExecutionResultDecision \rightarrow DecisionResult \rightarrow Behavior \rightarrow Action \rightarrow ExecutionResult
105.11 决策与个体行为统一模型
至此,前面第91章至第104章形成的认知匹配、方法匹配、方法选择、决策计算、决策选择和决策状态,可以进一步与行为连接起来。
统一运行链:
Object→State→Need→Goal→Capability→Matching→Method→MethodMatching→MethodSelection→DecisionComputation→DecisionSelection→DecisionState→DecisionCondition→Constraint→Behavior→Action→ResultObject \rightarrow State \rightarrow Need \rightarrow Goal \rightarrow Capability \rightarrow Matching \rightarrow Method \rightarrow MethodMatching \rightarrow MethodSelection \rightarrow DecisionComputation \rightarrow DecisionSelection \rightarrow DecisionState \rightarrow DecisionCondition \rightarrow Constraint \rightarrow Behavior \rightarrow Action \rightarrow Result
再通过反馈形成:
Result→Feedback→Memory→Experience→Learning→Knowledge→Capability→Method→DecisionResult \rightarrow Feedback \rightarrow Memory \rightarrow Experience \rightarrow Learning \rightarrow Knowledge \rightarrow Capability \rightarrow Method \rightarrow Decision
因此:
Decision→Behavior→Result\boxed{ Decision\rightarrow Behavior\rightarrow Result }
是个体人工智能从认知与计算进入实际运行的重要转换点。
105.12 案例验证
假设一个机器个体需要将某设备从“运行状态”调整为“安全状态”。
首先形成目标:
CurrentState=RunningCurrentState=Running
目标状态:
TargetState=SafeTargetState=Safe
形成:
Goal=(Running→Safe)Goal=(Running\rightarrow Safe)
机器个体存在方法:
Method=SafeShutdownMethod=SafeShutdown
然后进行决策:
Goal+Capability+Method+Condition+Constraint→DecisionGoal+Capability+Method+Condition+Constraint \rightarrow Decision
决策确定:
Decision=ExecuteSafeShutdownDecision=ExecuteSafeShutdown
但是此时还不能直接形成行为。
首先检查:
ObjectCondition=TrueObjectCondition=True StateCondition=TrueStateCondition=True CapabilityCondition=TrueCapabilityCondition=True ResourceCondition=TrueResourceCondition=True SafetyCondition=TrueSafetyCondition=True Constraint=TrueConstraint=True
全部满足:
ExecutionCheck=TrueExecutionCheck=True
于是:
Decision→BehaviorDecision \rightarrow Behavior
行为进一步分解:
Behavior→StopOperation→CheckState→SwitchSafeState→VerifyStateBehavior \rightarrow StopOperation \rightarrow CheckState \rightarrow SwitchSafeState \rightarrow VerifyState
最终:
Statebefore=RunningState_{before}=Running Behavior→Stateafter=SafeBehavior\rightarrow State_{after}=Safe
形成执行结果:
ExecutionResult=SuccessExecutionResult=Success
如果在执行过程中发现设备状态发生异常:
StateChange→BehaviorCondition=FalseStateChange \rightarrow BehaviorCondition=False
则不能继续执行原行为:
Behavior→InterruptedBehavior\rightarrow Interrupted
并重新进入:
Diagnosis→DecisionReevaluationDiagnosis \rightarrow DecisionReevaluation
这说明 ICAI 的行为系统不是简单的“决策后立即执行”,而是具有实时条件检查和动态重新决策能力。
105.13 本章总结
本章建立了决策与个体行为之间的理论关系。
第一,决策不是行为:
Decision≠BehaviorDecision\neq Behavior
决策确定最终方案,行为负责将确定方案进入实际运行。
第二,决策形成行为必须经过条件检查:
Decision→DecisionCondition→BehaviorCondition→BehaviorDecision \rightarrow DecisionCondition \rightarrow BehaviorCondition \rightarrow Behavior
第三,决策条件与行为条件不同。决策条件主要判断决策是否成立,行为条件主要判断当前运行环境是否允许实际执行。
第四,决策约束构成行为的边界:
Constraint→ExecutionBoundaryConstraint \rightarrow ExecutionBoundary
违反关键约束的决策不能形成行为。
第五,决策结果与执行结果必须分离:
DecisionResult≠ExecutionResultDecisionResult\neq ExecutionResult
决策可以确认成功,而实际执行仍可能失败。
最终形成:
Decision→Condition→Constraint→Behavior→Action→Result\boxed{ Decision \rightarrow Condition \rightarrow Constraint \rightarrow Behavior \rightarrow Action \rightarrow Result }
由此,ICAI 从“决策系统”正式进入“行为系统”。机器个体不再只是能够形成认知、需求、目标、能力、方法和决策,而是能够把最终决策转换为受条件和约束控制的实际行为,并将行为结果重新反馈到记忆、经验、学习和后续决策之中。
因此,第105章建立的是 ICAI 从决定到行动的第一条正式工程链路:
认知→目标→方法→决策→行为→结果\boxed{ 认知 \rightarrow 目标 \rightarrow 方法 \rightarrow 决策 \rightarrow 行为 \rightarrow 结果 }