农业专家系统及其开发工具研究生课程讲座•DevelopingToolforExpertSystems•DevelopingPlatformforExpertSystems•ExpertSystemsinAgriculture•AgriculturalExpertSystems•IntelligentSystemsinAgriculture内容:•概况•概念•结构•技术•工具(平台)•步骤•实例•未来一、概况1、二十一世纪最活跃的学科:生物技术、信息技术(数据库、多媒体、网络、人工智能、3S等)2、ES是人工智能(AI)的一个重要分支3、ES产生于70年代末,应用于医疗、探矿、化学结构4、农业专家系统开始于80年代初,如雄风系列,Comax/Gossym—CottonPlus国际上有代表性的农业专家系统Somemainexpertsystemsinagriculture系统名称Type研制者Developer时间Time应用领域FieldofapplicationPLANTA.G.Boulanger1978DiagnosingdiseasesforsoybeanCFF.L.Xiongetal.1983CropfertilizationCOMAXH.Lemmon1986CottonmanagementFOURRAGEJ.P.Patacq1987OptimizationofforageproductionCALEXE.R.Plant1989CottonandricemanagementandpeachtreecontrolCUEO.W.Morganetal.1989WinterwheatvarietyselectionDHLESA.D.Whittakeretal.1989MilkproductiondiagnosisMISTINGB.K.Jacobsonetal.1989PropagationingreenhouseFinARSW.G.Boggesetal.1989FarmfinancialanalysisKA(XF)F.L.Xiongetal.1990DevelopingtoolforexpertsystemsCROPESS.Mohanetal.1994CropselectionbasedonenvironmentGRAPEXS.Edressetal.1998Grapeproductionmanagement二、概念1、专家级、智能型的计算机程序系统2、数据结构+算法=程序知识+推理=专家系统3、功能:咨询、诊断、预测、分析、决策人机交互接口知识获取模块知识库解释模块数据库推理机三、结构四、技术(知识工程)•知识获取•知识表示•知识运用1、人工获取:知识工程师→领域专家2、半自动获取:向导型、示例型、非编码型工具软件3、自动获取:有自学习功能,如机器学习、机器发现(活跃领域)KDD(KnowledgeDiscoveryinDatabase)(一)知识获取:“瓶颈”(二)知识表示:规则、框架、逻辑、语义网络等1、规则组=规则架+规则体RULEnIF……THEN…...RB{体规则IF……THEN……计算公式}2、综合知识体=描述性框架+规则组框架:FRAME1架名STATE状态槽名(集)IF……THEN……(条件侧面PROCESS)…….DEFAULT(默认侧面)PROCESS处理槽名处理侧面ADVICE无处理侧面(调用子框架或规则组)3、基于OOP的综合知识体=知识体·对象块ASK(提问集)BEGIN(开始知识体){控制对象块}KB(知识体){对象块}……..RG(规则组对象块)KB(功能){RULEn}(规则组)END……..(三)知识运用(推理策略)1、正向推理:数据(事实)驱动2、反向推理:目标驱动3、混合推理4、不确定性(不精确性)推理•概率论(Bayes模型)•确定性理论(CF模型)•证据理论(D-S模型)•模糊理论(P模型、三I模型)合并算法3kkk1kjmjkk11)(111kijmjkiniki更新算法2更新算法1特征展开三I模糊推理模型雄风4.1的模糊EBNF定义〈规则组〉::=〈规则架〉〈规则体〉〈规则架〉::=RULE〈规则号〉IF〈前提项集〉THEN〈结论项集〉〈规则号〉::=〈整数〉〈前提项集〉::=〈前提项〉,〈前提特征系数项〉{,〈前提项〉,〈前提特征系数项〉}〈结论项集〉::=〈结论项〉,〈结论特征系数项〉{,〈结论项〉,〈结论特征系数项〉}〈前提项〉::=〈因素〉〈结论项〉::=〈因素〉〈因素〉::=〈汉字串〉|〈字母串〉〈前提特征系数项〉::=〈实变量〉〈结论特征系数项〉::=〈实变量〉〈实变量〉::=〈字母〉{〈字母〉|〈数字〉}〈规则体〉::=RB'{'〈模糊体规则集〉|〈计算规则集〉〈模糊体规则集〉'}'〈模糊体规则集〉::=〈模糊规则〉{;〈模糊规则〉};〈模糊规则〉::=IF〈模糊前提集〉THEN'{'〈模糊结论集〉〈规则支持度〉〈模糊传递函数〉;'}'〈模糊前提集〉::=〈模糊前提〉{〈逻辑符〉〈模糊前提〉}〈模糊前提〉::=〈前提项〉=〈模糊值〉〈逻辑符〉::=AND|OR|NOT〈模糊结论集〉::=〈模糊结论〉{;〈模糊结论〉};〈模糊结论〉::=〈结论项〉=〈模糊值〉|〈汉字串〉〈模糊值〉::=模糊语言|模糊数〈规则支持度〉::=数值;〈模糊传递函数〉::=更新算法1|更新算法2|合并算法3〈计算规则集〉::=〈计算规则〉{;〈计算规则〉};〈计算规则〉::=〈因素〉=代数表达式5、其它推理方法•常识推理•定性推理•非单调推理•基于案例推理(CBR)CBR(Case-BasedReasoning)是目前构建新型专家系统的最有效手段。YNYN1.开始2.问题描述(气象、病情)3.目标案例4.案例检索5.初始案例集6.案例Fuzzy匹配7.有无相似案例?16.匹配失败18.调整ε值17.提示,停止8.候选案例9.候选案例是否唯一?10.案例修正11.新案例12.预测趋势曲线及防治建议13.案例存储14.酥梨黑星病案例库15.案例库维护例基于案例模糊推理的砀山酥梨黑星病预报系统五、工具(开发平台)1、雄风(XF)2.0、2.1•DOS下编译、运行•知识库编辑:字处理软件(Word、WPS、写字板、记事本等);保存为*.TXT文件•知识表示方法:规则组2、雄风(XF)3.0、3.1•DOS下编译、Windows下运行•知识库编辑:字处理软件(Word、WPS、写字板、记事本等);保存为*.TXT文件•知识表示方法:综合知识体3、雄风(XF)4.0、4.1•Windows下编辑、编译、运行•知识库编辑:自带编辑软件;保存为*.TXT文件•知识表示方法:基于OOP的综合知识体六、步骤1)问题(任务)及其分解推理网络图→定性、定量细化缺素原因叶片单位缺素量单株树冠体积土壤单位缺素量干叶容重矫治措施缺素量土壤容重土壤营养临界值叶片营养分析值叶片营养临界值土壤营养分析值土壤类型α1α4缺素发生叶龄枝梢症状发生程度枝梢症状叶形症状发生程度叶形症状叶色症状出现程度叶色症状α3α2例砀山酥梨营养诊断与矫治模糊专家系统推理网络图知识体(架)推理网络图规则对象块推理网络图2)知识库建造(雄风4.1)ASK(提问集)…...BEGIN(开始知识体){控制对象块}KB(知识体){对象块}……..RG(规则组对象块)KB(功能){RULEn}(规则组)END……..•总体结构1)控制对象块:IF…THEN…(对象块n)对象块n2)描述性对象块:ADVICE“字串”3)计算对象块:数据类型、计算符、逻辑符、函数等4)信息对象块:输入、输出、提示等5)接口对象块•对象块类型•接口对象块形式1)多媒体文件ADVICE“(动画=*.app)”ADVICE“(声音=*.wav)”ADVICE“(图象=*.bmp)”2)可执行文件RUNCOMMAND“Path\*.exe”3)数据文件OPEN/READ*.txtDATABASE(SQL)*.dbf4)规则组对象块RUNRULE规则组对象名.功能名5)知识体知识体名()3)知识库检验语法检验完备性检验一致性检验→提示修改4)测试运行(实际检验)正确性实用性→逐步完善七、实例(雄风4.1工具中的示例)八农业专家系统的未来•强化农业知识工程基础性研究•综合集成技术体系是农业专家系统的发展方向•智能型专家系统开发工具是构建农业专家系统必要手段•多层次、网络化是农业专家系统面向实际应用的必由之路谢谢!