CLIPS性能问题

问题描述 投票:0回答:1

我正在通过将CLIPS 6.31嵌入到处理中等规模的数据流并要求几乎实时的C ++应用程序中来构建专家系统(即,总分析时间不应超过40毫秒) 。到目前为止,我将430个事实反馈到了推理引擎的“入口点”(知识库由8条规则组成,其中大多数规则在每次迭代中都触发,通过EnvRefresh(...)实现)在一个循环中导致响应时间在600到700毫秒之间振荡,这比所需的时间大得多。有什么方法可以加快推理速度吗?如果实时响应很重要,规则模式可以有多“沉重”? CLIPS是否完全适合于这样的实时应用,还是应将其替换为CLIPS / R2或类似的东西?

c++ clips
1个回答
0
投票

仅通过代码的一般描述就很难分析性能问题。这是有关堆栈溢出的两个问题,这些问题说明了可以重写以提高性能的规则:

How to optimize pattern matching between different templated facts in CLIPS

CLIPS huge memory usage

您还可以启用分析功能来编译C ++程序,以了解在哪里花费时间。在正常执行过程中使用refresh命令会引起一些危险信号。

我听说,CLIPS / R2不再可用,部分原因是CLIPS 6.3的性能有所提高。

© www.soinside.com 2019 - 2024. All rights reserved.