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

第97章 方法理论

第97章 方法理论

97.1 方法定义

在 ICAI 中,**方法(Method)**是机器个体针对特定对象、目标、条件和状态,为实现预期结果而形成的结构化执行方式。

方法不是简单的动作,也不是单一行为。

方法描述的是:

在什么条件下,对什么对象,按照什么步骤,通过什么能力,完成什么目标,并产生什么结果。

因此:

Method=Object+Goal+Condition+Capability+Step+Result\boxed{ Method= Object+ Goal+ Condition+ Capability+ Step+ Result }

方法的基本结构为:

目标
↓
方法
↓
步骤
↓
行为
↓
结果

进一步形成:

需求
↓
目标
↓
能力匹配
↓
方法形成
↓
方法选择
↓
方法执行
↓
行为
↓
结果

因此,方法是 ICAI 从认知与决策结构进入行为结构的重要中间层。


97.2 方法与目标的关系

方法不是独立产生的。

一个方法通常服务于一个目标:

Goal→MethodGoal\rightarrow Method

同一个目标可以存在多个方法:

Goal→{M1,M2,M3}Goal \rightarrow \{M_1,M_2,M_3\}

例如:

目标:到达指定地点

方法A:步行
方法B:骑车
方法C:驾驶
方法D:乘坐公共交通

因此:

OneGoal→MultiMethodsOneGoal\rightarrow MultiMethods

同时,一个方法也可能服务多个相似目标:

OneMethod→MultiGoalsOneMethod\rightarrow MultiGoals

但必须满足方法适用条件。

因此:

Applicable(Method,Goal)=TrueApplicable(Method,Goal)=True

才能建立有效的方法关系。


97.3 方法对象

**方法对象(Method Object)**是方法作用的主体或目标对象。

方法不能脱离对象独立存在。

例如:

对象:车辆
方法:启动

或者:

对象:客户订单
方法:修改订单

或者:

对象:机器人
方法:移动

因此:

Method→ObjectMethod\rightarrow Object

方法对象可以是:

  • 人;
  • 设备;
  • 车辆;
  • 商品;
  • 订单;
  • 文件;
  • 信息;
  • 环境;
  • 其他机器个体;
  • 复合对象。

方法对象还可以包含多个对象:

Method→{O1,O2,…,On}Method\rightarrow \{O_1,O_2,\ldots,O_n\}

例如维修方法可能同时作用于:

设备
+
故障部件
+
维修工具

形成:

Method(Object1,Object2,Object3)Method(Object_1,Object_2,Object_3)

因此,方法对象实际上构成方法执行的对象范围。


97.4 方法条件

**方法条件(Method Condition)**是方法能够成立和执行所必须满足的环境、对象、状态、资源、能力和规则条件。

基本关系:

Condition→MethodCondition\rightarrow Method

只有:

Condition=TrueCondition=True

方法才允许进入执行阶段。

方法条件可以包括:

对象条件
状态条件
环境条件
能力条件
资源条件
时间条件
空间条件
权限条件
安全条件
规则条件

因此:

C={Co,Cs,Ce,Cc,Cr,Ct,Cp,Csafe,Crule}C= \{ C_o,C_s,C_e,C_c,C_r,C_t,C_p,C_{safe},C_{rule} \}

其中:

  • CoC_o:对象条件;
  • CsC_s:状态条件;
  • CeC_e:环境条件;
  • CcC_c:能力条件;
  • CrC_r:资源条件;
  • CtC_t:时间条件;
  • CpC_p:空间或位置条件;
  • CsafeC_{safe}:安全条件;
  • CruleC_{rule}:规则条件。

完整方法条件判断:

Applicable(M)=Co∧Cs∧Ce∧Cc∧Cr∧Csafe∧CruleApplicable(M)= C_o\land C_s\land C_e\land C_c\land C_r\land C_{safe}\land C_{rule}


97.5 方法适用条件

同一个方法并不是任何情况下都可以使用。

因此必须定义:

方法适用性(Method Applicability)

表示:

Applicable(M,O,S,C)=TrueApplicable(M,O,S,C)=True

即当前方法适用于当前:

  • 对象;
  • 状态;
  • 条件;
  • 目标。

例如:

方法:高速行驶

适用:
道路允许
车辆状态正常
天气正常
驾驶条件满足

不适用:
车辆故障
道路禁止
危险环境
安全条件不足

因此:

Method≠AlwaysAvailableMethod \neq AlwaysAvailable

而是:

Method→ApplicableConditionMethod\rightarrow ApplicableCondition


97.6 方法步骤

**方法步骤(Method Step)**是构成一个完整方法的有序执行单元。

方法通常不是一个动作,而是一系列具有顺序关系的步骤:

