写了个图形化显示知识库的功能,不常用,怕忘了,要点记录一下
1.推理机使用jsr94,实现用jess
2.图形显示用graphiz,java显示部分用idot,好多bug,幸好源代码很少,复制进来直接修改,里面用到prefuse.jar也有bug,绕过去吧,graphiz自己在网上下,idot带的有的时候生成不出图形来
3.jsr94尽量采用无状态的session
StatelessRuleSession statelessRuleSession = (StatelessRuleSession) ruleRuntime
.createRuleSession(uri, new HashMap(), RuleRuntime.STATELESS_SESSION_TYPE);
这样可以模拟用户的回答预先得到下级节点,如果用StatefulRuleSession就没办法做到了
缺点是workmemory(workmemory对应的概念是状态空间)自己维护,比较占内存
List<Object> workmemory = new ArrayList<Object>();
//workmemory.add(...);
//workmemory.add(...);
workmemory = session.executeRules(workmemory);
4.知识库中最好不要修改传入的参数
尽量采用 request,response的方式,回复都放在response中,request不变化,否则会影响到外部变量
5.搜索方式采用广度有限搜索,符合图形显示的要求,可以一级一级展开
6.这种方式完全可以用于数据状态的图形化显示,只要去掉推理机
状态经过事件出发转换为新的状态,只要根据状态能得到允许的所有事件,例如一个单据处于制单状态,允许的所有事件是固定的(审核,修改,作废)
分享到:
相关推荐
用MFC实现的多线程排序图形化显示,初学者, 请多多指教~!
Slowquery图形化显示MySQL慢日志工具
图形化显示数据之图表与图形.pptx
xshell链接kingba数据库显示图形化
这是一个用c#编写的windows应用程序,写的是二叉树在windows窗体上的生成显示
shell图形化总结,觉得还不错的。该有的上面全都有。shell图形化总结,觉得还不错的。该有的上面全都有
大二下用MFC做的一个显示排序二叉树的小程序,可以输入带插入的结点值,自动画出插入后的排序二叉树
Qbasic 高效解法-递归版 c#实现 C++实现 Python实现 PASCAL实现 SHELL实现 独立解 VB实现 还有图形化显示 等等很多解决方法的综合,本人自己找资料整合出来的,望大家有用。
人教版六年级下册图形与几何知识点总结
zookeeper客户端 图形化界面zookeeper客户端 图形化界面zookeeper客户端 图形化界面zookeeper客户端 图形化界面zookeeper客户端 图形化界面
C#实现磁盘调度的四种算法,图形化界面显示(折线图),能动态显示画图过程(操作系统的课设)
plsql oracle 数据库图形化 plsql oracle 数据库图形化
人工智能课小作业 旅行商问题的蚁群算法求解&MFC图形界面显示结果
Ping 实时检测局域网 计算机连通状态 并图形化显示 这个程序是使用Ping命令来检测局域网内计算机的网络连接状态,并以图形的方式显示出结果,鼠标放在某一需要检测的计算机图标上,程序会优先检测本计算机是否连接...
mysql5.5安装包、mysql图形化界面工具
全国青少年图形化编程等级一级试卷及答案.pdf全国青少年图形化编程等级一级试卷及答案.pdf全国青少年图形化编程等级一级试卷及答案.pdf全国青少年图形化编程等级一级试卷及答案.pdf全国青少年图形化编程等级一级试卷...
fft程序,并且可以图形化显示FFT后的频率图
c++贪吃蛇实现/图形化编程 大多数用c++实现贪吃蛇小游戏比较繁琐,该程序以及其简单的思路和代码来实现贪吃蛇小游戏的逻辑过程,另外加上图形化编程,可以更有利于初学者进行上手学习。