Tag: expert system

决策树和规则引擎(Drools)

在我正在进行的应用程序中,我需要定期检查成千上万个对象的资格,以获得某种服务。 决策图本身采用以下forms,只是更大: 在每个端节点(圆圈)中,我需要运行一个动作(更改对象的字段,日志信息等)。 我尝试使用Drool Expert框架,但在这种情况下,我需要为图中的每个路径编写一条长规则,从而导致结束节点。 Drools Flow似乎也没有为这样的用例构建 – 我拿一个对象,然后,根据一路上的决定,我最终进入一个终端节点; 然后再次为另一个对象。 或者是吗? 你能给我一些这些解决方案的例子/链接吗? 更新: Drools Flow调用可能如下所示: // load up the knowledge base KnowledgeBase kbase = readKnowledgeBase(); StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession(); Map params = new HashMap(); for(int i = 0; i < 10000; i++) { Application app = somehowGetAppById(i); // insert app into working memory FactHandle appHandle […]

Java中JESS的输出

我想将一个“事实”发送到java中的JESS文件并返回结果。 我基本上批处理JESS文件,然后通过.add()将我的数据(这里的结构)发送到引擎。 我试图将JESS结果(应该是一个字符串)转换为“值”。 Rete engine = new Rete(); engine.batch(“file.clp”); Value = AAAnull; try{ engine.add(structure) AAA = engine.eval(“(run)”); } catch … System.out.println(AAA); 结果总是一个数字,但结果应该是一个字符串。 我已经在一个简单的java项目中解决了这个问题,AAA正在返回字符串,但是这里它没有用。