M={S1,S2,S3,…,Sn}M= \{S_1,S_2,S_3,\ldots,S_n\}

例如:

方法:启动设备

步骤1:检查设备状态
↓
步骤2:检查电源
↓
步骤3:执行启动
↓
步骤4:检测运行状态
↓
步骤5:确认启动结果

因此:

Method→Step1→Step2→Step3→ResultMethod \rightarrow Step_1 \rightarrow Step_2 \rightarrow Step_3 \rightarrow Result


97.7 方法步骤关系

方法步骤之间存在顺序关系:

S1→S2→S3S_1\rightarrow S_2\rightarrow S_3

也可以存在条件分支:

步骤1
↓
状态判断
├── 正常 → 步骤2
└── 异常 → 步骤3

因此方法可以表示为:

Method=Sequence+Condition+Branch+ResultMethod= Sequence+ Condition+ Branch+ Result

复杂方法还可以形成:

主步骤
├── 子步骤A
├── 子步骤B
└── 子步骤C

从而形成方法层级:

Method→SubMethod→Step→ActionMethod \rightarrow SubMethod \rightarrow Step \rightarrow Action


97.8 方法步骤与行为

方法本身不是行为。

方法描述:

应该采用什么执行结构。

行为描述:

机器个体实际执行了什么。

因此:

Method→BehaviorMethod\rightarrow Behavior

例如:

方法:
接近目标对象

行为:
向前移动
↓
减速
↓
调整方向
↓
停止

因此:

Method≠BehaviorMethod\neq Behavior

而是:

Method→Behavior\boxed{ Method \rightarrow Behavior }

方法属于执行规划结构,行为属于实际运行结构。


97.9 方法与能力

方法必须依赖能力。

因此:

Method→CapabilityMethod\rightarrow Capability

一个方法需要一个或多个能力:

M={C1,C2,C3}M=\{C_1,C_2,C_3\}

例如:

方法:自动停车

需要:
空间识别能力
位置判断能力
方向控制能力
速度控制能力
车辆操作能力

如果关键能力不存在:

Capabilityrequired⊈CapabilityavailableCapability_{required} \not\subseteq Capability_{available}

则:

Method=UnavailableMethod=Unavailable

因此:

能力决定方法是否能够执行\boxed{ 能力决定方法是否能够执行 }


97.10 方法与知识

方法还必须建立在知识结构之上。

例如:

对象知识
↓
状态知识
↓
规则知识
↓
方法知识
↓
方法

因此:

Knowledge→MethodKnowledge\rightarrow Method

方法知识描述:

  • 什么情况下使用方法;
  • 方法作用于什么对象;
  • 方法需要什么能力;
  • 方法有哪些步骤;
  • 方法产生什么结果;
  • 方法有什么限制。

因此:

MethodKnowledge=Object+Condition+Step+Result+RestrictionMethodKnowledge = Object+ Condition+ Step+ Result+ Restriction


97.11 方法结果

**方法结果(Method Result)**是方法执行完成后产生的状态变化、对象变化、关系变化或目标状态变化。

基本关系:

Method→ResultMethod\rightarrow Result

例如:

方法:关闭设备
↓
设备状态:运行
↓
执行方法
↓
设备状态:关闭

因此:

Statebefore→Method→StateafterState_{before} \rightarrow Method \rightarrow State_{after}

方法结果可以包括:

对象变化
属性变化
状态变化
关系变化
位置变化
资源变化
目标变化

97.12 方法结果状态

方法结果不能只记录“成功”或“失败”。

可以建立:

ResultStatus={Success,Partial,Failed,Blocked,Interrupted}ResultStatus= \{ Success, Partial, Failed, Blocked, Interrupted \}

其中:

  • Success:方法完整成功;
  • Partial:方法部分完成;
  • Failed:方法执行失败;
  • Blocked:执行受到条件阻止;
  • Interrupted:执行过程中被中断。

因此:

Method→Execution→ResultStatusMethod \rightarrow Execution \rightarrow ResultStatus


97.13 方法成功条件

方法成功必须根据预期结果判断。

定义:

Success(M)=ActualResult≈ExpectedResultSuccess(M)= ActualResult \approx ExpectedResult

如果:

ActualResult=ExpectedResultActualResult=ExpectedResult

则:

Success=TrueSuccess=True

如果只完成部分目标:

ActualResult⊂ExpectedResultActualResult\subset ExpectedResult

则:

Partial=TruePartial=True

如果没有产生目标要求的结果:

Success=FalseSuccess=False

因此:

方法成功由结果判断,而不是由执行动作本身判断\boxed{ 方法成功由结果判断,而不是由执行动作本身判断 }


97.14 方法失败

方法失败表示方法已经执行或者尝试执行,但没有形成规定的目标结果。

