基于模糊逻辑的人工胰腺控制
在Simulink中设计了人工胰腺非线性控制系统®使用模糊逻辑。通过在模糊树中组合两个较小的相互连接的模糊系统,设计一个复杂的模糊控制器。自动调优模糊推理系统的隶属函数参数和规则。使用Simulink对模糊控制器、胰岛素泵、一餐产生的葡萄糖和患者血糖变化进行建模。通过模拟不同的用餐场景,验证模糊控制器的有效性。通过自动生成C/ c++代码部署模糊逻辑控制器。
你好,每个人。本视频展示了如何设计一个模糊推理系统树控制器,利用人工胰岛素输注系统来调节I型糖尿病患者的血糖。人工胰岛素输注系统被称为人工胰腺,它有三个主要部分。
血糖监测传感器每5分钟采集一次血糖样本。控制器产生校正胰岛素剂量,以调节血糖水平在正常范围内,即每分升80至100毫克。胰岛素泵将校正剂量的胰岛素注射到患者体内。
这幅图中的蓝线显示,以碳水化合物为基础的饮食,如果没有正确的胰岛素剂量,可能会导致血糖水平非常高的低血糖状况。高糖摄入需要短期作用的高胰岛素剂量,而空腹水平的低糖则需要长期作用的低胰岛素剂量。
此外,当低血糖状态下血糖水平很低时,控制者需要停止胰岛素剂量。这种自然环境特异性胰岛素剂量控制更适合于基于规则的非线性控制,如模糊控制器。
模糊控制器每五分钟启用一个新样本。它使用三种输入——血糖水平、汇率和加速率。该控制器采用两个连通模糊推理系统组成的树形结构,增量增加输入。它还减少了规则的总数。
在没有经验的情况下定义模糊规则是一项困难的任务。另一种选择是使用成本最小化来调优规则。模糊逻辑工具箱提供调谐功能,可调谐参数与成本优化。为了优化规则,从模糊系统中获取可调设置,并更新规则设置以只优化规则结果。
用遗传算法为调优过程创建一个选项集。创建一个成本函数来评估调优过程中生成的每个基于规则的候选规则。首先,成本函数从名义血糖水平计算观察到的血糖的误差。接下来,低于最低葡萄糖水平的负误差设置为高误差值。然后用误差值的均方根来计算代价。接下来运行tunefis函数优化规则。
该血液显示了使用调优规则库的优化结果。现在血糖水平被控制在每分升160毫克以下,在第三餐前接近每分升90毫克。该控制器在每次用餐时产生短效高胰岛素剂量,在禁食期间产生长效减少胰岛素剂量。
通过优化模糊推理系统的隶属函数参数,可以进一步提高控制器的性能。使用模式搜索等局部优化方法,再运行tunefis优化隶属函数参数。
图中显示了调优隶属函数后的优化结果,提高了控制器性能,降低了最小值代价。您现在可以用不同的进餐时间和碳水化合物摄入量来模拟模型,以验证控制器的性能。
例如,将第二餐时间改为360分钟,即一天的第六个小时,并将相应的碳水化合物摄入量改为50克,然后运行模型。第三餐后的最后葡萄糖水平仍然低于每分升100毫克。一旦模型准备好了,就可以生成代码并将其部署到目标设备。演示到此结束。谢谢大家的聆听。
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。