2024电工杯B题:大学生平衡膳食食谱的优化设计及评价
问题重述
大学时代是学知识长身体的重要阶段,同时也是良好饮食习惯形成的重要时期。这一特定年龄段的年轻人,不仅身体发育需要有充足的能量和各种营养素,而且繁重的脑力劳动和较大量的体育锻炼也需要消耗大量的能源物质。大学生中饮食结构不合理以及不良的饮食习惯问题比较突出,主要表现在不吃早餐或者早餐吃的马虎、经常性食用外卖及快餐食品、个别学生通过控制进食来减少皮下脂肪的积存而造成营养不良等等。大学阶段掌握一定的营养知识,形成良好的饮食习惯,对于促进生长发育、保证身体健康有重要的意义。1 名男大学生和 1 名女大学生分别记录了各自一日三餐的食物摄入情况,详见附件 1、附件 2,他们想知道自己的膳食营养摄入是否科学合理、还需要做出哪些调整改进。高校食堂提供的一日三餐是大学生膳食营养摄入的主要来源,附件 3 为某高校学生食堂一日三餐主要食物信息统计表。对给定膳食食谱各种营养素的分析评价、平衡膳食食谱的优化设计有明确的基本要求,详见附件 4。请同学们根据附件 4 中的平衡膳食基本准则、能量及各种营养素参考摄入量等各项指标要求,按照“膳食食谱营养评价过程”以及“平衡膳食食谱优化设计原则”,解决以下问题。
问题 1.膳食食谱的营养分析评价及调整
1)对附件 1、附件 2 两份食谱做出全面的膳食营养评价;
2)基于附件 3,对附件 1、附件 2 两份食谱进行较少的调整改进,并且再做出全面的膳食营养评价。
问题 2.基于附件 3 的日平衡膳食食谱的优化设计
1)以蛋白质氨基酸评分最大为目标建立优化模型,分别设计男生和女生的日食谱,并对日食谱进行膳食营养评价;
2)以用餐费用最经济为目标建立优化模型,分别设计男生和女生的日食谱,并对日食谱进行膳食营养评价;
3)兼顾蛋白质氨基酸评分及经济性,建立优化模型,分别设计男生和女生的日食谱,并对日食谱进行膳食营养评价;
4)对 1)—3)得到的日食谱进行比较分析。
问题 3.基于附件 3 的周平衡膳食食谱的优化设计
在问题 2 的基础上,分别以蛋白质氨基酸评分最大、用餐费用最经济、兼顾蛋白质氨基酸评分及经济性为目标,建立优化模型,设计男生和女生的周食谱(周一—周日),并进行评价及比较分析。
问题 4.针对大学生饮食结构及习惯,写一份健康饮食、平衡膳食的倡议书。
解题思路
首先我们需要获得《中国食物成分表》这本资料的数据,以查询相关食物蛋白质、脂肪、碳水化合物占比,查找到的相关资料我们以xls文件存储。因为整个赛题主要还是围绕如何做出全面的膳食营养评价来解决问题的,基于此文件和四个附件,我们首先需要定量的确定全面的膳食营养评价标准。
全面的膳食营养评价有如下要求:
1、 日食谱种类大于12,周食谱种类大于25.
2、 每日能量实际摄入量与目标摄入量相差在±10%之内。
大学生每日的能量摄入目标为:
女生1900kcal/d,男生2400kcal/d。
三餐能量分配占总能量的百分比(即餐次比)参考值为:
早餐30%,中餐、晚餐各30%—40%
3、 产能营养素占总能量百分比尽量满足蛋白质10%-15%、脂肪20%-30%、碳水化合物50%-65%。
下表记录了每类营养素每克含有多少kcal。
针对问题一
我们首先对获得是中国食物成分表进行了一些数据分析:
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
plt.rcParams['font.sans-serif'] = ['SimHei'] # 设置中文字体为SimHei
plt.rcParams['axes.unicode_minus'] = False # 解决负号'-'显示为方块的问题
# 读取Excel文件
df = pd.read_excel('中国食品成分表3.xlsx')# 为了简化示例,我们只选择食物名、能量、蛋白质、脂肪和碳水化合物列
df_selected = df[['食物名', '能量', '蛋白质', '脂肪', '碳水化物']].head(50)# 绘制食物名与能量的关系
plt.figure(figsize=(10, 6))
plot = sns.barplot(x='食物名', y='能量', data=df_selected)
plot.set_xticklabels(plot.get_xticklabels(), rotation=90)
plt.title('食物名与能量的关系')
plt.xlabel('食物名')
plt.ylabel('能量(千卡)')
plt.show()
plt.show()
针对问题二
解题思路可以分为以下几个步骤:
问题二要求基于附件3的食物信息,设计男生和女生的日平衡膳食食谱,并进行营养评价。优化的目标包括蛋白质氨基酸评分最大化、用餐费用最经济化以及兼顾两者。
在此之前,我们根据赛题的数据进行一些数据预处理:
根据附件3,整理出食堂提供的食物种类、营养成分(特别是蛋白质和氨基酸含量)、价格等信息。确定男生和女生的每日营养素推荐摄入量,特别是蛋白质和氨基酸的需求量。
然后我们可以利用遗传算法、多目标优化算法建立优化模型:
蛋白质氨基酸评分最大化:建立一个目标函数,该函数最大化蛋白质氨基酸的摄入量,同时满足每日总能量和营养素的推荐摄入量。
用餐费用最经济:建立另一个目标函数,该函数最小化总用餐费用,同时保证蛋白质氨基酸评分和营养素摄入量不低于推荐标准。
兼顾蛋白质氨基酸评分及经济性:建立一个多目标优化模型,同时考虑蛋白质氨基酸评分和用餐费用。
针对问题三
我们在问题二的基础上,进一步设计男生和女生的周平衡膳食食谱,并进行评价及比较分析。
我们可以根据附件3,收集一周内每天的食物种类、营养成分、价格等信息。
确定男生和女生一周的营养素推荐摄入量。
针对三个不同的目标(蛋白质氨基酸评分最大化、用餐费用最经济化、兼顾蛋白质氨基酸评分及经济性),分别建立优化模型。
考虑周期性因素,周食谱设计需要考虑食物多样性和营养均衡性,避免连续几天重复相同的食物。
根据问题特性,随机森林对问题进行求解,对于多目标优化问题,我们可以考虑多目标粒子群优化(MOPSO)方法来求解。
针对问题四
我们写一份健康饮食、平衡膳食的倡议书。
代码获取方式
思路文档和详细代码,购买的小伙伴可以加群(953799264)咨询讨论,我们将为你详细解答:
http://app.niucodata.com/mianbaoduo/recommend.php?id=60750http://app.niucodata.com/mianbaoduo/recommend.php?id=60750更新日志5-25:目前已经更新第一二问的代码和具体思路,附带B站视频讲解:
2024电工杯B题0基础赛题及代码快速讲解_哔哩哔哩_bilibili电工杯B代码:https://mbd.pub/o/bread/ZpaVlJ1t电工杯B成品:https://mbd.pub/o/bread/ZpaVlJ1w, 视频播放量 351、弹幕量 0、点赞数 10、投硬币枚数 12、收藏人数 8、转发人数 4, 视频作者 white学长努力中, 作者简介 建模美赛M奖,国赛二等奖,交流可加qq:1096696566,相关视频:2024电工杯B题第一问所有免费代码+思路+文档。,2024电工杯B题保姆级参考思路+模型解析!含第1~3问评价模型+优化模型构建和模型选择等,2024电工杯B题食物成分表真实数据搜集及第一问代码详解!,电工杯A题代码展示,2024电工杯A题:建立多阶段分层优化模型,2024电工杯数学建模挑选题建议及A题B题详细思路!,2024电工杯A题第1~3问可运行代码+结果展示!含完整代码+建模流程+结果分析等!,2024电工杯B题建立:食谱TOPSIS综合评价与优化模型,2024电工杯优秀论文模板免费领取,格式已调好,直接用!全部免费!,电工杯A题思路代码全解|专业人士申请出战电工杯A题!电工杯解题代码保姆级教程https://www.bilibili.com/video/BV1Un4y1d72r/我们团队已经完善了成品论文(为防止重复,限量销售,售完即止),欢迎咨询:2021653275
http://app.niucodata.com/mianbaoduo/recommend.php?id=60751http://app.niucodata.com/mianbaoduo/recommend.php?id=60751
相关文章:

2024电工杯B题:大学生平衡膳食食谱的优化设计及评价
问题重述 大学时代是学知识长身体的重要阶段,同时也是良好饮食习惯形成的重要时期。这一特定年龄段的年轻人,不仅身体发育需要有充足的能量和各种营养素,而且繁重的脑力劳动和较大量的体育锻炼也需要消耗大量的能源物质。大学生中饮食结构不…...

齐护K210系列教程(三十二)_在线模型训练
在线模型训练 概念理解准备工作1 采集图像1.1 图像要求1.2 使用K210采集图片 2 标注图像3 打包数据集4 上传数据4.1创建项目4.1.1图像分类创建项目4.1.2图像检测创建项目 4.2上传数据4.2.1分类检测上传数据4.2.2图像检测上传数据 5 训练模型6 部署模型以及测试7 测试效果7.1图像…...

碌时刻必备!微信自动回复让你告别消息堆积
在忙碌的时候,我们往往会面临消息堆积如山的情况。无法及时回复消息不仅容易造成交流障碍,还可能错过重要的机会。 但是现在,有一个神奇的工具——个微管理系统,可以帮助我们轻松应对这个问题 ,实现微信自动回复。 首…...

【ARM 裸机】按键输入
本节学习按键输入,先拷贝上一节工程文件, 1、驱动编写 新建 key 的 .h 和 .c 文件; 再查看一下硬件原理图如下; 由此可知,KEY0 按键接在 UART1_CTS 引脚上,默认情况下为高电平,按键按下为…...

