Algorithm 模式识别算法

Algorithm 模式识别算法,algorithm,pattern-recognition,Algorithm,Pattern Recognition,在过去,我必须开发一个作为规则评估者的程序。您有一个先行项和一些连续项(动作),因此如果先行项使执行的动作变为true 当时,我使用了一个修改版本的(有三个版本的RETE,只有第一个版本是公共的)进行先行模式匹配。我们这里说的是一个大系统,每个规则有数百万个操作,一些操作符在几个规则中“重复” 有可能我必须用其他语言重新实现它,即使我在RETE方面有经验,有人知道其他模式匹配算法吗?有什么建议或者我应该继续使用RETE吗?TREAT算法与RETE类似,但不记录部分匹配。因此,在某些情况下,它可能

在过去,我必须开发一个作为规则评估者的程序。您有一个先行项和一些连续项(动作),因此如果先行项使执行的动作变为true

当时,我使用了一个修改版本的(有三个版本的RETE,只有第一个版本是公共的)进行先行模式匹配。我们这里说的是一个大系统,每个规则有数百万个操作,一些操作符在几个规则中“重复”


有可能我必须用其他语言重新实现它,即使我在RETE方面有经验,有人知道其他模式匹配算法吗?有什么建议或者我应该继续使用RETE吗?

TREAT算法与RETE类似,但不记录部分匹配。因此,在某些情况下,它可能比RETE使用更少的内存。此外,若你们修改了大量已知事实,那个么TREAT可以更快,因为你们不必花时间在撤回上

还有一种方法可以在RETE和TREAT之间取得平衡,即根据要使用的内存量保存一些连接节点状态。因此,您仍然可以节省一些断言时间,但也可以根据您调整系统的方式节省内存和收回时间

您可能还希望签出,它使用一个惰性评估方案,并包含RETE和TREAT元素


我对RETE只有个人经验,但似乎RETE*或LEAP是更好、更灵活的选择。

LEAP链接:这些都是死链接。幸运的是,它们被保存在档案中:Rete*()和LEAPS()