增量模式匹配的Rete网络构建算法
1. 增量模式匹配过程概述
模式匹配是为给定模式中的所有变量确定映射,使模式中的所有约束都得到满足的过程。变量到对象的映射统称为匹配,当所有变量都被映射时为完全匹配,其他情况为部分匹配。增量模式匹配的整体过程如下:
- 编译时任务 :在编译时,通过网络构建算法从模式规范构建Rete网络。
- 运行时行为 :在运行时,Rete网络持续跟踪底层模型中所有模式的完全匹配以及计算完全匹配所需的部分匹配。这些匹配存储在Rete网络中,并在由模型更改通知触发的更改传播过程中进行增量更新。
2. Rete网络
Rete网络是一个有向无环图,其节点是数据处理单元,通过边组织成父子关系。节点分为骨架(S)、索引器(I)和重映射器(R),且连接有一定限制,骨架、重映射器和索引器只能分别连接到重映射器、索引器和骨架。
- 骨架 :计算Rete网络中模式的匹配。基本骨架对应具有单个约束的模式,无输出边;连接骨架表示具有多个约束的模式,由两个较小模式组装而成。
- 重映射器 :维护从其孙骨架变量到其父连接骨架变量的基于数组的映射,以支持后者节点中的匹配计算。
- 索引器 :将其子骨架产生的匹配存储在表中,匹配根据子骨架的索引变量的值排序。
以下是Rete网络节点类型的总结表格:
| 节点类型 | 功能 | 连接限制 |
| ---- | ---- | ---- |
| 骨架 | 计
超级会员免费看
订阅专栏 解锁全文
17

被折叠的 条评论
为什么被折叠?



