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

第18章 方法构建匹配

第18章 方法构建匹配

18.1 方法构建匹配的提出背景

在认知过程中,方法并不是一个孤立存在的对象。一个方法通常是在目标、对象、条件、动作、顺序和结果等认知元素的共同作用下形成的。

前面的对象匹配解决“是什么对象”的对应问题,关系匹配解决“对象之间是什么关系”的对应问题,行为匹配解决“发生了什么行为”的对应问题,动作匹配解决“具体进行了什么操作”的对应问题。

但是,仅仅知道行为和动作仍然不足以形成完整的方法认知。

例如,同样是“移动一个物体”,可以采用直接移动、抓取后移动、推动移动、机械装置移动等不同方式。它们可能具有相同或者相近的目标,也可能产生相同的最终结果,但是内部的动作结构、动作顺序、条件要求和对象关系并不相同。

因此,需要在行为与动作之上建立方法构建关系:

目标 → 条件 → 对象 → 动作 → 动作顺序 → 过程 → 结果 → 方法

方法构建匹配研究的不是单纯的“方法名称是否相同”,而是研究:

一个方法由什么元素构成,这些元素如何组织,以及另一个方法是否具有对应的构建结构。

由此形成方法构建匹配理论。


18.2 方法的定义

方法(Method)是为了实现特定目标,在一定条件下,对相关对象组织一组动作,并按照一定结构形成的过程性认知结构。

方法不是单个动作,也不是单纯的行为描述,而是多个认知元素按照一定规则形成的结构。

可以表示为:

M = (G, O, C, A, P, R)

其中:

  • M:Method,方法;
  • G:Goal,目标;
  • O:Object,对象;
  • C:Condition,条件;
  • A:Action,动作集合;
  • P:Process,过程结构;
  • R:Result,结果。

因此,一个完整的方法可以表示为:

目标 + 对象 + 条件 + 动作 + 过程 + 结果 → 方法

方法的核心不是某一个动作,而是这些元素之间形成的结构关系。


18.3 方法构建的定义

方法构建(Method Construction)是指认知系统根据目标、对象、条件、动作、动作顺序、过程和结果等认知元素,按照一定的结构关系形成方法的过程。

方法构建不是简单地把动作排列起来,而是建立动作与目标、对象、条件和结果之间的对应关系。

基本过程可以表示为:

目标识别 → 对象确定 → 条件确定 → 动作确定 → 动作组织 → 过程形成 → 结果确定 → 方法形成

因此:

方法 = 被组织起来的动作结构

但进一步而言:

方法 = 目标约束下的完整动作过程结构

这一区别非常重要。

如果只有动作集合:

A = {A1, A2, A3}

只能说明存在三个动作。

而如果形成:

A1 → A2 → A3

则形成了动作顺序。

如果进一步建立:

G → A1 → A2 → A3 → R

则动作被目标和结果约束,形成了方法结构。


18.4 方法构建匹配的定义

方法构建匹配(Method Construction Matching)是指对两个方法的构成元素、元素关系、动作结构、动作顺序、条件结构、目标关系和结果关系进行比较,以判断两个方法在构建方式上的对应程度。

方法构建匹配回答的核心问题不是:

“两个方法叫什么?”

而是:

“两个方法是不是由相对应的认知元素按照相对应的结构构建出来的?”

因此,方法构建匹配可以表示为:

M₁ ↔ M₂

其中:

  • M₁:待匹配方法;
  • M₂:目标方法;
  • :方法构建关系。

如果进一步展开:

M₁(G₁,O₁,C₁,A₁,P₁,R₁) ↔ M₂(G₂,O₂,C₂,A₂,P₂,R₂)

系统需要分别判断:

G₁ ↔ G₂

O₁ ↔ O₂

C₁ ↔ C₂

A₁ ↔ A₂

P₁ ↔ P₂

R₁ ↔ R₂

最终形成整体方法构建匹配结果。


18.5 方法构建匹配的对象

方法构建匹配的直接对象是方法结构。