例如:

目标
↓
方法
↓
执行
↓
结果不符合目标
↓
方法失败

方法失败原因可以包括:

对象错误
状态变化
能力不足
资源不足
环境变化
条件变化
执行错误
外部干扰
安全中断

因此:

FailureReason=f(Object,State,Capability,Resource,Environment,Execution)FailureReason= f(Object,State,Capability,Resource,Environment,Execution)

失败结果必须保存,为后续经验形成提供依据。


97.15 方法中断

方法不一定只有成功和失败。

在执行过程中,环境可能发生变化:

Environmentt≠Environmentt+1Environment_t\neq Environment_{t+1}

导致原方法不再适用:

Applicable(M,t)=TrueApplicable(M,t)=True

但是:

Applicable(M,t+1)=FalseApplicable(M,t+1)=False

此时:

Method→InterruptedMethod\rightarrow Interrupted

机器个体需要:

停止当前方法
↓
重新感知
↓
更新状态
↓
重新匹配
↓
重新选择方法

因此:

MethodInterrupt→ReCognition→ReMatching→NewMethod\boxed{ MethodInterrupt \rightarrow ReCognition \rightarrow ReMatching \rightarrow NewMethod }


97.16 方法适用范围

**方法适用范围(Method Scope)**是指一个方法能够作用的对象类型、状态范围、环境范围、能力范围和目标范围。

可以表示:

Scope(M)={ObjectRange,StateRange,EnvironmentRange,CapabilityRange,GoalRange}Scope(M)= \{ ObjectRange, StateRange, EnvironmentRange, CapabilityRange, GoalRange \}

例如:

方法:低速移动

对象范围:
车辆

状态范围:
正常运行

环境范围:
低速区域

能力范围:
具备方向与速度控制

目标范围:
安全移动

只有当前状态位于方法适用范围内:

CurrentState∈StateRangeCurrentState\in StateRange

方法才具有适用性。


97.17 方法范围与个体类型

不同机器个体具有不同方法范围。

例如:

司机人工智能
→
驾驶方法

客服人工智能
→
客户服务方法

销售人工智能
→
销售方法

机器人
→
移动方法、抓取方法、服务方法

设备人工智能
→
运行方法、检测方法、修复方法

因此:

IndividualType→MethodSetIndividualType \rightarrow MethodSet

但不同个体仍然可以共享通用方法结构:

CommonMethodStructure→IndividualMethodInstanceCommonMethodStructure \rightarrow IndividualMethodInstance

这为 ICAI 后续建立通用方法系统提供基础。


97.18 方法的组合

复杂目标通常需要多个方法组合。

例如:

Goal→M1+M2+M3Goal \rightarrow M_1+M_2+M_3

形成:

目标
↓
方法A
↓
方法B
↓
方法C
↓
目标结果

因此:

CompositeMethod={M1,M2,…,Mn}CompositeMethod= \{M_1,M_2,\ldots,M_n\}

方法之间可以形成:

  • 顺序关系;
  • 条件关系;
  • 替代关系;
  • 并行关系;
  • 循环关系;
  • 中断关系。

形成:

MethodRelation=Sequence+Condition+Alternative+Parallel+Loop+InterruptMethodRelation = Sequence+ Condition+ Alternative+ Parallel+ Loop+ Interrupt


97.19 方法与替代

一个目标可能存在多个方法:

Goal→{M1,M2,M3}Goal\rightarrow \{M_1,M_2,M_3\}

如果:

M1M_1

无法执行,则可以选择:

M2M_2

或者:

M3M_3

因此:

M1→M2→M3M_1 \rightarrow M_2 \rightarrow M_3

形成方法替代结构。

方法替代必须满足:

Result(M2)≈Result(M1)Result(M_2)\approx Result(M_1)

并且:

Applicable(M2)=TrueApplicable(M_2)=True

因此:

方法替代不是动作替换,而是目标结果保持下的执行路径替换\boxed{ 方法替代不是动作替换,而是目标结果保持下的执行路径替换 }


97.20 方法评价

当多个方法都能够实现同一个目标时,需要对方法进行评价。

可以建立:

MethodEvaluation=f(Applicability,Capability,Cost,Risk,Time,Result)MethodEvaluation= f( Applicability, Capability, Cost, Risk, Time, Result )

其中:

  • Applicability:适用程度;
  • Capability:能力覆盖程度;
  • Cost:执行成本;
  • Risk:执行风险;
  • Time:执行时间;
  • Result:预期结果。

最终形成:

MethodScoreMethodScore

再进行排序:

M1>M2>M3M_1>M_2>M_3

这将直接连接下一阶段的方法选择理论。


97.21 方法数据结构

在 ICAI 工程中,可以建立:

CognitiveMethod——方法对象。

