开发人工胰腺系统的仿真器和多变量控制算法
作者 : Ali Cinar 博士和 Mudassir M. Rashid 博士,伊利诺伊理工学院
对于患有 1 型糖尿病 (T1DM) 的个体,人工胰腺 (AP) 系统有助于降低直接威胁人类生命和长期健康状况的风险,包括严重的低血糖症、心血管疾病、神经病症和视网膜病。任何 AP 系统的核心都是胰岛素剂量控制算法。大多数控制算法都从连续血糖监测 (CGM) 传感器接收测量值,并向皮下胰岛素输注泵发送剂量需求。但用户还需要手动提供其他信息:用于胰岛素剂量计算的膳食信息,以及在身体活动期间会改变葡萄糖目标值和/或减少胰岛素输注的锻炼信息。
AP 系统虽然在血糖控制方面比人工注射胰岛素更高效,但这些系统确实存在一定的局限性。例如,大多数的 AP 系统控制算法并未考虑到身体活动可能会导致 T1DM 患者的血糖-胰岛素水平呈现显著的非线性动态特征。此外,注入皮下组织的胰岛素可能需要经过约 45 分钟才能到达血流,以达到降低血糖浓度的效果。因此,如果使用的系统仅凭血糖浓度读数作出控制决策,其时效性会大大降低。
伊利诺伊理工学院 (IIT) 的 Cinar 研究小组正在积极为 AP 系统开发高级多变量控制算法来解读生理信号,如心率、皮肤电反应、皮肤温度、血容量脉冲以及加速度计读数,所有这些数据都由可穿戴腕带设备提供。我们的控制算法是在 MATLAB® 中开发的,它们将这些生理信号都考虑了在内,可以帮助检测和评估可能破坏体内血糖平衡的身体活动,从而实现更高效的血糖浓度控制,而无需手动输入任何锻炼信息。最近,我们还使用 MATLAB 开发了多变量血糖-胰岛素-生理变量仿真器 (mGIPsim),该仿真软件可帮助我们小组和其他研究团队加速 AP 系统创新控制算法的开发和评估(图 1)。
实现自适应多变量控制算法
从控制设计的角度来看,人体是一个具有时变参数的高度非线性系统。人体的反应不仅因人而异,而且同一个人在一天中的反应也不一样。因此,调节血糖浓度的简单控制策略已被基于各种模型预测控制的算法所取代。我们在 MATLAB 中实现的模型预测控制策略要有效得多,部分原因是它们能够以递归方式调整模型,处理多变量系统,并采用避免矫枉过正和给药过量所需的约束。我们的预测控制算法根据代价函数和自适应的个性化血糖-胰岛素模型计算最佳控制措施。重要的是,这些算法使用可穿戴设备测得的生理信号,将身体活动也纳入预测。
从架构的角度来讲,我们的控制算法契合 AP 系统,该系统包括若干个同样在 MATLAB 中实现的其他模块(图 2)。这些模块负责执行基本功能,例如预测低血糖和高血糖并发出警告提醒采取措施,对个人的身体活动进行分类(计划内活动和意外活动),检测膳食并估计其碳水化合物含量(可选择提供膳食通知),以及处理设备故障。
多项临床试验表明,我们开发的控制算法表现出色。例如,在一项有 15 名患者参与的试验中,配备我们第一代控制算法的 AP 系统显著延长了血糖浓度保持在正常范围内的时间,并且所有参与研究的受试者都未发生严重的低血糖事件。
这些试验虽然证明了我们方法的有效性和潜力,但它们相当耗时且成本高昂。此外,招募参与者,让他们承诺遵守定期检测时间表,然后进行几天的试验,不仅需要花费大量时间,而且也减慢了我们的研究进度。
开发 mGIPsim 仿真器
Cinar 研究小组认识到,我们可以使用仿真器代替真实的 T1DM 患者来加速 AP 控制算法的开发和测试。但困难在于现有的仿真器缺乏我们的控制算法所需的生理信号,因为它们设计为仅提供血糖浓度和胰岛素信息作为输出。
我们决定使用 MATLAB 构建我们自己的仿真器,该仿真器将提供所需的生理信号,如心率、能量消耗,以及除血糖浓度之外我们的控制器需要的其他生理变量。我们最终开发出 mGIPsim,这是首款设计为评估使用这些额外生理数据的控制器的仿真器。这款仿真器使用了我们开发用来计算血糖浓度和生理变量的动态非线性生理和代谢模型。执行这些计算时,此类模型考虑到了用户通过图形用户界面定义的膳食消耗、胰岛素注射信息和身体活动相关的场景。该仿真器基于一组虚拟患者,这些患者的人口统计资料和 T1D 特征各不相同,它们来自于使用临床数据标识的十多个模型参数。这些参数包括人口统计信息,如年龄、身高、体重和静息心率,以及个体患有糖尿病的年份数和胰岛素基础率。
我们将底层仿真器模型与我们设计用于在 MATLAB 中创建独立应用的用户界面打包在了一起(图 3)。除了用作伊利诺伊理工学院本研阶段课程的教学工具之外,我们还将这款独立的 mGIPsim 应用提供给其他大学的同事进行学术研究。
为了使用该仿真器,研究人员需要先选择一群虚拟受试者(来自一个由 20 个虚拟患者组成的受试者库),然后通过用户界面为受试者指定膳食和锻炼方案。例如,用户可以定义每个虚拟受试者何时吃早餐、午餐、晚餐和小吃,以及每餐摄入的碳水化合物含量。用户还可以定义锻炼活动的时间、持续时间和强度,例如在跑步机上跑步或骑固定式自行车。此外,用户可以指定膳食和锻炼的时间窗,以及膳食和锻炼事件的特征值范围,这样,mGIPsim 便可在这些指定的范围内随机选择这些事件的时间和特征。这项功能对于进行长时间仿真至关重要。基于这些输入信息和虚拟受试者资料,该仿真器随后会生成血糖浓度、能量消耗 (EE) 和其他生理变量的信号,以供在控制算法的测试和评估中使用(图 4)。
图 4. 两幅图比较了 (a) 跑步机锻炼和 (b) 固定式自行车锻炼时的实际 EE 和预测 EE。此类图用于验证仿真器。
移动设备的部署和持续开发
使用 MATLAB 开发算法的一项优势是,它让我们可以在移动设备上部署我们的控制器,以用于真正的多变量自动化胰岛素输送系统。为此,我们使用 MATLAB Coder™ 基于我们的 MATLAB 算法生成 C 代码,然后将该代码与其他 C 模块一起嵌入到 Java® 包装器中,以供在移动设备上执行。在这种设置中,移动设备上运行的控制器可与胰岛素泵、连续血糖监测仪和可穿戴腕带(提供生理数据)进行通信。该设备还可以与云中的应用进行通信,以记录数据并采用机器学习算法来实现特定目的,例如检测或预测可能影响血糖浓度动态特性的患者数据趋势(图 5)。除了这项研究,我们还在积极开展其他几项研究,包括使用生理数据来确定急性心理应激期,因为急性心理应激这种病症也会严重影响患有糖尿病的个体的血糖浓度。
图 5. 人工胰腺系统中的信息流,该系统也称为多变量自动胰岛素输送系统。
2023 年发布