符号主义:专家系统与专家控制

Views: --

对应 PPT:第二讲《专家系统》 这是「给控制器装智能」的第一条、也是最古老最直观的路线:把人类专家的经验写成规则,让机器照着规则推理


1. 历史定位:符号主义

专家系统是符号主义学派的代表作。符号主义相信:智能可以用符号、规则、逻辑显式地表达出来。上世纪 80 年代 AI「第二次崛起」的三件标志性事件中,第一件就是专家系统(代表人物 Edward Feigenbaum,「专家系统之父」,1994 年图灵奖);另外两件——Hopfield 网络(1982)和 BP 算法(1986)——是连接主义的伏笔(第 3 篇展开)。

AI 关键历史节点(背景时间线):

1950 图灵《计算与智能》 → 1956 达特茅斯会议 → 1957 感知机
  → 1974 第一次低谷 → 1980 XCON → 1982 Hopfield → 1987 第二次低谷
  → 1997 深蓝 → 2006 Hinton 深度学习 → 2011 Watson → 2016 AlphaGo

2. 核心思想:把经验写成规则

一句话:专家系统 = 把专家经验写成 IF-THEN 规则 + 一个不知疲倦地循环匹配规则的推理机。

以自动驾驶为例,规则本质上就是「人类驾驶经验的形式化」:

规则1: IF 前方检测到红灯       THEN 减速并停车
规则2: IF 前方车距 < 安全距离   THEN 降低车速
规则3: IF 行人进入车道         THEN 紧急制动

工作流程(正向推理):环境感知 → 形成事实 → 匹配规则 → 产生控制决策。扫地机器人的推理机本质就是个无限循环:

while Robot_is_Running:
    front = read_sensor("Front")
    left  = read_sensor("Left")
    if front == CLEAR:
        execute_action("前进")
    elif front == BLOCKED and left == CLEAR:
        execute_action("左转")
    else:
        execute_action("后退并调头")

关键认识:专家系统的行为完全由规则库决定——规则没覆盖到的情况,它就懵了。这是后面「衰落」的伏笔。

3. 结构:知识库 + 推理机

专家系统主要由两大件构成:

  • 知识库(Knowledge Base):存知识。包含三类——基于专家经验的判断性规则、用于推理的控制性规则、说明问题状态的数据
  • 推理机(Inference Engine):用知识库做推理得出结论的「思维机构」。

发展三阶段:初创期(1965–1971,DENDRAL 化学分子结构、MACSYMA 数学)、成熟期(1972–1977,MYCIN 血液感染诊断、HEARSAY 语音)、发展期(1978 至今)。

4. 三种推理方式

  • 正向推理:从已知条件出发往前推得到结论(数据驱动)。扫地机器人是正向推理。
  • 反向推理:先提出假设结论,再找支持证据;证据存在则假设成立(目标驱动)。MYCIN 是反向推理。
  • 双向推理:用正向推理提出假设,再用反向推理证实。

5. 知识表示与确定性因子 CF

知识表示方法有产生式规则(最流行)、框架、语义网络、过程。产生式规则的标准形式:

IF E THEN H WITH CF(E,H)

E 是前提(证据),H 是结论(假设),CF 是规则强度。

确定性因子 CF(Certainty Factor) 是专家系统的精髓之一。现实中专家知识往往不是绝对确定的(医学诊断、机器人感知),CF 用来量化这种可信度:

1CF(E,H)1-1 \le CF(E,H) \le 1

CF=1CF = 1 完全确定,CF=0CF = 0 不确定,CF=1CF = -1 完全否定。例:IF 病人持续高烧 THEN 可能细菌感染,可信度约 70%,即 CF=0.7CF = 0.7CF 让专家系统能处理不确定知识——这是它比纯逻辑系统强的地方,也是 MYCIN 的首创贡献。

6. 从「专家系统」到「专家控制」

K. J. Åström(瑞典)1983 年把专家系统引入控制领域,1986 年提出「专家控制(Expert Control)」。形象地说——在传统控制基础上「加入」一个富有经验的控制工程师。