但是,方法结构又由多个认知元素构成,因此匹配对象具有层次性。

第一层是目标匹配:

Goal₁ ↔ Goal₂

判断两个方法是否具有相同或对应的目标。

第二层是对象匹配:

Object₁ ↔ Object₂

判断方法作用于什么对象,以及对象之间是否对应。

第三层是条件匹配:

Condition₁ ↔ Condition₂

判断方法成立或者执行所要求的条件是否对应。

第四层是动作匹配:

Action₁ ↔ Action₂

判断方法中的具体动作是否存在对应关系。

第五层是过程匹配:

Process₁ ↔ Process₂

判断动作之间的组织结构和执行过程是否对应。

第六层是结果匹配:

Result₁ ↔ Result₂

判断两个方法最终产生的结果是否对应。

因此:

方法构建匹配 = 目标匹配 + 对象匹配 + 条件匹配 + 动作匹配 + 过程匹配 + 结果匹配


18.6 方法元素匹配

方法构建的第一种匹配是元素匹配。

如果两个方法分别包含:

M₁ = {G₁,O₁,C₁,A₁,P₁,R₁}

M₂ = {G₂,O₂,C₂,A₂,P₂,R₂}

则首先需要判断:

G₁ ↔ G₂

O₁ ↔ O₂

C₁ ↔ C₂

A₁ ↔ A₂

P₁ ↔ P₂

R₁ ↔ R₂

只有方法内部的基本元素具有一定对应关系,才可能进一步判断方法结构是否匹配。

因此,元素匹配是方法构建匹配的基础。


18.7 方法目标构建匹配

方法并不是为了动作本身而存在,而是为了实现目标。

因此,方法构建匹配首先需要考虑目标。

例如:

方法A:

拿取物体 → 移动物体 → 放置物体

方法B:

抓取物体 → 搬运物体 → 放置物体

虽然动作名称不同,但如果两个方法都是为了:

目标:将物体从位置A移动到位置B

那么两者在目标层面可能具有较高匹配关系。

因此:

目标相同 ≠ 方法相同

目标匹配只是方法构建匹配的一部分。

它表示两个方法具有相同或者对应的目的,但并不能直接证明两个方法的构建结构相同。


18.8 方法对象构建匹配

方法必须作用于对象。

对象不同,方法可能不同。

例如:

操作对象 → 门

和:

操作对象 → 箱子

即使两个方法都具有“打开”的目标,它们的具体方法构建也可能不同。

因此需要判断:

方法对象类型是否匹配

进一步还需要判断:

对象属性是否满足方法要求

例如某方法要求:

Object.Type = Door

Object.State = Closed

那么对象匹配不仅包括对象类别,还包括对象状态。

由此:

对象匹配 → 属性匹配 → 状态匹配 → 方法构建匹配


18.9 方法条件构建匹配

方法并不是在任何情况下都可以构建和执行。

一个方法可能具有:

C = {C₁,C₂,C₃}

例如:

  • 对象存在;
  • 对象处于特定状态;
  • 执行主体具有相应能力。

因此两个方法即使目标和动作相同,如果条件结构不同,也可能属于不同的方法。

例如:

M₁:直接拿取 → 移动 → 放置

要求对象处于可直接操作状态。

而:

M₂:解除限制 → 拿取 → 移动 → 放置

增加了一个前置条件处理过程。

两者最终目标可能相同,但方法构建结构已经发生变化。

因此:

条件结构也是方法结构的一部分。


18.10 方法动作构建匹配

动作是方法最重要的构成元素之一。

方法可以表示为:

M = A₁ → A₂ → A₃ → … → Aₙ

因此,方法构建匹配必须判断动作集合是否对应。

例如:

M₁ = A₁ → A₂ → A₃

M₂ = B₁ → B₂ → B₃

如果:

A₁ ↔ B₁

A₂ ↔ B₂

A₃ ↔ B₃

则说明两个方法具有较强的动作结构对应关系。

但是,动作数量相同并不意味着方法相同。

例如:

A₁ → A₂ → A₃

与:

A₁ → A₃ → A₂

动作集合相同,但顺序不同,因此方法结构不同。

所以方法构建匹配必须进一步进入动作顺序匹配。


18.11 方法动作顺序匹配

动作顺序是方法区别于动作集合的重要因素。

设:

P₁ = A₁ → A₂ → A₃

P₂ = B₁ → B₂ → B₃

如果:

A₁ ↔ B₁

A₂ ↔ B₂

A₃ ↔ B₃

则两个过程具有顺序对应关系。

如果:

P₂ = B₁ → B₃ → B₂

则虽然动作元素仍然存在对应关系,但过程结构已经不同。

因此:

动作匹配 ≠ 方法构建匹配

因为方法构建不仅关注“有什么动作”,还关注:

动作以什么顺序组织起来。


18.12 方法结构匹配

方法结构匹配是方法构建匹配的核心。

可以将方法结构表示为:

G → C → O → A₁ → A₂ → A₃ → R

另一个方法表示为:

G’ → C’ → O’ → B₁ → B₂ → B₃ → R’

如果各个结构节点之间存在对应关系:

G ↔ G’

C ↔ C’

O ↔ O’

A₁ ↔ B₁

A₂ ↔ B₂

A₃ ↔ B₃

R ↔ R’

则可以认为两个方法具有结构对应性。

方法结构匹配因此不是单节点匹配,而是:

节点匹配 + 关系匹配 + 顺序匹配 + 整体结构匹配


18.13 方法过程匹配

方法通常具有过程性。

过程可以表示为:

P = {S₁ → S₂ → S₃ → … → Sₙ}

其中:

  • S表示方法过程中的阶段;
  • **→**表示过程转移。

例如:

准备 → 获取对象 → 操作对象 → 完成操作

另一个方法可能是:

准备 → 获取对象 → 操作对象 → 检查结果 → 完成

虽然前几个阶段一致,但是第二个方法增加了结果检查过程。

因此:

过程结构不同 → 方法构建不同

过程匹配需要判断:

  1. 阶段数量;
  2. 阶段类型;
  3. 阶段顺序;
  4. 阶段之间的关系;
  5. 阶段转移条件。

18.14 方法结果构建匹配

方法的构建最终受到结果约束。

如果两个方法具有不同的最终结果,那么它们即使动作相似,也不能简单地认为方法构建相同。

例如:

M₁:移动对象 → 对象到达目标位置

M₂:移动对象 → 对象进入特定状态

两者可能共享部分动作,但最终结果不同。

因此:

结果是方法构建的终点约束。

可以表示:

目标 → 方法结构 → 结果

目标规定方法要解决什么问题,结果规定方法是否达到预期状态。


18.15 方法构建的层次

方法构建具有明显的层次结构。

第一层:

目标层

确定为什么构建方法。

第二层:

对象层

确定方法作用于什么对象。

第三层:

条件层

确定方法成立需要什么条件。

第四层:

动作层

确定方法由哪些动作构成。

第五层:

过程层

确定动作如何组织。

第六层:

结果层

确定方法最终产生什么结果。

因此完整结构为:

目标 → 对象 → 条件 → 动作 → 过程 → 结果

这些元素经过组织后形成:

方法


18.16 方法构建匹配的层次

对应地,方法构建匹配也可以分为六个层次:

目标匹配

对象匹配

条件匹配

动作匹配

过程匹配

结果匹配

方法整体构建匹配

这形成一个由局部向整体的认知匹配过程。


18.17 方法构建匹配与方法匹配的区别

方法匹配和方法构建匹配具有联系,但不是完全相同的概念。

方法匹配主要回答:

两个方法是否属于对应的方法。

方法构建匹配进一步回答:

两个方法为什么对应,它们的构成结构是否对应。

因此:

方法匹配 = 方法整体对应判断

方法构建匹配 = 方法内部构建结构对应判断

例如:

方法A:

抓取 → 移动 → 放置

方法B:

夹取 → 搬运 → 放置

