收藏 分销(赏)

培训java规则引擎在机场业务及资源管理中应用.pptx

上传人:天**** 文档编号:10339303 上传时间:2025-05-23 格式:PPTX 页数:43 大小:2.30MB 下载积分:12 金币
下载 相关 举报
培训java规则引擎在机场业务及资源管理中应用.pptx_第1页
第1页 / 共43页
培训java规则引擎在机场业务及资源管理中应用.pptx_第2页
第2页 / 共43页


点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,#,1,汇报内容,规则引擎技术简介,基于规则引擎的机场资源管理系统软架构,已完成研究内容和掌握的技术,JBoss Rules,已取得的主要研究成果,下一步研究内容和仿真方法,论文进度安排,2,规则引擎技术相关工作,规则引擎是一种嵌入在信息系统中的构件,它将频繁变化的业务规则从程序中剥离出来,放入规则库中管理和修改。,规则引擎的基本过程是将提交给它的事实数据对象与加载在引擎中的业务规则进行测试和对比,激活那些符合当前事实对象状态的业务规则,触发系统中对应的操作,完成对信息系统中某些状态信息的改变。,规则引擎针对业务规则频繁变化且事实对象之间的约束关系复杂时,可以发挥很大的优越性。,3,规则引擎技术相关工作,规则引擎分为规则库,、工作内存、推理引擎三部分,。,推理引擎细分为模式匹配器,、议程、执行引擎三部分。,规则引擎的运行机制,4,规则引擎运行机制,规则引擎通过快速检索工作内存的对象与,与加载到其中的规则库中的各项规则前提进行匹配,激活符合条件的规则,放入冲突集中。,冲突集中的规则通过规则优先权等因素的制定,排序生成议程,从而使优先级高的规则被第一个触发。,规则执行后,规则的后件执行部分会改变加载到工作内存中的事实对象信息,使议程中的一些激活的规则的前提条件不再得到满足,必须从议程中撤销,反之又有新的规则被激活加入议程中。,以上过程不断循环,产生动态的规则执行链,直到每个事实都处理完毕或没有规则可以被触发为之。下图反应工作内存和议程的变化情况。,5,规则引擎运行机制,6,基于规则引擎的机场资源管理系统软架构,传统机场资源管理系统架中,考虑到很多约束规则,机场资源的链接关系和分配约束规则复杂且变化频繁,如果每个规则的变化都交给软件工程师修改程序源代码,任务繁重,限制了系统扩展性。,在客运高峰等不确定因素造成的资源冲突时,无法通过虚拟分配资源预测出任何规则改变或调整带来的有利或不利影响,因此资源分配策略并非最优。,在基于规则引擎的机场资源管理系统软架构模型中,可以通过加载航班对象事实和业务约束规则完成模式匹配过程,激活并触发相应匹配规则来修改资源对象的状态信息,从而模拟出资源分配工作。,通过改变规则约束条件和航班计划事实,实现资源的虚拟分配,根据分配结果的最优化程度,制定和调整规则的优先级,从而使机场资源管理系统嵌入规则引擎时,规则按重要程度执行,从而实现了资源的最优化配置。,7,基于规则引擎的机场资源管理系统软架构,The soft architecture of ARMS based on rule engine,8,基于规则引擎的机场资源管理系统软架构,机场业务约束规则举例如下:,1,、当已有航班安排在,5,号或,7,号停机位时,在航班到港前,30,分钟,,2,、,3,、,4,、,8,号停机位禁止分配给任何航班。,2,、,2,号和,18,号远机位禁止停放大型飞机,只能停放,A320,,,A319,,,737,系列。,航班因故障,或天气因素时,应安排在,14,号和,16,号停机位,作应急之用。,19,号机位只有在其它机位全部投入使用时才会投入使用,9,基于规则引擎的机场资源管理系统软架构,在机场资源管理系统中嵌入规则引擎,首先要建立主规则库和其它类型规则库。,主规则库包括日常运营的一系列规则,例如:一般类型的机位可以被允许分配的机型类型为:,B737,、,B757,、,B777,、,A310,、,A320,、,A321,;,2,号和,8,号远机位不能停放,B767,、,A330,以上的大型航班;,18,号和,20,号机位设置为不允许,预留给特殊航班。,其它规则库则包括特殊的事件处理方式,例如:如发生天气变化等因素时,可根据实际情况安排在,4,号或,6,号备用机位。,10,基于规则引擎的机场资源管理系统软架构,仿真实现方法如下:,在新的架构下,通过,JBoss Rules,规则引擎在,Eclipse,下的集成,可以方便实现规则库与程序源代码的交互。,航班事实对象可以表示为,Java Bean,类生成的对象,只包含航班事实本身的属性及属性的,get,和,set,方法,而不包括对象间的约束关系和相关逻辑。如航班类包括:航班号、机型号、机型类型、到港状态、离港状态、到港时间、离港时间、分配的机位号。而机位事实包括:机位号,机位类型(近机位,远机位),分配状态(已经分配,没有分配),分配后的航班号。,11,基于规则引擎的机场资源管理系统软架构,JBoss Rules,规则引擎中规则可以被定义到后缀名称为,drl,类型的文件中,也可以保存为表格或规则流形式,这里采用,drl,格式仿真。,JBoss Rules,规则引擎中条件可以由,when,关键词定义,执行动作通过,then,关键词定义,举例伪代码如下:当航班类型为大型的航班,MU5314,到港时,合理完成了资源的分配仿真,将将,25,号停机位分配给此航班,同时临近的,24,号和,26,号停机位不能停放任何到港航班。,12,基于规则引擎的机场资源管理系统软架构,rule,大型机的分配,salience 3,when,#conditions(,条件,),Condition1,:,航班机型为大型机,Condition2,:,航班的状态为到港,then,#actions(,动作,),Action1,:,将,25,号停机位分配给此航班,Action2,:,临近的,24,号和,26,号停机位不能停放任何到港航班,即分配权限属性设为不允许(为了安全考虑),13,已完成研究内容和掌握的技术,JBoss Rules,JBoss Rules,是一种开源的商业规则引擎,它的前身是,Codehaus,的一个名为,Drools,的开源项目,,Drools,是为,Java,量身定制的基于,Rete,算法的规则引擎。,JBoss Rules,可以作为插件的形式集成到当前最流行的,Java,开源开发环境,Eclipse,下,免费且开发界面友好。,以下通过实例分析,掌握了,JBoss Rules,规则引擎的基本使用方法,为仿真实现打下基础。下面是,JBoss Rules,在研究生奖学金评定中的实现仿真,原理与机场仿真相近,作为基础。,14,已完成研究内容和掌握的技术,JBoss Rules,应用程序中导入规则包:,PackageBuilder builder=new PackageBuilder()builder.addPackageFromDrl(new InputStreamReader(CepingExample.class.getResourceAsStream(/constraint.drl);RuleBase ruleBase=RuleBaseFactory.,newRuleBase,();ruleBase.addPackage(builder.getPackage();,15,已完成研究内容和掌握的技术,JBoss Rules,工作内存的创建及对象的导入,WorkingMemory workingMemory=ruleBase.newStatefulSession();,Graduate zhuqiang=new Graduate(,朱强,24,25,88,9);,Graduate zhaoyaou=new Graduate(,赵亚欧,25,26,92,16);,Graduate cailiang=new Graduate(,蔡亮,26,28,88,12);,workingMemory.insert(zhuqiang);,workingMemory.insert(zhaoyaou);,workingMemory.insert(cailiang);,workingMemory.fireAllRules();,16,已完成研究内容和掌握的技术,JBoss Rules,规则举例如下:,rule,社会贡献奖约束,#include attributes such as salience here.,salience,5,when,graduate:Graduate(fujiafen15);,then,#actions,graduate.setFujiafen(10);,System.out.println(graduate.getName()+,附加分超过,15,,按,10,分算,);,end,17,已完成研究内容和掌握的技术,JBoss Rules,18,已完成研究内容和掌握的技术,JBoss Rules,19,已完成研究内容和掌握的技术,JBoss Rules,在,Jess,中,有个实例,在这里用,JBoss Rules,将其重写,得出,JBoss Rules,下更方便与,Java Bean,类交互的结论。,There is a golfer named Fred,Joe is in position 2,Bob is wearing plaid pants,Tom isnt in position 1 or 4,and isnt wearing orange,The golfer to Freds immediate right is wearing blue pants,20,已完成研究内容和掌握的技术,JBoss Rules,21,已完成研究内容和掌握的技术,JBoss Rules,22,仿真结果,23,仿真结果,24,仿真结果,25,仿真结果,26,仿真结果,27,仿真结果,28,仿真结果,29,仿真结果,30,仿真结果,31,仿真结果,32,仿真结果,33,仿真结果,34,最终仿真结果,35,最终仿真结果,36,最终仿真结果,37,最终仿真结果,38,最终仿真结果,39,已取得的主要研究成果,撰写论文,3,篇:,朱强,曲守宁,赵亚欧,邹燕,基于,Jess,的规则引擎机制的研究,(,济南大学学报(已录用),),Research and Application of Rule Engine in Airport Resource Management System,(审稿中),基于,JBoss Rules,规则引擎的机场资源管理系统软架构(审稿中),40,下一步的研究的内容,1,、在对,JBoss Rules,规则引擎熟练掌握的基础上,下一步工作将根据具体的机场资源分配和业务约束规则文档创建出完整的规则库,同时根据航班类定义出每个航班的对象信息。,JBoss Rules,规则引擎可以通过加载航班对象事实和业务约束规则完成模式匹配过程,激活并触发相应匹配规则来修改资源对象的状态信息,从而模拟出资源分配工作。,2,、通过改变规则约束条件和航班计划事实,实现资源的虚拟分配,根据分配结果的最优化程度,制定和调整规则的优先级,从而使机场资源管理系统嵌入规则引擎时,规则按重要程度执行,从而实现了资源的最优化配置。,41,下一步的研究的内容,3,、通过分析任何规则的改变对资源分配带来的有利或不利影响,对不利规则做出更改和调整,从而完善规则库使其更合理。,综上所述,最终完成,JBoss Rules,规则引擎在机场资源管理系统中的应用仿真。在仿真模块中,通过有选择的加载规则库中的规则或改变某些规则,由规则引擎自动得出相应资源分配策略,来直观分析出任何规则的改变对资源分配带来的有利或不利影响,进而可以对不利的规则做出调整和更改以适应资源最优化分配。,42,下一步的研究的内容,目前规则引擎技术是新的系统设计理念,与传统软架构相比具有很大优越性,但在国内应用较少,已经初步应用到公交车辆调度、制造业,MES,、“旅游一卡通”计费系统中,在机场资源管理方面还是探索阶段,预测分析模块的实现是创新点,对将来投入实际应用具有指导意义。,43,汇报完毕,谢谢,!,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服