基于动态约束多目标的智能膳食系统
参赛单位:中国地质大学
指导老师:李长河
参赛队员:梁召淮 遆雅琪
作品简介
现有的大众化膳食指导软件虽花样多但同质化严重。他们推荐的食物组合经常出现各营养素未达标、目标设置单一且不科学(如:仅以食物能量为单一指标等)以及未考虑用户需求等问题。究其原因,这些软件对膳食约束条件处理不得当,且评价粗糙模糊,未能从多种营养素的角度去评定食物综合营养。对膳食营养类问题多约束和超多目标特性的认识不全面、对关键环节的粗糙处理,使得已有系统无法给出科学的膳食意见,不能保证人们营养均衡;软件设计的不友好也未能满足人们对个性化膳食指导类软件的诉求。因此,本项目提出了具有自动识别出入库、个性化膳食推荐以及查看录入监测的智能膳食系统。
本系统基于MaixSense R329 嵌入式开发板,使用摄像头作为传感器,结合当前成熟的深度学习技术,通过NPU 硬件芯片加速量化后的MobileNetV2 模型以及MobileFaceNet 模型分别完成对食物的分类以及人脸识别;利用双核ArmA53保证了膳食推荐算法的运行,最后通过IPS 屏以及按键完成板载交互,板载WIFI搭建Web 网页完成移动端交互,解决了当前膳食终端落地的痛点。
算法介绍
对于营养评价模型而言,现有两大类指标HEI和NRF都存在因评价模糊且无法保证食物营养均衡的问题;于约束超多目标优化算法而言,现有对约束多目标优化算法的研究较纯粹的约束处理技术或者多目标优化算法少,已有的算法要么强调可行解,要么设置指标去衡量解的质量,要么挖掘高质量的非可行解。然而强调可行性的算法容易产生早熟现象,保留非可行解的策略可能会导致可行解寥寥,且保证解在可行域边界上的均匀分布依旧被非可行解质量和问题特性掣肘,既能搜索到较多可行解,又能保证其收敛到全局最优,还要在高维空间分布均匀的算法仍有待开发。
基础的多目标优化方法大多在超高维空间中表现不佳,而基础的Kd-tree空间划分和设置参考向量的多目标优化策略在理论上具有解决超高维目标问题的可行性,再结合自适应约束处理框架,理论上能解决膳食营养问题。
功能框图
作品创新
(1)构建了多目标NRF 综合营养评价模型,对主流模型易导致营养摄入不均进行了修正,提出了基于Kd-tree 空间划分的自适应约束多目标优化算法,采用先松弛而后逐渐收紧的策略来应对现有约束处理方法存在的问题,搭建了一款应用上述MaO-NRF 综合营养评价模型和基于Kd-tree 空间划分技术的自适应约束多目标优化算法的膳食营养结构软件系统。
(2)将智能膳食落地为了单独的终端,且由单一功能扩展到了冰箱终端中,在其中加入了以STM32 为主控的下位机包含DHT11 温湿度传感器、继电器等外设,进而实现温度自适应调节、PID 温度控制等功能,进一步体现了智能膳食终端的通用性。
硬件设计
系统采用了MaixSense R329开发板,其CPU 由两个ARM A53 内核构成,主频达1.5GHz,支持64 位代码Arch64 执行状态,同时单个核心功耗不超过0.13W,在满足性能的同时最大程度上降低了功耗。系统的NPU 为ARM 中国自主研发、针对深度学习的周易AIPU,其单核算力最高可达4TOPS,支持广泛的AI 应用例如本文中的分类和识别任务。系统的运存为256MB,存储空间为32GB,满足程序占用,以及数据库的使用。
硬件展示图
软件设计
软件采用Python 以及C++进行开发,Python部分主要负责用户交互以及Web 网页搭建,C++部分负责膳食算法的运行、食物分类以及人脸识别模型的量化推理等。
移动端网页设计
总结
本文通过对智能厨房等场景做了大量调研后,发现在提高用户消费体验以及个性化膳食推荐方面有所欠缺,现存的大众化膳食营养类指导依旧需要形式上的丰富以及质量和效果上的提高。应用软件作为主流的表现形式,其核心存在着营养评价不合理,模型抽象不准确,算法应用不高效的问题。对此,本文将膳食营养结构优化问题抽象为一个多约束多目标优化问题,并构建了一个多目标NRF营养评价模型、提出了一种基于kd-tree 划分的自适应约束多目标演化算法。
在核心算法之上,我们采用MaixSense R329 嵌入式开发板,搭建了一个膳食营养优化系统。该系统采用Mobilenet_V2 模型,对食物进行识别分类,从而确定出食物库中已有的食物储量;该系统能一站式解决用户反复录入信息的繁琐,采用FaceMobileNet 模型对人像识别,使得用户在一次信息录入后便无需二次录入。