如果二者目标、对象、动作功能和过程结构一致,则可以认为:

方法A ↔ 方法B

而方法构建匹配进一步说明:

抓取 ↔ 夹取

移动 ↔ 搬运

放置 ↔ 放置

并且:

抓取 → 移动 → 放置

对应:

夹取 → 搬运 → 放置

因此,方法构建匹配是方法匹配的内部结构基础。


18.18 方法构建匹配与方法调用匹配的区别

方法构建匹配发生在方法结构层面。

方法调用匹配发生在方法被实际调用的层面。

可以表示为:

方法构建 → 方法形成 → 方法匹配 → 方法调用 → 调用匹配

方法构建匹配关注:

这个方法是如何形成的?

方法调用匹配关注:

当前这个调用是否正确地调用了这个方法?

例如:

Method = MoveObject

方法构建匹配研究:

MoveObject = 获取对象 → 移动对象 → 到达目标位置

方法调用匹配研究:

MoveObject(ObjectA, PositionB)

是否满足当前对象、参数、条件和状态。

因此二者必须保持独立。


18.19 方法构建匹配的形式模型

设两个方法:

M₁ = (G₁,O₁,C₁,A₁,P₁,R₁)

M₂ = (G₂,O₂,C₂,A₂,P₂,R₂)

定义方法构建匹配函数:

MC(M₁,M₂)

其中:

  • MC:Method Construction Matching;
  • M₁:第一个方法;
  • M₂:第二个方法。

可以定义:

MC = F(G,O,C,A,P,R)

其中:

  • G:目标匹配;
  • O:对象匹配;
  • C:条件匹配;
  • A:动作匹配;
  • P:过程匹配;
  • R:结果匹配。

如果采用离散匹配值:

m ∈ {0,1}

其中:

  • 1表示匹配;
  • 0表示不匹配。

则:

MC(M₁,M₂) = 1

表示两个方法满足规定的方法构建匹配条件。

如果某些构建元素不匹配,则:

MC(M₁,M₂) = 0

或者进入部分匹配状态。


18.20 方法构建匹配结果

方法构建匹配不一定只有“匹配”和“不匹配”两种结果。

可以定义:

完全匹配

方法的目标、对象、条件、动作、过程和结果均对应。

结构匹配

主要方法结构对应,但部分元素存在差异。

部分匹配

只有部分动作或过程存在对应关系。

目标匹配

目标相同,但方法结构明显不同。

不匹配

目标、结构和结果均不存在有效对应关系。

因此:

方法匹配结果 → 完全匹配 / 结构匹配 / 部分匹配 / 目标匹配 / 不匹配

这使认知系统能够区分“目标相同的方法”和“结构真正相同的方法”。


18.21 方法构建的动态性

方法并不是绝对固定的。

在不同对象、不同条件和不同状态下,同一个目标可能形成不同的方法。

例如:

目标相同

对象不同

条件不同

动作不同

方法不同

因此:

同目标 ≠ 同方法

同时,一个方法也可能随着条件变化而产生新的构建结构。

例如:

正常条件 → 方法A

受限条件 → 方法B

特殊对象 → 方法C

因此方法构建具有动态性。


18.22 方法构建与认知经验

方法还可以由过去的行为和动作经验形成。

其基本过程可以表示为:

行为经验 → 动作序列 → 结果关系 → 结构归纳 → 方法形成

例如多次出现:

获取对象 → 移动对象 → 放置对象 → 目标完成

经过多次认知后,可以形成一个稳定的方法结构:

对象移动方法

因此方法不是简单记录某一次行为,而是对行为过程中的稳定结构进行组织。

这使方法成为连接经验与行为的重要认知结构。


18.23 方法构建匹配的认知意义

方法构建匹配使认知系统能够从“动作相似”进一步进入“方法结构相似”。

其意义主要体现在三个方面。

第一,能够识别不同名称下的相同结构。

例如:

抓取 → 移动 → 放置

与:

夹取 → 搬运 → 放置

虽然动作名称不同,但结构可能相同。

