可以添加到剪辑规则引擎的最大事实数是多少?
What is the maximum number of facts that can be added to a clips rules engine?
我正在构建一个包含剪辑规则引擎的块,
我的块的顶层是 android(java 代码),我有在 "CLIPS4Android" 模块的帮助下与剪辑引擎对话的本机代码。
https://github.com/gomezgoiri/CLIPS4Android
假设我只是打开规则引擎(从 java 创建环境)。
当我添加具有某些值的第一个事实(来自 java)时,该事实编号为 <1>。
因为 CLIPS4Android 不支持修改,所以当需要修改事实时,我需要收回事实,而不是用其他值再次添加它。
现在事实编号为 <2>。
如果我多次重复这个过程,我可以达到事实的极限。
我的问题是我可以添加到我的规则引擎中的事实是否有限制,如果是的话是什么?
如果没有限制,在我达到最大事实数后发生了什么(我知道 android 上整数的最大值是 2,147,483,647,当我添加 ++ 时,它会变为 -2,147,483,647。
来自CLIPS基础手册,2.4.1 Facts
:
"The number of facts in the fact-list and the amount of information
that can be stored in a fact is limited only by the amount of memory
in the computer."
CLIPS 6.3 及更高版本中的事实索引使用 long long 整数表示。这为您提供了 9,223,372,036,854,775,808 的事实索引最大值。如果每秒修改 10 亿个事实,那么将事实索引换行几乎需要三个世纪。
按事实索引搜索是线性的,因此您最好花一些时间在 CLIPS4Android 中添加对修改功能的支持。
我正在构建一个包含剪辑规则引擎的块, 我的块的顶层是 android(java 代码),我有在 "CLIPS4Android" 模块的帮助下与剪辑引擎对话的本机代码。
https://github.com/gomezgoiri/CLIPS4Android
假设我只是打开规则引擎(从 java 创建环境)。 当我添加具有某些值的第一个事实(来自 java)时,该事实编号为 <1>。 因为 CLIPS4Android 不支持修改,所以当需要修改事实时,我需要收回事实,而不是用其他值再次添加它。 现在事实编号为 <2>。
如果我多次重复这个过程,我可以达到事实的极限。
我的问题是我可以添加到我的规则引擎中的事实是否有限制,如果是的话是什么? 如果没有限制,在我达到最大事实数后发生了什么(我知道 android 上整数的最大值是 2,147,483,647,当我添加 ++ 时,它会变为 -2,147,483,647。
来自CLIPS基础手册,2.4.1 Facts
:
"The number of facts in the fact-list and the amount of information that can be stored in a fact is limited only by the amount of memory in the computer."
CLIPS 6.3 及更高版本中的事实索引使用 long long 整数表示。这为您提供了 9,223,372,036,854,775,808 的事实索引最大值。如果每秒修改 10 亿个事实,那么将事实索引换行几乎需要三个世纪。
按事实索引搜索是线性的,因此您最好花一些时间在 CLIPS4Android 中添加对修改功能的支持。