当前位置: 首页 > 面试题库 >

C或Python中的规则引擎

颛孙航
2023-03-14
问题内容

我正在寻找使用C或Python编写的规则引擎,但是如果您知道用另一种语言实现的规则引擎,我将非常高兴知道。

该引擎将用作使房屋自动化的方式,例如当有人离开房间等时关闭电灯等。因此,那里没有“办公室”规则(也就是您在Excel等程序中规则)。

我研究了Java中的Jess和Drools,它们做得很出色。我想知道其他人,并且可能使用的内存少于Java。我听说过Python中的RuleCore,但实际上找不到任何文档(1.0版在SourceForge上可用,但看起来他们正在出售2.0版)。

编辑 :通过规则引擎(推理引擎),我的意思是RETE或等效的实现。


问题答案:

在Python中搜索基于RETE的规则引擎时,您可能想要使用Pyke或PyCLIPS。

PS:我对S.Lott关于Pyke的回答发表了评论。根据他的建议,我已经发布了一个单独的答案,并且还让其他读者轻松知道,如果他们正在寻找答案,则此答案中提到的规则引擎可能是一个不错的选择。



 类似资料:
  • 我正在从事这个项目,我的角色是开发使用标准健康保险xml的服务。服务必须在不同的xml字段上进行验证,这涉及将xml数据与数据库表中的数据进行比较。目前,我们假设所有保险公司的验证保持不变。但我怀疑它会保持不变,并且每家公司可能有不同的验证要求。在这种情况下,使用Drools规则引擎并为每家公司开发drl文件并使用规则引擎进行xml验证是个好主意吗

  • 我正在为我的项目评估一个规则引擎。该项目将基于hadoop。我用DROOLS做了一些POC。基本上,我使用DROOL在映射器一侧。基于此,以下是我的观察和质疑。 1) a)我使用DROOLS在300万对象上启动了规则(大约需要17秒)b)我使用简单的Java对象(大约需要17秒)为没有DROOLS的300万对象使用了与DRL文件中相同的if/else循环逻辑。b大约比a快100倍。这是正常行为吗?

  • 我正在向drools规则引擎插入数据,但我无法理解它是如何处理插入的数据的。插入数据的代码是:

  • 我们已经使用Drools引擎几年了,但是我们的数据已经增长了,我们需要找到一个新的分布式解决方案来处理大量数据。我们有复杂的规则,可以查看几天的数据,这就是为什么Drools非常适合我们,因为我们的内存中只有数据。 你对类似于流口水但分布式/可扩展的东西有什么建议吗? 我确实对这件事进行了研究,但我找不到任何符合我们要求的东西。 谢谢

  • 我知道Drools中的“显着性”提供了对规则执行顺序的控制。但上面是一个例子,说明了当“显着性”不再能帮助我时所面临的问题。 在这里,我有三条规则正在相继执行: 我期望第三条规则被触发,并且控制台中有“规则被触发”行,但它没有被执行。 据我所知,问题在于规则评估阶段,当所有三个规则在执行前同时评估,然后才根据它们的“显着性”回合执行。 在评估的那一刻,$resource1.amount是5,这就是