站在ESG“20+”新起点上,看中国ESG先锋探索力量
全链减碳、建设绿色工厂、打造零碳产品、守护生物多样性、向受灾群众捐助……不知你是否察觉,自“双碳”目标提出以来,一股“可持续发展热潮”正覆盖各行各业,并且渗透到我们衣食住行的方方面面。在资本市场,ESG投资热潮更是席卷全…...

【CTF Web】CTFShow web4 Writeup(SQL注入+PHP+字符型注入)
web4 1 管理员阿呆又失败了,这次一定要堵住漏洞 解法 注意到: <!-- flag in id 1000 -->拦截很多种字符,连 select 也不给用了。 if(preg_match("/or|\-|\\\|\/|\\*|\<|\>|\!|x|hex|\(|\)|\|select/i",$id)){die(&q…...

软件设计师备考 | 案例专题之数据库设计 概念与例题
相关概念 关注上图中的两个部分: 概念结构设计 设计E-R图,也即实体-联系图。 工作步骤:选择局部应用、逐一设计分E-R图、E-R图合并。进行合并时,它们之间存在的冲突主要有以下3类: 属性冲突。同一属性可能会存在于…...

【全网最全】2024电工杯数学建模A题成品论文+前三题完整解答matlab+py代码等(后续会更新成品论文)
您的点赞收藏是我继续更新的最大动力! 一定要点击如下的卡片链接,那是获取资料的入口! 【全网最全】2024电工杯数学建模A题成品论文前三题完整解答matlabpy代码等(后续会更新成品论文)「首先来看看目前已有的资料&am…...

基于.net开发的博客系统
基于.net开发可以批量上传md文件生成文章的博客系统 .NET 个人博客 基于.net开发的博客系统 个人博客系统,采用.net core微服务技术搭建,采用传统的MVC模式,使用EF core来对mysql数据库(sqlite数据库)进行CRUD操作项目 为什么要自己开发博客…...

python给图片加上图片水印
python给图片加上图片水印 作用效果代码 作用 给图片加上图片水印图片水印的透明度,位置可自定义 效果 原始图片: 水印图片: 添加水印后的图片: 代码 from PIL import Image, ImageDraw, ImageFontdef add_watermark(in…...
Redis实现MQ
MQ的提出 上游发出请求后阻塞等待下游给到反馈,否则整个流程将一直阻塞。 提出mq之后:即有producer mq consumer 三者 MQ的特点 异步解耦 在有了 mq 后,producer 不需要过分关心 consumer 的身份信息,只需要把消息按照指定的协议…...

【Linux】进程终止与进程等待
目录 进程终止 errno exit和_exit 进程等待 wait和waitpid 宏:WIFEXITED 非阻塞等待 进程终止 下面要谈的一个话题就是进程终止,就是说一个进程退出了,可能有三种情况 1.进程代码执行完,结果是正确的 2.进程代码执行完&…...

数据结构_链式二叉树(Chained binary tree)基础
✨✨所属专栏:数据结构✨✨ ✨✨作者主页:嶔某✨✨ 二叉树的遍历 前序、中序以及后序遍历 学习二叉树结构,最简单的方式就是遍历。所谓二叉树遍历(Traversal)是按照某种特定的规则,依次对二叉树中的结点进行相应的操作ÿ…...
python梯度下降法求解三元线性回归系数,并绘制结果
import numpy as np import matplotlib.pyplot as plt # 生成随机数据 np.random.seed(0) X1 2 * np.random.rand(100, 1) X2 3 * np.random.rand(100, 1) X3 4 * np.random.rand(100, 1) y 4 3 * X1 5 * X2 2 * X3 np.random.randn(100, 1) # 合并特征 X_b np.hsta…...

Linux基础(五):常用基本命令
从本节开始,我们正式进入Linux的学习,通过前面的了解,我们知道我们要以命令的形式使用操作系统(使用操作系统提供的各类命令,以获得字符反馈的形式去使用操作系统。),因此,我们是很有…...

原始字面常量(C++11)
原始字面常量(C11) 文章目录 原始字面常量(C11)前言一、原始字面量二、代码示例总结 前言 字面量一般是指数值(12、454等)和字符串(“Hw”、“h\t”),但是有时候我们想表…...
C++|设计模式(〇)|设计模式的六大原则
这里文章只做简要描述,作为扫盲 在软件开发过程中,遵循一定的设计原则可以帮助开发者创建更加灵活、可维护和可扩展的系统。设计模式的六大原则是面向对象设计的核心理念,本文将详细介绍这些原则,并结合实例说明它们的重要性和应用…...

【排序算法】——归并排序(递归与非递归)含动图
制作不易,三连支持一下吧!!! 文章目录 前言一.归并排序递归方法实现二.归并排序非递归方法实现 前言 这篇博客我们将介绍归并排序的原理和实现过程。 一、归并排序递归方法实现 基本思想: 归并排序(MERGE-…...
Mysql自增id、uuid、雪花算法id的比较
MySQL自增id: 优点: 1.简单易用 MySQL自增id 由数据库自动生成。 2.效率高 自增id是按顺序递增的,可以提高插入和查询的效率。 3.索引效率高 自增id可以作为主键或索引列,提高查询效率。 缺点: 1.不适用于分布式系统 在分布式…...

【会议征稿,IEEE出版】第九届信息科学、计算机技术与交通运输国际学术会议(ISCTT 2024,6月28-30)
第九届信息科学、计算机技术与交通运输国际学术会议(ISCTT 2024)将于2024年6月28-30日在中国绵阳举行。 ISCTT 2024将围绕 “信息科学”、"计算机技术”、“交通运输” 等最新研究领域,为来自国内外高等院校、科学研究所、企事业单位的专…...

idea大量爆红问题解决
问题描述 在学习和工作中,idea是程序员不可缺少的一个工具,但是突然在有些时候就会出现大量爆红的问题,发现无法跳转,无论是关机重启或者是替换root都无法解决 就是如上所展示的问题,但是程序依然可以启动。 问题解决…...
内存分配函数malloc kmalloc vmalloc
内存分配函数malloc kmalloc vmalloc malloc实现步骤: 1)请求大小调整:首先,malloc 需要调整用户请求的大小,以适应内部数据结构(例如,可能需要存储额外的元数据)。通常,这包括对齐调整,确保分配的内存地址满足特定硬件要求(如对齐到8字节或16字节边界)。 2)空闲…...

C++实现分布式网络通信框架RPC(3)--rpc调用端
目录 一、前言 二、UserServiceRpc_Stub 三、 CallMethod方法的重写 头文件 实现 四、rpc调用端的调用 实现 五、 google::protobuf::RpcController *controller 头文件 实现 六、总结 一、前言 在前边的文章中,我们已经大致实现了rpc服务端的各项功能代…...

Linux 文件类型,目录与路径,文件与目录管理
文件类型 后面的字符表示文件类型标志 普通文件:-(纯文本文件,二进制文件,数据格式文件) 如文本文件、图片、程序文件等。 目录文件:d(directory) 用来存放其他文件或子目录。 设备…...
Oracle查询表空间大小
1 查询数据库中所有的表空间以及表空间所占空间的大小 SELECTtablespace_name,sum( bytes ) / 1024 / 1024 FROMdba_data_files GROUP BYtablespace_name; 2 Oracle查询表空间大小及每个表所占空间的大小 SELECTtablespace_name,file_id,file_name,round( bytes / ( 1024 …...

Linux相关概念和易错知识点(42)(TCP的连接管理、可靠性、面临复杂网络的处理)
目录 1.TCP的连接管理机制(1)三次握手①握手过程②对握手过程的理解 (2)四次挥手(3)握手和挥手的触发(4)状态切换①挥手过程中状态的切换②握手过程中状态的切换 2.TCP的可靠性&…...

CentOS下的分布式内存计算Spark环境部署
一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架,相比 MapReduce 具有以下核心优势: 内存计算:数据可常驻内存,迭代计算性能提升 10-100 倍(文档段落:3-79…...

Cinnamon修改面板小工具图标
Cinnamon开始菜单-CSDN博客 设置模块都是做好的,比GNOME简单得多! 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...
Swagger和OpenApi的前世今生
Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章,二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑: 🔄 一、起源与初创期:Swagger的诞生(2010-2014) 核心…...

3-11单元格区域边界定位(End属性)学习笔记
返回一个Range 对象,只读。该对象代表包含源区域的区域上端下端左端右端的最后一个单元格。等同于按键 End 向上键(End(xlUp))、End向下键(End(xlDown))、End向左键(End(xlToLeft)End向右键(End(xlToRight)) 注意:它移动的位置必须是相连的有内容的单元格…...