模糊系统是模糊集合论和模糊逻辑的具体应用,它模拟人脑思维决策的能力,特别适用于数字模型难以精确表示的不确定系统。医学决策系统中的许多信息都是不确定的,例如心电信号中的大量特片信息,适合用模糊推理的方法进行处理。笔者的实验室采用模糊逻辑识别室性早博,效果较好。
笔者在基于8051的心电模块中移植上述算法,实现室性早博检测。在模糊单片机上进行模糊控制或推理非常方便。在数字单片机上实现,关键是怎样存储表达隶属度函数和模糊规则,以及怎样实现推理。
1 隶属度函数、模糊规则和模糊推理方法
使用RR间期、R波宽度和面积、T波的面积和峰值这五个形态参数描述一个QRS波。室性早博的典型形态特片表现为RR间期较小,R波宽度大、面积大,T波宽度大、峰值大。经过统计和实验确定的隶属度函数如图1所示。
图1中横轴表示论域,纵轴表示隶属度。每个输入语言变量定义小(S)、中(M)、大(L)、特大(XL)四个语言变量值。隶属度函数为三角形或半梯形。
模糊规则共有32条,部分规则如表1所示。其中17条判决“是PVC”,15条判决“可能是PVC”,--表示不考虑该参数的影响。
表1 模糊规则
RR间期 | R波面积 | R波的宽度 | T波面积 | T波峰值 | 结论 |
XL | XL | -- | -- | -- | 是PVC |
XL | -- | XL | -- | -- | 是PVC |
M | L | XL | XL | L | 是PVC |
M | L | L | XL | L | 是PVC |
… | |||||
L | -- | -- | XL | -- | 可能是PVC |
-- | XL | XL | XL | L | 可能是PVC |
M | -- | -- | XL | L | 可能是PVC |
L | S | M | -- | M | 可能是PVC |
2 强度转移法在单片机8051上的实现
2.1 隶属度函数的存放
由于数字单片机只能存储和处理数字信息,且单片机的内存容量有限,如果要对系统输入输出论域的所有隶属函数的连续曲线进行存储,是根本不可能的。对于三角形隶属函数,采用三点法,存储三角形的三个顶点;对于两边的半梯形,也存储腰和顶的三点。隶属度函数存放在ROM中,如表2所示(仅列出RR,其余类推)。
表2 隶属度函数存放示意图
地 址 | 隶属度函数 | 模糊值 | 模糊变量 | ||
1C00H | 0.0 | 0.8 | 1.0 | S | RR |
1C03H | 0.8 | 1.0 | 1.4 | M | |
1C06H | 1.0 | 1.4 | 2.5 | L | |
1C09H | 1.4 | 2.5 | 3.0 | XL |
提取的特片参数是精确值,将它们与隶属函数进行比较组合,求出相应的模糊输入量。隶属度范围为0~1,在8位机上可表示为00H~FFH。对本系统而言,每个精确输入值最多只对应两个模糊输入量大于零,其余的模糊输入量则为零。例如:假设RR=1.1,从表2可知它落在中(M)和大(L)两个区间上,因此对于中(M)和大(L)的隶属度为:
μm(1.1)=(1.4-11.1)/(1.4-1.0)×FFH=BFH
μl(1.1)=(1.1-1.0)/(1.4-1.0)×FFH=3FH
在RAM中开辟一块区域,存放各模糊输入量,如表3所示。
表3 模糊输入量存放示意图
地 址 | 隶属度 | 模糊值 | 模糊变量 |
D0H | 00H | S | RR |
D1H | BFH | M | |
D2H | 3FH | L | |
D3H | 00H | XL |
模糊规则表示为:IF A and B and C and D and E THEN Y(or Z)
其中“IF”后紧接着的词称前件,中“THEN”后面的词称后件。首先将输入的模糊值S、M、L、XL分别与数字0、1、2、3相对应,即:
RR、RA、RW、TA、TH:S=0,M=1,L=2,XL=3
每条规则用三字节表示。第一字节高四位表示第一前件的模糊值,低四位表示第二前件的模糊值;第二字节高四位表示第三前件,低四位第四前件;第三字节高四位表示第五前件,低四位表示后件。其中,F表示不考虑该前件,A表示“是PVC”,B表示“可能是PVC”。以第一条规则(存放在ROM中)为例,如表4。
表4 模糊规则存放示意图
地 址 | 数 据 |
意 义 |
1D00H | 33H | 第一条规则第一前件,第二前件 |
1D01H | FFH | 第一条规则第三、第四前件不考虑 |
1D02H | FAH | 第一条规则第五前件不考虑,后件为“是” |
对于一组模糊输入,遍边每一条模糊规则。取第一条规则第一前件(3H)作为地址偏移量,加上模糊输入RR在RAM中存放的首地址(40H),则可从RAM内RR存放区域中查找出XL的隶属度A1;取第一条规则第二前件(3H)作为地址偏移量,加上模糊输入RA在RAM中存放的首地址(44H),则可从RAM内存放区域中查找出XL的隶属度B1:依此类推着隶属度C1、D1、E1。根据强度转移法,取A1、B1、C1、D1、E1中最小值作为该规则后件所取的语言变量“是PVC”的隶属度Y1。当所有规则都遍历后得到:“是PVC”的属度Y1 Y2~Ym,“可能是PVC”的隶属度Z1 Z2~Zn。取Y1 Y2~Y的最大值作为“是PVC”的隶属度Y,取Z1 Z2~Zn的最大值作为“可能是PVC”的隶属度Z。如果Y<7FH且Z<7FH,则输出“正常”;如果Y>Z,输出“是PVC”;如果Z>Y,输出“可能是PVC”。
本文讨论了在数字单片机中进行模糊推理的方法,实现在心电监护模块中用模逻辑检测室性早博,使心电监护模块功能得到扩展。室性早博检测结果和心电波形数据一起传给上位机,进行心律失常的进一步分析。