【软考架构】架构风格:针对规则系统体系架构风格,举一个经典案例

基于规则的系统(见图7-16)包括规则集、规则解释器、规则/数据选择器及工作内存

好的,针对你提供的"规则系统体系结构风格"图示,一个最经典和常被引用的案例是专家系统。

经典案例:MYCIN 医疗诊断专家系统

MYCIN 是20世纪70年代在斯坦福大学开发的用于诊断细菌感染性疾病(如脑膜炎和菌血症)并推荐抗生素治疗的专家系统。它完美地体现了规则系统架构的核心思想。

工作原理与规则系统架构的对应关系:

  1. 工作内存:

    • 存储当前的事实集和推理过程中的临时数据。
    • 在MYCIN中,这包括:
      • 患者数据:年龄、性别、体重、过敏史等。
      • 临床症状:发烧、头痛、白细胞计数等。
      • 实验室观测数据:革兰氏染色结果、培养物来源(如血液、脑脊液)等。
      • 推理过程中产生的中间事实:例如,系统推断出的"可能病原体清单"。
  2. 规则集:

    • 包含领域专家的知识,以 "IF-THEN" 规则的形式存储。
    • 在MYCIN中,规则库约有400-500条规则。例如:
      • 规则示例 :
        IF (1)革兰氏染色是阴性
        AND (2)细菌形态是杆状
        AND (3)细菌需氧性为需氧
        THEN 该细菌属于肠杆菌科(可信度0.8)
  3. 规则解释器(推理引擎):

    • 这是系统的"大脑",负责控制整个推理过程。它持续执行 "匹配-选择-执行"循环。
    • 匹配:扫描规则集,找出所有前提条件(IF部分)被工作内存中当前事实满足的规则。这些规则被放入"冲突集"。
    • 选择 :根据某种策略(如优先级、特殊性、最近使用等)从冲突集中选择一条规则来执行。在图示中,这对应着 "被选择的规则"。
    • 执行(触发) :执行被选中规则的THEN部分。这个动作会:
      • 更新工作内存:添加新的事实或修改现有事实(例如,将"大肠杆菌"添加到可能病原体列表中)。
      • 可能触发新的规则,因为工作内存的更新改变了规则匹配的条件。

工作流程简述(以MYCIN诊断为例):

  1. 输入 :医生将患者的临床症状和实验室初步结果输入系统,这些数据被存入工作内存(事实集)。
  2. 推理循环开始 :
    • 规则解释器 扫描规则集,寻找其"IF"部分与工作内存中患者数据相匹配的规则。
    • 它选择一条高优先级的规则,例如,一条关于识别细菌类型的规则。
    • 该规则被执行 ,其结论(例如,"病原体可能是大肠杆菌")作为一个新的事实被添加到工作内存中。
  3. 链式反应 :
    • 这个新事实的加入,使得另一些规则的IF条件得到满足(例如,关于"如何治疗大肠杆菌感染"的规则)。
    • 规则解释器再次进行匹配-选择-执行循环,激活新的规则。
  4. 输出 :这个过程持续进行,直到没有新规则被激活,或者系统得出了最终结论。最终,系统会输出其诊断结果和抗生素用药建议(包括药物名称、剂量和用药依据)。

总结:

MYCIN是规则系统架构的典范。它将专家的知识编码成独立的规则(规则集),通过一个中央推理引擎(规则解释器)对输入的事实(工作内存)进行逻辑推理,最终得出结论。这种架构的优势在于知识表示清晰 (规则易于理解和修改)和推理过程与知识分离,使得系统能够通过增加或修改规则来不断提升性能。

相关推荐
拔剑纵狂歌5 天前
ClickHouse system.query_log 字段详解与排障实践
后端·clickhouse·1024程序员节
比奥利奥还傲.17 天前
哪吒监控面板实战:部署 Dashboard、接入 Agent、钉钉告警,再配置固定公网访问
网络·人工智能·分布式·1024程序员节
默 语19 天前
Java新手入门:从零开始安装JDK并配置环境变量
java·开发语言·python·mysql·group by·1024程序员节·数据去重
学传打活1 个月前
【边打字.边学昆仑正义文化】_进阶篇5 宇宙星系的运转(续3)
微信公众平台·1024程序员节·汉字·昆仑正义文化
学传打活1 个月前
【边打字.边学昆仑正义文化】_进阶篇5 宇宙星系的运转(续1)
微信公众平台·1024程序员节·汉字·昆仑正义文化
fangzhanpeng1682 个月前
快速掌握C#语言基础知识点(1.基础数据类型)
开发语言·c#·1024程序员节
无己心2 个月前
面向多平台 AI 搜索引擎的适配层架构设计
前端·人工智能·搜索引擎·ai·1024程序员节
u0103055272 个月前
AI驱动的安卓UI自动生成功能实现
人工智能·1024程序员节
u0103055272 个月前
长株潭智能体赋能腾讯元器链接共享
1024程序员节
云贝贝贝2 个月前
OceanBase认证体系介绍与备考指南
运维·服务器·oceanbase·1024程序员节