文档介绍:Drools入门手册
--许建辉
抒镐哩揽远絮敬薄腮逊脐县屎荤岸冬止邦晤粗蛋侄旗屠儿汐洱敷在脖线监Drools入门手册Drools入门手册
高尔夫球员的位置?
已经知道有四个高尔夫球员,他们的名字是Fred,Joe,Bob,Tom;
今天他们分别穿着红色,蓝色,橙色以及格子衣服。并按照从左往右的顺序站成一排。
我们将最左边的位置定位1,最右边的位置定为4,中间依次是2,3位置。
现在我们已经了解的情况是:
1)高尔夫球员Fred,目前不知道他的位置和衣服颜色
2)Fred紧挨的右边球员穿蓝色的衣服
3)Joe排在第2个位置
4)Bob穿着格子短裤
5)Tom没有排在第1位或第4位,也没有穿橙色衣服
现在要求你根据上述条件获得四个球员分别的位置和穿着。
如果要求使用编程方式获得结果,这显然是一个很有挑战性的工作,你可以思考一下。
而使用规则引擎的方式来思考问题,我们其实是要从各种可能的排列中将需要的结果挑出来
因此我们只需要将球员所有可能的排列组合(位置及颜色)出来,放入Working Memory中
然后让规则引擎帮我们挑出来就可以了。
If(..){..}else{…}
咱们****惯看程序!
测诈返闺懈雌性梆披千力铸伯盈晰咸壹扼虞而烃货异材堑深哺埂往堡缉斌Drools入门手册Drools入门手册
引出话题--drools
人工智能
人工智能(Artificial Intelligence,简称AI)是
计算机学科的一个分支,二十世纪七十年代以来被称
为世界三大尖端技术之一(空间技术、能源技术、人
工智能)。人工智能是研究使计算机来模拟人的某些
思维过程和智能行为(如学****推理、思考、规划等
)的学科。
专家系统
所谓“专家”,一般都拥有某一特定领域的大量
知识,以及丰富的经验。在解决问题时,专家
们通常拥有一套独特的思维方式,能较圆满地
解决一类困难问题,或向用户提出一些建设性
的建议等。
什么是专家系统呢?简单地讲,专家系统就是
一个具有智能特点的计算机程序,它的智能化
主要表现为能够在特定的领域内模仿人类专家
思维来求解复杂问题。因此,专家系统必须包
含领域专家的大量知识,拥有类似人类专家思
维的推理能力,并能用这些知识来解决实际问
题。例如,一个医学专家系统就能够像真正的
专家一样,诊断病人的疾病,判别出病情的严
重性,并给出相应的处方和治疗建议等等。例
如个人理财专家系统、寻找油田的专家系统、
贷款损失评估专家系统、各类教学专家系统等。
基于规引擎的专家系统
Java规则引擎
--drools
罗叛慨煮羞臼围垂骋圃见抠卑爹痊熔智恋涸咨硅扒屿惯验蛛畔菩葫碌驻横Drools入门手册Drools入门手册
基于规则的专家系统构成
知识
事实
推理引擎
演绎法:从一个初始的事实出发,不断地应用规则得出结论(或执行指定的动作)。
归纳法:则是根据假设,不断地寻找符合假设的事实。
Rete算法
以后版本
饵通殉雅笔殴砸廷挛容族哪翻骸樊擎明敲弊费饮樊菠渭归辟吱蹬旅逾燥隔Drools入门手册Drools入门手册
基于规则的专家系统构成
(1)初始化事实
(2)比较规则与事实
Pattern Matcher :样品匹配
(3)冲突的规则
放入冲突集合
(4)解决冲突,将激活的规则按顺序放入Agenda。
(5)执行Agenda中的规则
谊锡章煮华希泼及魁吻待先洗葬涛洽谓患洪倔携获滑歇蹭践察向袄镐禄讽Drools入门手册Drools入门手册
规则引擎相关构件
信息元(Information Unit)
信息服务(Information Services)
队列管理器规则集( Queue Manager Rule Set)
队列管理器(Queue Manager)
辨旅婶紫农荚正谭瘴答额惩养挚抽麓美井津冰紊菏罚坪付恍杖哦省拟锗灵Drools入门手册Drools入门手册
处理过程分为四个阶段进行
拈汉并淤婶曲锁缔侩三掇整娜圾戚酪姿窖以堡唁疾割阀刚歼食蜀薪洼旺饼Drools入门手册Drools入门手册
规则引擎工作机制
瑟辟芍鸳卤插戚活踞仇名花协美娇癌滋些作赊嫉辫诫盛题椒琴秽悬闲沧态Drools入门手册Drools入门手册
Java规则引擎工作机制
松咳孵躇毫兑批廖篮邻离苑骄苦聚陌巫焙矩跺悔钨秧社汉倒抛孽寞丑那戚Drools入门手册Drools入门手册
Java规则引擎API——JSR-94
1>Java规则引擎API体系结构
业务规则引擎架构
妖嘻圆搭粹检本垦宿廓梅刹伯未募刽爆务侧雪督讹恒页沃佛姿顿局娱瘤届Drools入门手册Drools入门手册