第二,能够区分相同目标下的不同方法。

例如:

直接移动

与:

先解除限制,再移动

目标可能相同,但构建结构不同。

第三,能够建立方法之间的结构关系。

形成:

方法A → 结构对应 → 方法B

从而形成方法知识网络。


18.24 方法构建匹配的工程对象

在认知工程中,可以将方法定义为独立对象。

Method
├── methodId
├── methodType
├── goal
├── objects
├── conditions
├── actions
├── process
├── result
└── structure

其中:

methodId

表示方法唯一标识。

methodType

表示方法类型。

goal

表示方法目标。

objects

表示方法涉及的对象。

conditions

表示方法成立条件。

actions

表示方法包含的动作。

process

表示动作过程。

result

表示方法结果。

structure

表示完整方法结构。


18.25 方法构建匹配器

可以建立独立的方法构建匹配对象:

MethodConstructionMatcher

其核心功能包括:

matchGoal()
matchObject()
matchCondition()
matchAction()
matchSequence()
matchProcess()
matchResult()
matchStructure()
matchMethodConstruction()

整体过程:

Method₁

读取目标

读取对象

读取条件

读取动作

读取过程

读取结果

与 Method₂ 对应匹配

生成方法构建匹配结果


18.26 方法构建匹配的数据结构

可以将方法构建关系抽象为:

MethodConstruction
{
    goal
    objects
    conditions
    actions
    sequence
    process
    result
}

方法之间则形成:

MethodConstructionRelation
{
    sourceMethod
    targetMethod
    goalMatch
    objectMatch
    conditionMatch
    actionMatch
    sequenceMatch
    processMatch
    resultMatch
    structureMatch
}

由此,方法不再只是一个名称,而成为可以进行结构计算的认知对象。


18.27 方法构建匹配的完整认知链

方法构建匹配在整个认知体系中的位置可以表示为:

目标

对象

属性

关系

行为

动作

动作序列

方法构建

方法

方法匹配

方法调用

状态变化

场景变化

这里需要特别强调:

行为回答发生了什么。

动作回答具体做了什么。

方法回答通过什么结构完成目标。

方法构建回答这个方法是如何由认知元素组织形成的。

方法调用回答当前是否调用这个方法。

因此,它们分别处于不同的认知层级。


18.28 方法构建匹配的核心模型

最终可以形成如下模型:

目标 → 方法构建 → 方法 → 方法匹配 → 方法调用 → 动作执行 → 行为产生 → 状态变化 → 场景变化

其中:

目标规定方向。

方法构建形成解决目标的结构。

方法保存稳定的方法结构。

方法匹配寻找对应方法。

方法调用确定当前实际调用。

动作执行产生具体操作。

行为产生形成可观察的活动。

状态变化记录对象状态改变。

场景变化记录整体环境变化。

由此形成从目标到场景的完整认知链。


18.29 本章小结

方法构建匹配解决的是方法内部结构的对应问题。

方法不是一个简单的动作,也不是一个名称,而是由目标、对象、条件、动作、过程和结果等认知元素共同构成的结构。

方法构建可以表示为:

目标 + 对象 + 条件 + 动作 + 过程 + 结果 → 方法

方法构建匹配则表示:

方法结构₁ ↔ 方法结构₂

其核心过程为:

目标匹配 → 对象匹配 → 条件匹配 → 动作匹配 → 顺序匹配 → 过程匹配 → 结果匹配 → 方法结构匹配

由此可以将认知匹配进一步从单个对象、属性、关系、行为和动作推进到方法结构层面

最终形成:

对象匹配 → 属性匹配 → 关系匹配 → 行为匹配 → 动作匹配 → 方法构建匹配 → 方法匹配 → 方法调用匹配

这一区分使方法不再只是“可以执行的一组动作”,而成为具有目标约束、对象约束、条件约束、动作结构、过程结构和结果约束的独立认知结构,为后续的方法选择、方法调用、行为执行和状态变化提供认知基础。

Leave a Reply

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