class CognitiveMethod
{
    protected $id;
    protected $name;
    protected $objectType;
    protected $goalId;
    protected $conditions;
    protected $capabilities;
    protected $steps;
    protected $result;
    protected $scope;
    protected $status;
}

建立方法步骤对象:

class MethodStep
{
    protected $id;
    protected $methodId;
    protected $sequence;
    protected $action;
    protected $condition;
    protected $result;
}

建立方法适用范围:

class MethodScope
{
    protected $objectTypes;
    protected $states;
    protected $environments;
    protected $capabilities;
    protected $goals;
}

97.22 方法运行模型

方法运行可以形成:

Method Request
↓
Object Check
↓
Condition Check
↓
Capability Check
↓
Scope Check
↓
Method Available
↓
Step Loading
↓
Step Execution
↓
Result Check
↓
Method Result

如果条件不满足:

Condition Check
↓
Failed
↓
Method Blocked

如果能力不足:

Capability Check
↓
Failed
↓
Alternative Method

如果执行过程中状态变化:

State Change
↓
Method Invalid
↓
Interrupt
↓
ReMatching

97.23 方法 Runtime

建立:

Method Runtime——方法在机器个体实际运行过程中的动态实例。

可以表示:

MethodRuntime={Method,Object,Goal,State,Step,Condition,Execution,Result}MethodRuntime= \{ Method, Object, Goal, State, Step, Condition, Execution, Result \}

运行结构:

方法载入
↓
绑定目标
↓
绑定对象
↓
检查条件
↓
检查能力
↓
检查适用范围
↓
生成运行实例
↓
执行步骤
↓
监控状态
↓
产生行为
↓
获取结果
↓
更新Runtime状态

因此:

Method→MethodRuntime→Behavior→Result\boxed{ Method \rightarrow MethodRuntime \rightarrow Behavior \rightarrow Result }


97.24 方法理论统一模型

综合本章内容,可以建立方法统一模型:

M=(O,G,C,Cap,S,R,Scope)\boxed{ M= (O,G,C,Cap,S,R,Scope) }

其中:

  • OO:方法对象;
  • GG:目标;
  • CC:条件;
  • CapCap:能力;
  • SS:步骤;
  • RR:结果;
  • ScopeScope:适用范围。

方法运行:

Method→Condition→Capability→Scope→Step→Behavior→Result\boxed{ Method \rightarrow Condition \rightarrow Capability \rightarrow Scope \rightarrow Step \rightarrow Behavior \rightarrow Result }

方法失效:

StateChange→ConditionInvalid→MethodInterrupt→ReMatching\boxed{ StateChange \rightarrow ConditionInvalid \rightarrow MethodInterrupt \rightarrow ReMatching }

方法替代:

MethodA→Unavailable→MethodB→Result\boxed{ Method_A \rightarrow Unavailable \rightarrow Method_B \rightarrow Result }


97.25 从认知到方法

前面第91—96章建立的是匹配体系。

现在进一步形成:

认知
↓
需求
↓
目标
↓
对象匹配
↓
需求匹配
↓
能力匹配
↓
综合匹配
↓
匹配结果
↓
方法

因此:

MatchResult→Method\boxed{ MatchResult \rightarrow Method }

匹配结果回答:

哪些对象、能力和结构能够满足目标?

方法理论回答:

满足目标以后,应该采用什么执行方式?

这两个层次必须严格区分。


97.26 本章总结

方法是 ICAI 中连接目标、能力、决策与行为的重要结构。

本章定义了方法的基本组成:

方法=对象+目标+条件+能力+步骤+结果+适用范围\boxed{ 方法= 对象+ 目标+ 条件+ 能力+ 步骤+ 结果+ 适用范围 }

方法不是简单动作,而是一种具有明确对象、条件、步骤和结果的结构化执行方式。

其基本运行链为:

目标→方法→步骤→行为→结果\boxed{ 目标 \rightarrow 方法 \rightarrow 步骤 \rightarrow 行为 \rightarrow 结果 }

其适用性由:

对象+状态+条件+能力+环境+规则\boxed{ 对象+ 状态+ 条件+ 能力+ 环境+ 规则 }

共同决定。

方法还可以进行:

方法组合方法组合 方法替代方法替代 方法评价方法评价 方法中断方法中断 方法重新选择方法重新选择

最终形成:

需求
↓
目标
↓
匹配
↓
匹配结果
↓
方法
↓
方法条件
↓
方法能力
↓
方法步骤
↓
行为
↓
结果
↓
反馈

由此,第97章完成了从**“匹配什么”向“采用什么方法实现目标”**的理论转换,为后续的方法匹配、方法选择、方法组合、行为形成以及执行Runtime建立理论基础。

Leave a Reply

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