专家控制 vs 专家系统(关键区别,常考):

维度专家系统专家控制
任务辅助用户决策独立、实时的自动决策
工作方式离线在线(需在线获取反馈)
可靠性 / 抗干扰一般要求更高

一句话记忆:专家系统是「顾问」,专家控制是「司机」——顾问可以慢慢想,司机必须实时闭环。

按作用分两类:直接型专家控制器(直接取代常规控制器,模拟「操作工人」,专家 PID 属此类)和间接型专家控制器(与常规控制器结合做高层决策,模拟「控制工程师」,又分优化型 / 适应型 / 协调型 / 组织型)。

7. 专家 PID 控制(重点)

思想:基于受控对象和控制规律的各种知识,无需精确模型,用专家经验来设计 / 整定 PID 参数。它是一种直接型专家控制器

7.1 先把 PID 彻底讲清楚

控制问题就是让某个量(车速、温度、位置)达到目标。定义误差 e=e = 目标值 - 当前值,e(k)e(k) 是第 kk 个采样时刻的误差。控制器要根据误差算出控制量 uu(油门、电压、阀门开度),把误差压到 0。PID 用三个视角看误差:

  • P 比例:误差现在多大,大就使劲。像「离目标还远,踩深油门」。
  • I 积分:误差累计了多久,专治「持续的小误差」(如上坡总差 2 km/h 到不了目标)。累加历史误差、持续加码直到误差归零,消除稳态误差
  • D 微分:误差变化多快,预测性地防冲过头。像「快到目标了提前收油」。

连续时间形式:

u(t)=kpe(t)+ki0te(τ)dτ+kdde(t)dtu(t) = k_p\,e(t) + k_i\int_0^t e(\tau)\,d\tau + k_d\frac{de(t)}{dt}

7.2 数字化:位置式与增量式

计算机每隔采样周期算一次,把积分换成求和、微分换成差分,得到位置式 PID

u(k)=kpe(k)+kij=0ke(j)+kd[e(k)e(k1)]u(k) = k_p\,e(k) + k_i\sum_{j=0}^{k} e(j) + k_d\,[e(k)-e(k-1)]

位置式的麻烦:要存从头到现在所有误差做累加,积分项容易累成巨大值(积分饱和)。

增量式的巧思:不算「uu 该是多少」,只算「这一步 uu 要增减多少」,即 Δu(k)=u(k)u(k1)\Delta u(k)=u(k)-u(k-1)。把 u(k)u(k)u(k1)u(k-1) 两式相减,三项各自变成:

  • P 项 → kp[e(k)e(k1)]k_p\,[e(k)-e(k-1)]
  • I 项 → kie(k)k_i\,e(k)(累加之差只剩最新一项,积分长尾巴消失)
  • D 项 → kd[e(k)2e(k1)+e(k2)]k_d\,[e(k)-2e(k-1)+e(k-2)]

合起来:

Δu(k)=kp[e(k)e(k1)]+kie(k)+kd[e(k)2e(k1)+e(k2)]\Delta u(k) = k_p[e(k)-e(k-1)] + k_i\,e(k) + k_d[e(k)-2e(k-1)+e(k-2)]

u(k)=u(k1)+Δu(k)u(k) = u(k-1) + \Delta u(k)

每一项现在读作:kp[e(k)e(k1)]k_p[e(k)-e(k-1)] 是误差这一步变化了多少(一阶差分);kie(k)k_i\,e(k)当前误差本身kd[e(k)2e(k1)+e(k2)]k_d[e(k)-2e(k-1)+e(k-2)] 是误差的二阶差分(误差曲线的弯曲 / 加速度)。

增量式三大好处:① 只需最近 3 个误差,无积分饱和;② 输出是增量,适合阀门 / 步进电机这类「原位微调」的执行器,手自动切换冲击小;③ 单次误算只影响一步,安全。

7.3 专家 PID 的 5 种情况

专家 PID 观察典型二阶系统阶跃响应的误差曲线,按误差大小与变化趋势分 5 种情况切换控制策略(设阈值 M1>M2>0M_1 > M_2 > 0,极小误差界 ε\varepsilon)。记 Δe(k)=e(k)e(k1)\Delta e(k)=e(k)-e(k-1)

  1. 误差极大e(k)>M1|e(k)| > M_1。不管趋势,输出取最大 / 最小(开环 bang-bang),以最快速度把误差拉回。
  2. 误差在恶化e(k)Δe(k)>0e(k)\,\Delta e(k) > 0(误差正朝绝对值增大方向走)。若 e(k)M2|e(k)| \ge M_2强控制,增量乘放大系数 k1>1k_1>1;若 e(k)<M2|e(k)| < M_2一般控制,用标准增量 PID。
  3. 误差在好转e(k)Δe(k)<0e(k)\,\Delta e(k) < 0Δe(k)Δe(k1)>0\Delta e(k)\,\Delta e(k-1) > 0保持输出不变 u(k)=u(k1)u(k)=u(k-1),别去干扰这个好趋势。
  4. 误差处于极值(拐点)e(k)Δe(k)<0e(k)\,\Delta e(k) < 0Δe(k)Δe(k1)<0\Delta e(k)\,\Delta e(k-1) < 0。若 e(k)M2|e(k)| \ge M_2 → 较强控制 Δu(k)=k1kpem(k)\Delta u(k) = k_1 k_p\, e_m(k);若 e(k)<M2|e(k)| < M_2 → 较弱控制 Δu(k)=k2kpem(k)\Delta u(k) = k_2 k_p\, e_m(k)k2<1k_2 < 1em(k)e_m(k) 为误差极值)。
  5. 误差极小e(k)ε|e(k)| \le \varepsilon。加入积分作用,消除稳态误差。

核心直觉:误差大→猛踩(甚至开环全力),误差在变好→别乱动,到极值→适度修正,误差很小→用积分抹平静差。这正是一个老司机的「手感」,被翻译成了 5 条规则。

8. 四大经典案例

系统团队 / 年代领域亮点
XCONCMU / 1980DEC 计算机配置第一个深度商用成功;正向推理;约 1 万条规则;准确率 >95%;年省约 4000 万美元
MYCIN斯坦福 / 1970s血液感染诊断首创确定性因子 CF反向推理;首次实现「知识库与推理机分离」;因法律 / 伦理未临床
PROSPECTOR斯坦福研究所地质探矿概率推理;1980 发现钼矿,价值约 1 亿美元;AI 首次在非学术领域产生巨大直接经济效益

工业案例 LINKMAN(英国蓝圈水泥,1980s):把老师傅「看火」经验提成规则,如 IF 烧成带温度下降 AND 尾气氧含量偏高 THEN 增加煤粉进给量,是「专家系统 + 自动控制」结合最成功的早期工业案例。

MYCIN 的故事很有教益:技术成功 ≠ 能落地——它输在了「误诊责任归属」这类社会 / 伦理问题上(呼应第 7 篇安全与伦理)。

9. 反思:专家系统为什么「退场」

三个根本困境:

  1. 知识获取困境:专家的隐性经验(直觉、手感)「只可意会,不可言传」,转成严谨的 IF-THEN 极其困难。
  2. 缺乏泛化能力:规则库没覆盖的情况就不会处理,不能举一反三
  3. 难扩充维护:规则从几十条涨到数万条,新规则极易与旧规则逻辑冲突

2006 年 Hinton 开辟深度学习后,AI 主流范式从「人工编写规则」转向「让机器从数据自动学规律」——这正是后面几篇的故事。但专家系统没有消失:它在自动驾驶底层安全策略、医疗核心诊断等高安全领域作为「安全底线」与深度学习混合使用,即神经符号系统(Neuro-Symbolic)

承上启下:那个「知识获取困境」——专家的手感很难写成规则——是符号主义的命门。下一篇模糊逻辑先缓解一步(把「非黑即白」变成「连续隶属度」),第 3 篇连接主义则彻底换路(不让人写规则,让数据自己学)。

下一篇:模糊逻辑——把「温度有点高就把阀门关小一点」这种模糊话,量化成机器能算的控制律。

评论