2024年 电工杯 (B题)大学生数学建模挑战赛 | 大学生平衡膳食食谱的优化设计 | 数学建模完整代码解析

news2024/11/20 7:31:21

DeepVisionary 每日深度学习前沿科技推送&顶会论文&数学建模与科技信息前沿资讯分享,与你一起了解前沿科技知识!

本次DeepVisionary带来的是电工杯的详细解读:

完整内容可以在文章末尾全文免费领取&阅读!
问题1:膳食食谱的营养分析评价及调整
数学方法:线性规划模型、营养素评价模型、比较分析
可视化数据图:营养素含量表、营养素摄入量对比图、营养素缺乏情况图

问题2:基于附件3的日平衡膳食食谱的优化设计
数学方法:线性规划模型、经济性评价模型、多目标优化模型
可视化数据图:蛋白质氨基酸评分图、用餐费用对比图、营养素含量对比图

问题3:基于附件3的周平衡膳食食谱的优化设计
数学方法:线性规划模型、经济性评价模型、多目标优化模型
可视化数据图:蛋白质氨基酸评分图、用餐费用对比图、营养素含量对比图
在这里插入图片描述

问题一

第一个问题是膳食食谱的营养分析评价及调整。

假设附件1和附件2中的食谱分别为 x 1 x_{1} x1 x 2 x_{2} x2,其中 x 1 i x_{1i} x1i x 2 i x_{2i} x2i表示每种食物的摄入量, i = 1 , 2 , . . . n i=1,2,...n i=1,2,...n,n为总食物种类数目。
假设附件4中给出的营养指标为 d 1 , d 2 , . . . , d m d_{1},d_{2},...,d_{m} d1,d2,...,dm,其中 m m m为营养指标的总数目。
则附件1和附件2的膳食营养评价可表示为:
E ( x 1 ) = [ d 1 ( x 11 + x 12 + . . . + x 1 n ) , d 2 ( x 11 + x 12 + . . . + x 1 n ) , . . . , d m ( x 11 + x 12 + . . . + x 1 n ) ] E(x_{1})=[d_{1}(x_{11}+x_{12}+...+x_{1n}),d_{2}(x_{11}+x_{12}+...+x_{1n}),...,d_{m}(x_{11}+x_{12}+...+x_{1n})] E(x1)=[d1(x11+x12+...+x1n),d2(x11+x12+...+x1n),...,dm(x11+x12+...+x1n)]
E ( x 2 ) = [ d 1 ( x 21 + x 22 + . . . + x 2 n ) , d 2 ( x 21 + x 22 + . . . + x 2 n ) , . . . , d m ( x 21 + x 22 + . . . + x 2 n ) ] E(x_{2})=[d_{1}(x_{21}+x_{22}+...+x_{2n}),d_{2}(x_{21}+x_{22}+...+x_{2n}),...,d_{m}(x_{21}+x_{22}+...+x_{2n})] E(x2)=[d1(x21+x22+...+x2n),d2(x21+x22+...+x2n),...,dm(x21+x22+...+x2n)]
其中, E ( x 1 ) E(x_{1}) E(x1) E ( x 2 ) E(x_{2}) E(x2)分别为附件1和附件2的营养指标向量。
根据附件3,我们可以得到每种食物的营养成分,从而得到每种食物的营养指标向量 N N N,则附件1和附件2的膳食营养评价可以改写为:
E ( x 1 ) = ∑ i = 1 n N i x 1 i E(x_{1})=\sum_{i=1}^nN_{i}x_{1i} E(x1)=i=1nNix1i
E ( x 2 ) = ∑ i = 1 n N i x 2 i E(x_{2})=\sum_{i=1}^nN_{i}x_{2i} E(x2)=i=1nNix2i
为了使得附件1和附件2的膳食营养评价更加科学合理,我们可以通过最小二乘法来调整食物的摄入量,使得 E ( x 1 ) E(x_{1}) E(x1) E ( x 2 ) E(x_{2}) E(x2)分别接近于给定的营养指标向量。
假设调整后的食物摄入量向量为 y 1 y_{1} y1 y 2 y_{2} y2,则调整的目标函数可以表示为:
m i n ∣ ∣ E ( y 1 ) − E ( x 1 ) ∣ ∣ 2 2 + ∣ ∣ E ( y 2 ) − E ( x 2 ) ∣ ∣ 2 2 min||E(y_{1})-E(x_{1})||_{2}^{2}+||E(y_{2})-E(x_{2})||_{2}^{2} min∣∣E(y1)E(x1)22+∣∣E(y2)E(x2)22
其中, ∣ ∣ ⋅ ∣ ∣ 2 ||\cdot||_{2} ∣∣2表示向量的2范数。
通过求解上述优化问题,就可以得到调整后的食物摄入量向量 y 1 y_{1} y1 y 2 y_{2} y2,从而得到调整后的膳食食谱。

首先,对附件1和附件2的食谱进行全面的营养评价,可以计算出每种食物的能量、蛋白质、脂肪、碳水化合物、膳食纤维、维生素和矿物质的摄入量,然后与相应的参考摄入量进行对比,得出每种营养素的摄入量是否达标。同时,还可以计算出每种食物的热量密度,以及每日总的能量摄入量,从而判断是否超过或不足参考摄入量。

其次,根据附件3提供的食堂食物信息统计表,可以对附件1和附件2的食谱进行调整改进。例如,可以增加蔬菜和水果的摄入量,减少高热量、高脂肪的食物的摄入量,从而更好地满足膳食营养的需求。同时,也可以根据每种食物的价格选择更经济实惠的食物,保证在预算范围内营养摄入的均衡。

此外,还可以根据附件4中的平衡膳食基本准则,对食谱进行评价,例如每日吃早餐、合理搭配各类食物、多样化的食物选择等。最后,可以对比附件1和附件2的食谱,分析两者的差异,并提出有针对性的改进建议,以达到更科学合理的膳食营养摄入。

  1. 对附件1、附件2两份食谱做出全面的膳食营养评价:

根据附件4中的平衡膳食基本准则和能量及各种营养素参考摄入量,我们可以得到以下公式:

能量摄入量(千卡)= 基础代谢率(BMR) x 身高(cm) x 体重(kg) x 活动系数

其中,基础代谢率(BMR)= 66 + (13.7 x 体重(kg)) + (5 x 身高(cm)) - (6.8 x 年龄)

根据附件1和附件2中男女大学生的身高、体重和年龄数据,可计算得出基础代谢率(BMR)和能量摄入量。

接下来,根据附件3中提供的一日三餐主要食物信息统计表,我们可以得到每种食物中各种营养素的含量。根据公式:

各种营养素摄入量(克/毫克)= 食物中营养素含量(克/毫克) x 食物摄入量(克/毫升)

我们就可以计算出每日各种营养素的摄入量。

根据附件4中的指标要求,我们可以对比计算出的营养素摄入量与参考摄入量,从而评价食谱是否科学合理。如果与参考摄入量相差较大,就需要做出调整改进。

# 导入所需的库
import pandas as pd
import numpy as np

# 读取附件1和附件2中的数据
df_male = pd.read_excel('附件1.xlsx')
df_female = pd.read_excel('附件2.xlsx')

# 创建函数来计算每种营养素的摄入量
def nutrient_intake(df):
    # 计算能量
    energy = df['能量'].sum()
    # 计算蛋白质
    protein = df['蛋白质'].sum()
    # 计算脂肪
    fat = df['脂肪'].sum()
    # 计算碳水化合物
    carbohydrate = df['碳水化合物'].sum()
    # 计算膳食纤维
    fiber = df['膳食纤维'].sum()
    # 计算维生素A
    vitamin_a = df['维生素A'].sum()
    # 计算维生素C
    vitamin_c = df['维生素C'].sum()
    # 计算维生素E
    vitamin_e = df['维生素E'].sum()
    # 计算钙
    calcium = df['钙'].sum()
    # 计算铁
    iron = df['铁'].sum()
    # 计算镁
    magnesium = df['镁'].sum()
    # 计算钾
    potassium = df['钾'].sum()
    # 计算钠
    sodium = df['钠'].sum()
    # 计算锌
    zinc = df['锌'].sum()
    # 计算铜
    copper = df['铜'].sum()
    # 计算锰
    manganese = df['锰'].sum()
    # 计算硒
    selenium = df['硒'].sum()
    # 计算碘
    iodine = df['碘'].sum()
    
    # 返回每种营养素的摄入量
    return energy, protein, fat, carbohydrate, fiber, vitamin_a, vitamin_c, vitamin_e, calcium, iron, magnesium, potassium, sodium, zinc, copper, manganese, selenium, iodine

# 计算附件1中男大学生的营养素摄入量
male_energy, male_protein, male_fat, male_carbohydrate, male_fiber, male_vitamin_a, male_vitamin_c, male_vitamin_e, male_calcium, male_iron, male_magnesium, male_potassium, male_sodium, male_zinc, male_copper, male_manganese, male_selenium, male_iodine = nutrient_intake(df_male)

# 计算附件2中女大学生的营养素摄入量
female_energy, female_protein, female_fat, female_carbohydrate, female_fiber, female_vitamin_a, female_vitamin_c, female_vitamin_e, female_calcium, female_iron, female_magnesium, female_potassium, female_sodium, female_zinc, female_copper, female_manganese, female_selenium, female_iodine = nutrient_intake(df_female)

# 打印男大学生的营养素摄入量
print("男大学生的营养素摄入量为:")
print("能量:{}千卡".format(male_energy))
print("蛋白质:{}克".format(male_protein))
print("脂肪:{}克".format(male_fat))
print("碳水化合物:{}克".format(male_carbohydrate))
print("膳食纤维:{}克".format(male_fiber))
print("维生素A:{}毫克".format(male_vitamin_a))
print("维生素C:{}毫克".format(male_vitamin_c))
print("维生素E:{}毫克".format(male_vitamin_e))
print("钙:{}毫克".format(male_calcium))
print("铁:{}毫克".format(male_iron))
print("镁:{}毫克".format(male_magnesium))
print("钾:{}毫克".format(male_potassium))
print("钠:{}毫克".format(male_sodium))
print("锌:{}毫克".format(male_zinc))
print("铜:{}毫克".format(male_copper))
print("锰:{}毫克".format(male_manganese))
print("硒:{}毫克".format(male_selenium))
print("碘:{}毫克".format(male_iodine))

# 打印女大学生的营养素摄入量
print("女大学生的营养素摄入量为:")
print("能量:{}千卡".format(female_energy))
print("蛋白质:{}克".format(female_protein))
print("脂肪:{}克".format(female_fat))
print("碳水化合物:{}克".format(female_carbohydrate))
print("膳食纤维:{}克".format(female_fiber))
print("维生素A:{}毫克".format(female_vitamin_a))
print("维生素C:{}毫克".format(female_vitamin_c))
print("维生素E:{}毫克".format(female_vitamin_e))
print("钙:{}毫克".format(female_calcium))
print("铁:{}毫克".format(female_iron))
print("镁:{}毫克".format(female_magnesium))
print("钾:{}毫克".format(female_potassium))
print("钠:{}毫克".format(female_sodium))
print("锌:{}毫克".format(female_zinc))
print("铜:{}毫克".format(female_copper))
print("锰:{}毫克".format(female_manganese))
print("硒:{}毫克".format(female_selenium))
print("碘:{}毫克".format(female_iodine))

# 读取附件3中的数据
df_dining_hall = pd.read_excel('附件3.xlsx')

# 创建函数来计算每种营养素的摄入量
def nutrient_intake_dining_hall(df):
    # 计算能量
    energy = df['能量'].sum()
    # 计算蛋白质
    protein = df['蛋白质'].sum()
    # 计算脂肪
    fat = df['脂肪'].sum()
    # 计算碳水化合物
    carbohydrate = df['碳水化合物'].sum()
    # 计算膳食纤维
    fiber = df['膳食纤维'].sum()
    # 计算维生素A
    vitamin_a = df['维生素A'].sum()
    # 计算维生素C
    vitamin_c = df['维生素C'].sum()
    # 计算维生素E
    vitamin_e = df['维生素E'].sum()
    # 计算钙
    calcium = df['钙'].sum()
    # 计算铁
    iron = df['铁'].sum()
    # 计算镁
    magnesium = df['镁'].sum()
    # 计算钾
    potassium = df['钾'].sum()
    # 计算钠
    sodium = df['钠'].sum()
    # 计算锌
    zinc = df['锌'].sum()
    # 计算铜
    copper = df['铜'].sum()
    # 计算锰
    manganese = df['锰'].sum()
    # 计算硒
    selenium = df['硒'].sum()
    # 计算碘
    iodine = df['碘'].sum()
    
    # 返回每种营养素的摄入量
    return energy, protein, fat, carbohydrate, fiber, vitamin_a, vitamin_c, vitamin_e, calcium, iron, magnesium, potassium, sodium, zinc, copper, manganese, selenium, iodine

# 计算食堂一日三餐的营养素摄入量
dining_hall_energy, dining_hall_protein, dining_hall_fat, dining_hall_carbohydrate, dining_hall_fiber, dining_hall_vitamin_a, dining_hall_vitamin_c, dining_hall_vitamin_e, dining_hall_calcium, dining_hall_iron, dining_hall_magnesium, dining_hall_potassium, dining_hall_sodium, dining_hall_zinc, dining_hall_copper, dining_hall_manganese, dining_hall_selenium, dining_hall_iodine = nutrient_intake_dining_hall(df_dining_hall)

# 打印食堂一日三餐的营养素摄入量
print("食堂一日三餐的营养素摄入量为:")
print("能量:{}千卡".format(dining_hall_energy))
print("蛋白质:{}克".format(dining_hall_protein))
print("脂肪:{}克".format(dining_hall_fat))
print("碳水化合物:{}克".format(dining_hall_carbohydrate))
print("膳食纤维:{}克".format(dining_hall_fiber))
print("维生素A:{}毫克".format(dining_hall_vitamin_a))
print("维生素C:{}毫克".format(dining_hall_vitamin_c))
print("维生素E:{}毫克".format(dining_hall_vitamin_e))
print("钙:{}毫克".format(dining_hall_calcium))
print("铁:{}毫克".format(dining_hall_iron))
print("镁:{}毫克".format(dining_hall_magnesium))
print("钾:{}毫克".format(dining_hall_potassium))
print("钠:{}毫克".format(dining_hall_sodium))
print("锌:{}毫克".format(dining_hall_zinc))
print("铜:{}毫克".format(dining_hall_copper))
print("锰:{}毫克".format(dining_hall_manganese))
print("硒:{}毫克".format(dining_hall_selenium))
print("碘:{}毫克".format(dining_hall_iodine))

# 创建函数来计算每种营养素的百分比
def nutrient_percentage(df, total):
    # 计算能量百分比
    energy_percentage = df['能量'].sum() / total['能量'].sum() * 100
    # 计算蛋白质百分比
    protein_percentage = df['蛋白质'].sum() / total['蛋白质'].sum() * 100
    

在这里插入图片描述

问题二

第二个问题是基于附件3的日平衡膳食食谱的优化设计。

问题2.基于附件3的日平衡膳食食谱的优化设计

1)以蛋白质氨基酸评分最大为目标建立优化模型,分别设计男生和女生的日食谱,并对日食谱进行膳食营养评价;

优化目标:
M a x i m i z e ∑ i ∑ j x i j P i j \begin{equation} Maximize \quad \sum_{i}^{} \sum_{j}^{} x_{ij}P_{ij} \end{equation} MaximizeijxijPij

约束条件:
∑ i ∑ j x i j Q i j ≥ E m i n ∑ i ∑ j x i j Q i j ≤ E m a x ∑ i ∑ j x i j F i j ≥ F m i n ∑ i ∑ j x i j F i j ≤ F m a x ∑ i ∑ j x i j C i j ≤ C m a x x i j ∈ Z + \begin{align} &\sum_{i}^{} \sum_{j}^{} x_{ij}Q_{ij} \geq E_{min} \tag{2-1}\\ &\sum_{i}^{} \sum_{j}^{} x_{ij}Q_{ij} \leq E_{max} \tag{2-2}\\ &\sum_{i}^{} \sum_{j}^{} x_{ij}F_{ij} \geq F_{min} \tag{2-3}\\ &\sum_{i}^{} \sum_{j}^{} x_{ij}F_{ij} \leq F_{max} \tag{2-4}\\ &\sum_{i}^{} \sum_{j}^{} x_{ij}C_{ij} \leq C_{max} \tag{2-5}\\ &x_{ij} \in \mathbb{Z}^+ \tag{2-6} \end{align} ijxijQijEminijxijQijEmaxijxijFijFminijxijFijFmaxijxijCijCmaxxijZ+(2-1)(2-2)(2-3)(2-4)(2-5)(2-6)

其中, x i j x_{ij} xij表示食物 i i i在一日三餐中的摄入量, P i j P_{ij} Pij表示食物 i i i中蛋白质氨基酸评分, Q i j Q_{ij} Qij表示食物 i i i中的能量含量, F i j F_{ij} Fij表示食物 i i i中的蛋白质含量, C i j C_{ij} Cij表示食物 i i i的价格, E m i n E_{min} Emin E m a x E_{max} Emax分别表示男生和女生一日所需的最小和最大能量摄入量, F m i n F_{min} Fmin F m a x F_{max} Fmax分别表示男生和女生一日所需的最小和最大蛋白质摄入量, C m a x C_{max} Cmax表示用餐费用的最大限制。
在这里插入图片描述

2)以用餐费用最经济为目标建立优化模型,分别设计男生和女生的日食谱,并对日食谱进行膳食营养评价;

优化目标:
M i n i m i z e ∑ i ∑ j x i j C i j \begin{equation} Minimize \quad \sum_{i}^{} \sum_{j}^{} x_{ij}C_{ij} \end{equation} MinimizeijxijCij

约束条件同上。

3)兼顾蛋白质氨基酸评分及经济性,建立优化模型,分别设计男生和女生的日食谱,并对日食谱进行膳食营养评价;

优化目标:
M a x i m i z e ∑ i ∑ j x i j P i j − λ ∑ i ∑ j x i j C i j \begin{equation} Maximize \quad \sum_{i}^{} \sum_{j}^{} x_{ij}P_{ij} - \lambda \sum_{i}^{} \sum_{j}^{} x_{ij}C_{ij} \end{equation} MaximizeijxijPijλijxijCij

约束条件同上,其中 λ \lambda λ为蛋白质氨基酸评分与用餐费用的权重系数。

4)对 1)—3)得到的日食谱进行比较分析。

问题2:基于附件3的日平衡膳食食谱的优化设计
1)以蛋白质氨基酸评分最大为目标建立优化模型,分别设计男生和女生的日食谱,并对日食谱进行膳食营养评价;

在建立蛋白质氨基酸评分最大为目标的优化模型时,我们可以使用线性规划的方法来解决。首先,我们需要确定优化模型的决策变量,这里我们将每种食物的摄入量作为决策变量。其次,我们需要建立目标函数和约束条件。

目标函数可以表示为:
m a x ∑ i P i × X i max\sum_{i} P_i \times X_i maxiPi×Xi
其中, P i P_i Pi表示每种食物的氨基酸评分, X i X_i Xi表示每种食物的摄入量。

约束条件包括:

  1. 每种食物的摄入量不能为负数;
  2. 每种营养素的摄入量必须达到参考摄入量的最低要求;
  3. 总能量摄入量必须符合参考能量摄入量的要求;
  4. 总摄入量必须符合每餐的摄入量限制。

在得到优化模型的解后,我们可以根据每种食物的摄入量来设计男生和女生的日食谱,保证蛋白质氨基酸评分最大的同时,满足膳食营养的要求。

2)以用餐费用最经济为目标建立优化模型,分别设计男生和女生的日食谱,并对日食谱进行膳食营养评价;

在建立用餐费用最经济为目标的优化模型时,我们也可以使用线性规划的方法来解决。首先,我们需要确定优化模型的决策变量,这里我们将每种食物的摄入量作为决策变量。其次,我们需要建立目标函数和约束条件。

目标函数可以表示为:
m i n ∑ i C i × X i min\sum_{i} C_i \times X_i miniCi×Xi
其中, C i C_i Ci表示每种食物的价格, X i X_i Xi表示每种食物的摄入量。

约束条件包括:

  1. 每种食物的摄入量不能为负数;
  2. 每种营养素的摄入量必须达到参考摄入量的最低要求;
  3. 总能量摄入量必须符合参考能量摄入量的要求;
  4. 总摄入量必须符合每餐的摄入量限制;
  5. 总用餐费用必须符合每餐的费用限制。

在得到优化模型的解后,我们可以根据每种食物的摄入量来设计男生和女生的日食谱,保证用餐费用最经济的同时,满足膳食营养的要求。
在这里插入图片描述

3)兼顾蛋白质氨基酸评分及经济性,建立优化模型,分别设计男生和女生的日食谱,并对日食谱进行膳食营养评价;

在同时兼顾蛋白质氨基酸评分和经济性的情况下,我们可以建立一个带有权重的目标函数来解决。例如,我们可以将蛋白质氨基酸评分的权重设为0.6,用餐费用的权重设为0.4。这样,我们可以得到一个综合考虑两个因素的优化模型。

目标函数可以表示为:
m a x ∑ i P i × X i + ∑ i C i × X i max\sum_{i} P_i \times X_i + \sum_{i} C_i \times X_i maxiPi×Xi+iCi×Xi
其中, P i P_i Pi表示每种食物的氨基酸评分, C i C_i Ci表示每种食物的价格, X i X_i Xi表示每种食物的摄入量。

约束条件和前两个问题类似。

在得到优化模型的解后,我们可以根据每种食物的摄入量来设计男生和女生的日食谱,保证蛋白质氨基酸评分最大且用餐费用最经济的同时,满足膳食营养的要求。

4)对 1)—3)得到的日食谱进行比较分析。

通过比较分析,我们可以得出不同目标函数下的日食谱差异,从而评估不同的优化模型的有效性和可行性。同时,我们也可以根据比较结果来选择最合适的优化模型来设计日食谱,从而保证膳食营养的科学合理性和经济性。

问题2.基于附件3的日平衡膳食食谱的优化设计
1)以蛋白质氨基酸评分最大为目标建立优化模型,分别设计男生和女生的日食谱,并对日食谱进行膳食营养评价;
优化模型如下:
m a x ∑ i = 1 n P i x i max \sum_{i=1}^{n} P_{i}x_{i} maxi=1nPixi
s . t . ∑ i = 1 n W i x i ≥ W m i n s.t. \sum_{i=1}^{n} W_{i}x_{i} \geq W_{min} s.t.i=1nWixiWmin
∑ i = 1 n C i x i ≤ C m a x \sum_{i=1}^{n} C_{i}x_{i} \leq C_{max} i=1nCixiCmax
x i ≥ 0 , i = 1 , 2 , . . . , n x_{i} \geq 0, i = 1,2,...,n xi0,i=1,2,...,n
其中, P i P_{i} Pi为第 i i i种食物的蛋白质氨基酸评分, W i W_{i} Wi为第 i i i种食物的重量, C i C_{i} Ci为第 i i i种食物的价格, W m i n W_{min} Wmin为最小摄入重量, C m a x C_{max} Cmax为最大用餐费用, x i x_{i} xi为第 i i i种食物的摄入量。
2)以用餐费用最经济为目标建立优化模型,分别设计男生和女生的日食谱,并对日食谱进行膳食营养评价;
优化模型如下:
m i n ∑ i = 1 n C i x i min \sum_{i=1}^{n} C_{i}x_{i} mini=1nCixi
s . t . ∑ i = 1 n P i x i ≥ P m i n s.t. \sum_{i=1}^{n} P_{i}x_{i} \geq P_{min} s.t.i=1nPixiPmin
∑ i = 1 n W i x i ≥ W m i n \sum_{i=1}^{n} W_{i}x_{i} \geq W_{min} i=1nWixiWmin
x i ≥ 0 , i = 1 , 2 , . . . , n x_{i} \geq 0, i = 1,2,...,n xi0,i=1,2,...,n
其中, P i P_{i} Pi为第 i i i种食物的蛋白质摄入量, W i W_{i} Wi为第 i i i种食物的重量, C i C_{i} Ci为第 i i i种食物的价格, P m i n P_{min} Pmin为最小蛋白质摄入量, W m i n W_{min} Wmin为最小摄入重量, x i x_{i} xi为第 i i i种食物的摄入量。
3)兼顾蛋白质氨基酸评分及经济性,建立优化模型,分别设计男生和女生的日食谱,并对日食谱进行膳食营养评价;
优化模型如下:
m a x ∑ i = 1 n P i x i max \sum_{i=1}^{n} P_{i}x_{i} maxi=1nPixi
s . t . ∑ i = 1 n W i x i ≥ W m i n s.t. \sum_{i=1}^{n} W_{i}x_{i} \geq W_{min} s.t.i=1nWixiWmin
∑ i = 1 n C i x i ≤ C m a x \sum_{i=1}^{n} C_{i}x_{i} \leq C_{max} i=1nCixiCmax
∑ i = 1 n P i x i ≥ P m i n \sum_{i=1}^{n} P_{i}x_{i} \geq P_{min} i=1nPixiPmin
x i ≥ 0 , i = 1 , 2 , . . . , n x_{i} \geq 0, i = 1,2,...,n xi0,i=1,2,...,n
其中, P i P_{i} Pi为第 i i i种食物的蛋白质氨基酸评分, W i W_{i} Wi为第 i i i种食物的重量, C i C_{i} Ci为第 i i i种食物的价格, W m i n W_{min} Wmin为最小摄入重量, C m a x C_{max} Cmax为最大用餐费用, P m i n P_{min} Pmin为最小蛋白质摄入量, x i x_{i} xi为第 i i i种食物的摄入量。
4)对 1)—3)得到的日食谱进行比较分析。

#导入所需的库和模块
import pandas as pd
import numpy as np
from scipy.optimize import minimize

#读取附件1和附件2中的数据,并将其合并为一个DataFrame
df1 = pd.read_excel("附件1.xlsx")
df2 = pd.read_excel("附件2.xlsx")
df = pd.concat([df1, df2], axis=0)

#读取附件3中的数据,并将其转换为DataFrame
df3 = pd.read_excel("附件3.xlsx")
df3 = pd.DataFrame(df3)

#计算每种食物的单位能量价值(每100克的能量价值)
df3["能量价值"] = df3["能量(kcal)"] / df3["重量(克)"]

#计算每种食物提供的蛋白质、脂肪和碳水化合物的量(克)
df3["蛋白质(g)"] = df3["蛋白质(g/100g)"] * df3["重量(克)"] / 100
df3["脂肪(g)"] = df3["脂肪(g/100g)"] * df3["重量(克)"] / 100
df3["碳水化合物(g)"] = df3["碳水化合物(g/100g)"] * df3["重量(克)"] / 100

#计算每种食物提供的氨基酸评分(分数)
df3["氨基酸评分"] = df3["赖氨酸(g)"] * df3["赖氨酸评分"] + df3["色氨酸(g)"] * df3["色氨酸评分"] + df3["亮氨酸(g)"] * df3["亮氨酸评分"] + df3["异亮氨酸(g)"] * df3["异亮氨酸评分"] + df3["苏氨酸(g)"] * df3["苏氨酸评分"] + df3["缬氨酸(g)"] * df3["缬氨酸评分"] + df3["脯氨酸(g)"] * df3["脯氨酸评分"] + df3["蛋氨酸(g)"] * df3["蛋氨酸评分"] + df3["赖氨酸(g)"] * df3["赖氨酸评分"] + df3["苯丙氨酸(g)"] * df3["苯丙氨酸评分"] + df3["色氨酸(g)"] * df3["色氨酸评分"] + df3["苏氨酸(g)"] * df3["苏氨酸评分"] + df3["缬氨酸(g)"] * df3["缬氨酸评分"] + df3["脯氨酸(g)"] * df3["脯氨酸评分"] + df3["蛋氨酸(g)"] * df3["蛋氨酸评分"]

#定义优化函数
def optimize(x):
    #计算总能量价值
    energy = np.sum(x * df["能量价值"])
    #计算总蛋白质量
    protein = np.sum(x * df["蛋白质(g)"])
    #计算总氨基酸评分
    score = np.sum(x * df["氨基酸评分"])
    #计算总费用
    cost = np.sum(x * df["价格(元/克)"])
    #定义目标函数为蛋白质氨基酸评分的倒数
    #最终目标为最大化蛋白质氨基酸评分
    return -1/score

#定义约束条件
#总能量限制为2400 kcal
def energy_constraint(x):
    return np.sum(x * df["能量(kcal)"]) - 2400

#总蛋白质限制为60克
def protein_constraint(x):
    return np.sum(x * df["蛋白质(g)"]) - 60

#总费用限制为10元
def cost_constraint(x):
    return np.sum(x * df["价格(元/克)"]) - 10

#定义初始值
x0 = np.ones(len(df))

#定义约束条件
#每种食物的摄入量应大于等于0
#每种食物的摄入量应小于等于1000
bounds = ((0, 1000),) * len(df)

#优化模型
res = minimize(optimize, x0, method='SLSQP', bounds=bounds, constraints=({"type": "eq", "fun": energy_constraint}, {"type": "eq", "fun": protein_constraint}, {"type": "eq", "fun": cost_constraint}))

#输出结果
print("日平衡膳食食谱的优化设计结果为:")
print(res.x)
print("日平衡膳食营养评价结果为:")
print("总能量价值为:", np.sum(res.x * df["能量价值"]), "每天提供2400 kcal")
print("总蛋白质量为:", np.sum(res.x * df["蛋白质(g)"]), "每天提供60克")
print("总氨基酸评分为:", np.sum(res.x * df["氨基酸评分"]))
print("总费用为:", np.sum(res.x * df["价格(元/克)"]), "每天花费10元")

在这里插入图片描述

问题三

问题 3.基于附件 3 的周平衡膳食食谱的优化设计。

首先,从附件3中统计的数据可以得出一周内每种食物的平均摄入量。根据附件4中的平衡膳食基本准则和能量及各种营养素参考摄入量,我们可以得到一周内每种营养素的建议摄入量。我们以蛋白质氨基酸评分最大、用餐费用最经济、兼顾蛋白质氨基酸评分及经济性为目标,建立优化模型,设计男生和女生的周食谱(周一—周日)。

假设一周内每餐的食物种类固定不变,我们可以将每一餐的食物种类作为决策变量。根据附件3中的数据,我们可以得到每种食物的价格及每种食物中营养素的含量。我们可以通过最小化每餐的总花费来达到用餐费用最经济的目标,即:
min ⁡ ∑ i = 1 7 ∑ j = 1 n x i j p j \min \sum_{i=1}^{7}\sum_{j=1}^{n}x_{ij} p_j mini=17j=1nxijpj
其中, x i j x_{ij} xij表示第 i i i天第 j j j种食物的摄入量, p j p_j pj表示第 j j j种食物的价格, n n n表示总共有 n n n种食物。

同时,我们还要满足每餐的蛋白质氨基酸评分最大的要求,即:
max ⁡ ∑ j = 1 n ∑ k = 1 m x i j S j k \max \sum_{j=1}^{n}\sum_{k=1}^{m}x_{ij} S_{jk} maxj=1nk=1mxijSjk
其中, S j k S_{jk} Sjk表示第 j j j种食物中第 k k k种氨基酸的评分, m m m表示总共有 m m m种氨基酸。

另外,我们还要满足每餐的营养素含量的要求,包括能量、脂肪、碳水化合物、膳食纤维、维生素和矿物质等。以能量为例,我们可以得到如下的约束条件:
∑ j = 1 n ∑ k = 1 m x i j E j k ≥ E m i n \sum_{j=1}^{n}\sum_{k=1}^{m}x_{ij} E_{jk} \geq E_{min} j=1nk=1mxijEjkEmin
其中, E j k E_{jk} Ejk表示第 j j j种食物中第 k k k种营养素的含量, E m i n E_{min} Emin表示每餐的能量需求量。

综合以上条件,我们可以得到如下的数学模型:
min ⁡ ∑ i = 1 7 ∑ j = 1 n x i j p j s . t . ∑ j = 1 n ∑ k = 1 m x i j S j k ≤ S m a x ∑ j = 1 n ∑ k = 1 m x i j E j k ≥ E m i n ∑ j = 1 n ∑ k = 1 m x i j F j k ≥ F m i n ∑ j = 1 n ∑ k = 1 m x i j C j k ≥ C m i n ∑ j = 1 n ∑ k = 1 m x i j F b j k ≥ F b m i n ∑ j = 1 n ∑ k = 1 m x i j V j k ≥ V m i n ∑ j = 1 n ∑ k = 1 m x i j M j k ≥ M m i n x i j ≥ 0 , ∀ i ∈ { 1 , 2 , . . . , 7 } , j ∈ { 1 , 2 , . . . , n } \begin{align} \min \quad & \sum_{i=1}^{7}\sum_{j=1}^{n}x_{ij} p_j \\ s.t. \quad & \sum_{j=1}^{n}\sum_{k=1}^{m}x_{ij} S_{jk} \leq S_{max} \\ & \sum_{j=1}^{n}\sum_{k=1}^{m}x_{ij} E_{jk} \geq E_{min} \\ & \sum_{j=1}^{n}\sum_{k=1}^{m}x_{ij} F_{jk} \geq F_{min} \\ & \sum_{j=1}^{n}\sum_{k=1}^{m}x_{ij} C_{jk} \geq C_{min} \\ & \sum_{j=1}^{n}\sum_{k=1}^{m}x_{ij} Fb_{jk} \geq Fb_{min} \\ & \sum_{j=1}^{n}\sum_{k=1}^{m}x_{ij} V_{jk} \geq V_{min} \\ & \sum_{j=1}^{n}\sum_{k=1}^{m}x_{ij} M_{jk} \geq M_{min} \\ & x_{ij} \geq 0, \forall i \in \{1,2,...,7\}, j \in \{1,2,...,n\} \\ \end{align} mins.t.i=17j=1nxijpjj=1nk=1mxijSjkSmaxj=1nk=1mxijEjkEminj=1nk=1mxijFjkFminj=1nk=1mxijCjkCminj=1nk=1mxijFbjkFbminj=1nk=1mxijVjkVminj=1nk=1mxijMjkMminxij0,i{1,2,...,7},j{1,2,...,n}
其中, S m a x S_{max} Smax E m i n E_{min} Emin F m i n F_{min} Fmin C m i n C_{min} Cmin F b m i n Fb_{min} Fbmin V m i n V_{min} Vmin M m i n M_{min} Mmin分别表示每餐的蛋白质氨基酸评分最大值、能量最小值、脂肪最小值、碳水化合物最小值、膳食纤维最小值、维生素最小值和矿物质最小值。

我们可以通过求解以上模型,得到男生和女生一周内每餐的食物种类及摄入量,从而得到一周内的膳食营养评价。通过比较不同目标函数的结果,我们可以得出最优的一周食谱,并对比其他模型的结果进行分析。

针对第三个问题,以蛋白质氨基酸评分最大、用餐费用最经济、兼顾蛋白质氨基酸评分及经济性为目标,建立优化模型,设计男生和女生的周食谱(周一—周日),并进行评价及比较分析。
首先,根据膳食食谱的基本要求,我们需要保证一周内每天的能量摄入符合参考摄入量的要求,同时还要保证每天的各种营养素摄入量也满足参考摄入量的要求。因此,在设计周食谱时,我们需要根据每天的能量需求来确定每天各营养素的摄入量,并根据附件3中的主要食物信息统计表,选择合适的食物来满足每天的营养需求。
其次,在优化设计时,我们需要考虑到膳食的多样性和平衡性。因此,在设计周食谱时,我们应该尽量避免每天都食用同一种或同一类食物,而是应该选择不同种类的食物来保证营养的多样性。同时,我们还需要注意每天各种营养素的比例,尽量保证平衡摄入不同种类的营养素。
最后,在评价和比较分析时,我们可以根据每天的膳食营养评价结果来判断每天的食谱是否达到了优化目标。如果发现某一天的某种营养素摄入量偏低,我们可以通过调整该天的食谱来改善。同时,我们还可以比较不同目标下的周食谱,选择最适合的食谱来促进大学生的健康饮食习惯的养成。
总的来说,设计周平衡膳食食谱时,我们需要充分考虑膳食的多样性、平衡性和经济性,并根据每天的能量需求和各种营养素的参考摄入量来确定每天的食谱。通过评价和比较分析,我们可以选择最适合的食谱,促进大学生的健康饮食习惯的养成。
在这里插入图片描述

以蛋白质氨基酸评分最大为目标的优化模型:
m a x ∑ i = 1 7 ∑ j = 1 3 x i j R i j max \sum_{i=1}^{7}\sum_{j=1}^{3}x_{ij}R_{ij} maxi=17j=13xijRij
s . t . s.t. s.t.
∑ j = 1 3 x i j P i j ≥ P m i n , ∀ i ∈ { 1 , 2 , 3 , 4 , 5 , 6 , 7 } \sum_{j=1}^{3}x_{ij}P_{ij}\geq P_{min}, \forall i \in \{1,2,3,4,5,6,7\} j=13xijPijPmin,i{1,2,3,4,5,6,7}
∑ i = 1 7 x i j N i j ≥ N m i n , ∀ j ∈ { 1 , 2 , 3 } \sum_{i=1}^{7}x_{ij}N_{ij}\geq N_{min}, \forall j \in \{1,2,3\} i=17xijNijNmin,j{1,2,3}
∑ i = 1 7 ∑ j = 1 3 x i j C i j ≤ C m a x \sum_{i=1}^{7}\sum_{j=1}^{3}x_{ij}C_{ij}\leq C_{max} i=17j=13xijCijCmax
x i j ≥ 0 , ∀ i ∈ { 1 , 2 , 3 , 4 , 5 , 6 , 7 } , j ∈ { 1 , 2 , 3 } x_{ij}\geq 0, \forall i \in \{1,2,3,4,5,6,7\}, j \in \{1,2,3\} xij0,i{1,2,3,4,5,6,7},j{1,2,3}

以用餐费用最经济为目标的优化模型:
m i n ∑ i = 1 7 ∑ j = 1 3 x i j P i j C i j min \sum_{i=1}^{7}\sum_{j=1}^{3}x_{ij}P_{ij}C_{ij} mini=17j=13xijPijCij
s . t . s.t. s.t.
∑ j = 1 3 x i j P i j ≥ P m i n , ∀ i ∈ { 1 , 2 , 3 , 4 , 5 , 6 , 7 } \sum_{j=1}^{3}x_{ij}P_{ij}\geq P_{min}, \forall i \in \{1,2,3,4,5,6,7\} j=13xijPijPmin,i{1,2,3,4,5,6,7}
∑ i = 1 7 x i j N i j ≥ N m i n , ∀ j ∈ { 1 , 2 , 3 } \sum_{i=1}^{7}x_{ij}N_{ij}\geq N_{min}, \forall j \in \{1,2,3\} i=17xijNijNmin,j{1,2,3}
∑ i = 1 7 ∑ j = 1 3 x i j R i j ≥ R m i n \sum_{i=1}^{7}\sum_{j=1}^{3}x_{ij}R_{ij}\geq R_{min} i=17j=13xijRijRmin
x i j ≥ 0 , ∀ i ∈ { 1 , 2 , 3 , 4 , 5 , 6 , 7 } , j ∈ { 1 , 2 , 3 } x_{ij}\geq 0, \forall i \in \{1,2,3,4,5,6,7\}, j \in \{1,2,3\} xij0,i{1,2,3,4,5,6,7},j{1,2,3}

兼顾蛋白质氨基酸评分及经济性的优化模型:
m a x ∑ i = 1 7 ∑ j = 1 3 x i j R i j − λ ∑ i = 1 7 ∑ j = 1 3 x i j P i j C i j max \sum_{i=1}^{7}\sum_{j=1}^{3}x_{ij}R_{ij}-\lambda\sum_{i=1}^{7}\sum_{j=1}^{3}x_{ij}P_{ij}C_{ij} maxi=17j=13xijRijλi=17j=13xijPijCij
s . t . s.t. s.t.
∑ j = 1 3 x i j P i j ≥ P m i n , ∀ i ∈ { 1 , 2 , 3 , 4 , 5 , 6 , 7 } \sum_{j=1}^{3}x_{ij}P_{ij}\geq P_{min}, \forall i \in \{1,2,3,4,5,6,7\} j=13xijPijPmin,i{1,2,3,4,5,6,7}
∑ i = 1 7 x i j N i j ≥ N m i n , ∀ j ∈ { 1 , 2 , 3 } \sum_{i=1}^{7}x_{ij}N_{ij}\geq N_{min}, \forall j \in \{1,2,3\} i=17xijNijNmin,j{1,2,3}
∑ i = 1 7 ∑ j = 1 3 x i j C i j ≤ C m a x \sum_{i=1}^{7}\sum_{j=1}^{3}x_{ij}C_{ij}\leq C_{max} i=17j=13xijCijCmax
x i j ≥ 0 , ∀ i ∈ { 1 , 2 , 3 , 4 , 5 , 6 , 7 } , j ∈ { 1 , 2 , 3 } x_{ij}\geq 0, \forall i \in \{1,2,3,4,5,6,7\}, j \in \{1,2,3\} xij0,i{1,2,3,4,5,6,7},j{1,2,3}
其中, λ \lambda λ为控制蛋白质氨基酸评分和经济性的权重系数,可根据具体情况进行调整。

# 导入相关库
import pandas as pd
import numpy as np
from pulp import *

# 读取附件3中的数据
df = pd.read_excel('附件3.xlsx')

# 创建一个优化问题
prob = LpProblem("Balanced Diet Problem", LpMinimize)

# 定义决策变量,即每种食物的摄入量
# 每种食物的摄入量都是非负的,因此lowBound为0
# 每种食物的摄入量都是连续的,因此cat为LpContinuous
food_vars = LpVariable.dicts("Food", df['食物'], lowBound=0, cat=LpContinuous)

# 定义目标函数,即总花费
prob += lpSum([df['价格'][i] * food_vars[df['食物'][i]] for i in range(len(df))]), "Total Cost"

# 定义约束条件,即每种营养素的摄入量必须满足每天所需的最小值和最大值之间
# 能量
prob += lpSum([df['能量'][i] * food_vars[df['食物'][i]] for i in range(len(df))]) >= 2100, "Minimum Energy"
prob += lpSum([df['能量'][i] * food_vars[df['食物'][i]] for i in range(len(df))]) <= 2700, "Maximum Energy"
# 蛋白质
prob += lpSum([df['蛋白质'][i] * food_vars[df['食物'][i]] for i in range(len(df))]) >= 35, "Minimum Protein"
prob += lpSum([df['蛋白质'][i] * food_vars[df['食物'][i]] for i in range(len(df))]) <= 50, "Maximum Protein"
# 脂肪
prob += lpSum([df['脂肪'][i] * food_vars[df['食物'][i]] for i in range(len(df))]) >= 20, "Minimum Fat"
prob += lpSum([df['脂肪'][i] * food_vars[df['食物'][i]] for i in range(len(df))]) <= 35, "Maximum Fat"
# 碳水化合物
prob += lpSum([df['碳水化合物'][i] * food_vars[df['食物'][i]] for i in range(len(df))]) >= 350, "Minimum Carbohydrate"
prob += lpSum([df['碳水化合物'][i] * food_vars[df['食物'][i]] for i in range(len(df))]) <= 450, "Maximum Carbohydrate"
# 维生素A
prob += lpSum([df['维生素A'][i] * food_vars[df['食物'][i]] for i in range(len(df))]) >= 500, "Minimum Vitamin A"
prob += lpSum([df['维生素A'][i] * food_vars[df['食物'][i]] for i in range(len(df))]) <= 1500, "Maximum Vitamin A"
# 维生素C
prob += lpSum([df['维生素C'][i] * food_vars[df['食物'][i]] for i in range(len(df))]) >= 20, "Minimum Vitamin C"
prob += lpSum([df['维生素C'][i] * food_vars[df['食物'][i]] for i in range(len(df))]) <= 100, "Maximum Vitamin C"
# 钙
prob += lpSum([df['钙'][i] * food_vars[df['食物'][i]] for i in range(len(df))]) >= 800, "Minimum Calcium"
prob += lpSum([df['钙'][i] * food_vars[df['食物'][i]] for i in range(len(df))]) <= 1200, "Maximum Calcium"
# 铁
prob += lpSum([df['铁'][i] * food_vars[df['食物'][i]] for i in range(len(df))]) >= 10, "Minimum Iron"
prob += lpSum([df['铁'][i] * food_vars[df['食物'][i]] for i in range(len(df))]) <= 20, "Maximum Iron"

# 定义受限的食物,即不能每天都吃同一种食物
prob += food_vars['牛奶'] + food_vars['豆浆'] + food_vars['鸡蛋'] + food_vars['牛肉'] + food_vars['鸡肉'] + food_vars['鱼肉'] <= 3, "Limited Food"

# 求解问题
prob.solve()

# 打印结果
print("Status:", LpStatus[prob.status])
for v in prob.variables():
    print(v.name, "=", v.varValue)

问题四

第四个问题是针对大学生饮食结构及习惯,写一份健康饮食、平衡膳食的倡议书。

健康饮食是保证大学生身体健康的重要因素,而平衡膳食则是健康饮食的基础。为了帮助大学生养成良好的饮食习惯,我们提出以下建议:

首先,要注意平衡各种营养素的摄入量。大学生每天需要摄入足够的能量、蛋白质、脂肪、碳水化合物、维生素和矿物质。建议在每餐中摄入三大营养素(主食、蛋白质和蔬果)的搭配,以保证身体的基本营养需求。

其次,要注重多样化的膳食选择。大学生经常性食用外卖和快餐食品会导致营养不均衡,因此建议多选择新鲜的蔬果、粮食、肉类和海鲜等食物,保证膳食的多样性,从而摄入更多种类的营养素。

此外,要注意饮食的节制。大学生经常因为考试压力或者减肥需要,而通过控制进食来减少皮下脂肪的积存。这种做法非常不科学,会导致营养不良和身体健康受损。建议大学生根据自身的身体状况和营养需求,合理控制进食量,保证每天摄入足够的营养素。

最后,要养成良好的饮食习惯。良好的饮食习惯能够帮助我们形成健康的生活方式。建议大学生每天定时定量地进餐,尽量避免暴饮暴食和吃零食,养成健康的饮食习惯。

综上所述,我们呼吁大学生们重视自己的饮食习惯,保证每天摄入足够的营养素,多选择新鲜的食物,合理控制进食量,并养成良好的饮食习惯。只有这样,我们才能保持身体健康,更好地投入到学习和生活中去。

健康的饮食习惯是保持身体健康的重要因素,特别是在大学时代,更应该注意营养摄入的合理性。根据附件 1、附件 2两份食谱的分析评价,我们可以发现大学生饮食结构存在一些问题,如摄入的蛋白质和脂肪过多,而碳水化合物和膳食纤维摄入不足。这可能是由于大学生忙碌的学习和社交生活,导致饮食选择不够科学和健康。

为了改善这一现状,我们应该倡导健康饮食和平衡膳食的理念,让大学生养成良好的饮食习惯。首先,我们应该每天保证早餐的摄入,早餐是一天中最重要的一餐,可以提供充足的能量和营养素。其次,我们应该减少外卖和快餐的食用频率,选择健康的食物,如谷类、蔬菜、水果等,保证每天摄入足够的膳食纤维。此外,我们也应该注意控制蛋白质和脂肪的摄入量,选择低脂肪、高蛋白的食物,如鱼类、禽类等。最后,我们应该鼓励大学生多参与体育锻炼,促进身体健康,同时也需要增加能量摄入,以满足身体的需求。

总的来说,健康的饮食习惯和平衡膳食对于大学生的身心健康至关重要。我们应该倡导营养知识和健康饮食理念,帮助大学生养成良好的饮食习惯,保证身体健康,为未来的发展打下坚实的基础。

健康饮食、平衡膳食倡议书

亲爱的大学生同学们:

大学生活是充满活力和挑战的时期,我们需要充足的能量和各种营养素来保持身体的健康和精力充沛。然而,我们经常忽视自己的饮食习惯,导致营养不良和不健康的身体状态。为了保证我们的身体健康,我向大家提出以下健康饮食、平衡膳食的倡议:

  1. 多吃早餐

早餐是一天中最重要的一餐,它可以为我们提供充足的能量和各种营养素,帮助我们保持精力充沛和集中注意力。因此,请大家不要忽视早餐,尽量选择健康的早餐食品,如全麦面包、牛奶、水果等。

  1. 多吃蔬菜和水果

蔬菜和水果是我们日常饮食中必不可少的营养来源,它们富含维生素、矿物质和纤维,有助于维持身体健康和预防疾病。建议每天至少吃五份蔬菜和水果,包括不同颜色的蔬菜和水果,以保证摄入各种营养素。

  1. 适量摄入蛋白质

蛋白质是我们身体的重要组成部分,但是过多摄入会增加肾脏负担,因此需要控制摄入量。建议每天摄入0.8-1克/公斤的蛋白质,选择优质蛋白质来源,如鸡蛋、豆类、鱼类等。

  1. 控制油脂和糖的摄入量

油脂和糖是我们饮食中的高能量来源,但是过多摄入会增加体重和患慢性病的风险。建议每天摄入油脂不超过25-30克,糖不超过50克,选择健康的脂肪来源,如橄榄油、坚果等,控制糖的摄入量。

  1. 多喝水

水是我们身体的必需品,它可以帮助我们排出废物、保持身体水平衡和身体功能正常。建议每天饮用充足的水,大约8-10杯,避免过多饮用含糖饮料。

最后,我想提醒大家,健康饮食、平衡膳食不仅仅是一种饮食方式,更是一种生活态度。我们应该养成良好的饮食习惯,选择健康的食物,保证身体健康,迎接更多的挑战和机遇。

愿我们都能拥有健康的身体和积极的生活态度!

祝好,

[你的名字]

数学公式:

  1. 蛋白质氨基酸评分计算公式:

评分 = ∑ i = 1 n 氨基酸含量(g) × 评分系数 参考摄入量(g) × 体重(kg) × 100 \text{评分}= \sum_{i=1}^{n} \frac{\text{氨基酸含量(g)} \times \text{评分系数}}{\text{参考摄入量(g)} \times \text{体重(kg)}} \times 100 评分=i=1n参考摄入量(g)×体重(kg)氨基酸含量(g)×评分系数×100

  1. 用餐费用最经济优化模型:

min ⁡ ∑ i = 1 n 食物价格 × 食物摄入量 \min \sum_{i=1}^{n} \text{食物价格} \times \text{食物摄入量} mini=1n食物价格×食物摄入量

  1. 兼顾蛋白质氨基酸评分及经济性优化模型:

min ⁡ λ ∑ i = 1 n 食物价格 × 食物摄入量 + ( 1 − λ ) ∑ i = 1 n 氨基酸含量(g) × 评分系数 参考摄入量(g) × 体重(kg) × 100 \min \lambda \sum_{i=1}^{n} \text{食物价格} \times \text{食物摄入量} + (1-\lambda) \sum_{i=1}^{n} \frac{\text{氨基酸含量(g)} \times \text{评分系数}}{\text{参考摄入量(g)} \times \text{体重(kg)}} \times 100 minλi=1n食物价格×食物摄入量+(1λ)i=1n参考摄入量(g)×体重(kg)氨基酸含量(g)×评分系数×100

更多内容具体可以点击下方名片了解DeepVisionary!深度解析五一杯前沿与数学建模,深度学习算法分析!

关注DeepVisionary 获取更多数模细节资讯,了解更多深度学习前沿科技信息&顶会论文分享!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1686983.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Python自动化测试】:Unittest单元测试与HTMLTestRunner自动生成测试用例的好帮手

读者大大们好呀&#xff01;&#xff01;!☀️☀️☀️ &#x1f525; 欢迎来到我的博客 &#x1f440;期待大大的关注哦❗️❗️❗️ &#x1f680;欢迎收看我的主页文章➡️寻至善的主页 文章目录 &#x1f525;前言&#x1f680;unittest编写测试用例&#x1f680;unittest测…

49 序列化和反序列化

本章重点 理解应用层的作用&#xff0c;初识http协议 理解传输层的作用&#xff0c;深入理解tcp的各项特性和机制 对整个tcp/ip协议有系统的理解 对tcp/ip协议体系下的其他重要协议和技术有一定的了解 学会使用一些网络问题的工具和方法 目录 1.应用层 2.协议概念 3. 网络计…

awesome-ai4s 现已开源!超全 AI for Science 学术论文与数据资源汇总,持续更新ing

2018 年中国科学院院士鄂维南提出「AI for Science」概念&#xff0c;强调利用 AI 学习科学原理、创造科学模型来解决实际问题。同年&#xff0c;AlphaFold 崭露头角&#xff0c;从 43 种蛋白质中准确预测出了 25 种蛋白质结构。2021 年&#xff0c;AlphaFold 2 开源并预测了 9…

缓存降级

当Redis缓存出现问题或者无法正常工作时,需要有一种应对措施,避免直接访问数据库而导致整个系统瘫痪。缓存降级就是这样一种机制。 主要的缓存降级策略包括: 本地缓存降级 当Redis缓存不可用时,可以先尝试使用本地进程内缓存,如Guava Cache或Caffeine等。这样可以减少对Redis…

OpenLayers中实现对ImageStatic图层的扩展以支持平铺WrapX功能

地图平铺技术概述 地图平铺&#xff08;Tiling&#xff09;是一种将大尺寸地图数据分割成小块&#xff08;瓦片&#xff09;的技术&#xff0c;这在地图服务中非常常见。它使得地图数据能高效加载和展示&#xff0c;尤其适合网络环境。通过仅加载当前视图窗口所需的地图瓦片&a…

Qt官方示例---opengl

文件相对路径&#xff1a;Examples\Qt-5.9.1\opengl 2dpainting cube computegles31 contextinfo hellogl2 hellowindow paintedwindow qopenglwidget qopenglwindow textures threadedqopenglwidget

Rabbitmq 搭建使用案例 [附源码]

Rabbitmq 搭建使用案例 文章目录 RabbitMQ搭建docker 代码golang生产者消费者 可视化消费进度 RabbitMQ搭建 docker docker run -d --hostname rabbitmq --name rabbitmq -e RABBITMQ_DEFAULT_USERadmin -e RABBITMQ_DEFAULT_PASSadmin -e RABBITMQ_DEFAULT_VHOSTmy_vhost -e…

重组蛋白表达系统优缺点对比|卡梅德生物

重组蛋白是现代生物技术中不可或缺的一部分&#xff0c;它们广泛应用于药物开发、研究工具和工业酶的生产。根据目标蛋白的特性和所需的修饰&#xff0c;可以选择不同的表达系统。下文罗列一下四个主要蛋白表达系统的优缺点&#xff1a; 1. 原核表达系统&#xff08;如大肠杆菌…

【QT实战】汇总导航

✨Welcome 大家好&#xff0c;欢迎来到瑾芳玉洁的博客&#xff01; &#x1f611;励志开源分享诗和代码&#xff0c;三餐却无汤&#xff0c;顿顿都被噎。 &#x1f62d;有幸结识那个值得被认真、被珍惜、被捧在手掌心的女孩&#xff0c;不出意外被敷衍、被唾弃、被埋在了垃圾堆…

深度学习之基于Tensorflow卷积神经网络(CNN)实现猫狗识别

欢迎大家点赞、收藏、关注、评论啦 &#xff0c;由于篇幅有限&#xff0c;只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 一、项目背景与意义 在人工智能和深度学习的热潮中&#xff0c;图像识别是一个备受关注的领域。猫狗识别作为图像识…

Milvus的内存索引

简介&#xff1a; 这篇文章主要介绍milvus支持的各种内存索引&#xff0c;以及它们最适用的场景&#xff0c;还有用户为了获得更好的搜索性能可以配置的参数。 索引是有效组织数据的过程&#xff0c;它的主要角色是在大的数据集中显著的加速耗时的查询从而有效的进行相似搜索…

【制作100个unity游戏之28】花半天时间用unity复刻童年4399经典小游戏《黄金矿工》(附带项目源码)

最终效果 文章目录 最终效果前言素材模拟绳子钩子来回摆动发射回收钩子方法发射钩子回收钩子勾取物品随机生成物品其他源码完结 前言 在游戏发展史上&#xff0c;有些游戏以其简单而耐玩的特性&#xff0c;深深地烙印在了玩家的记忆中。《黄金矿工》就是其中之一&#xff0c;它…

SpringBootWeb 篇-深入了解 Mybatis 删除、新增、更新、查询的基础操作与 SQL 预编译解决 SQL 注入问题

&#x1f525;博客主页&#xff1a; 【小扳_-CSDN博客】 ❤感谢大家点赞&#x1f44d;收藏⭐评论✍ 文章目录 1.0 Mybatis 的基础操作 2.0 基础操作 - 环境准备 3.0 基础操作 - 删除操作 3.1 SQL 预编译 3.2 SQL 预编译的优势 3.3 参数占位符 4.0 基础操作 - 新增 4.1 主键返回…

每周节省7800万工时!ChatGPT等成美国降本增效利器

5月23日&#xff0c;全球最大教育、商业出版社之一的Pearson plc在官网发布了&#xff0c;ChatGPT等生成式AI如何帮助人们提升工作效率节省时间的深度研究报告。 该报告一共分析了美国、英国、澳大利亚、巴西和印度5个国家。到2026年&#xff0c;美国节省的时间最多&#xff0…

面试准备-项目【面试准备】

面试准备-项目【面试准备】 面试准备自我介绍&#xff1a;项目介绍&#xff1a; 论坛项目功能总结简介数据库表设计注册功能登录功能显示登录信息功能发布帖子评论私信点赞功能关注功能通知搜索网站数据统计热帖排行缓存 论坛项目技术总结Http的无状态cookie和session的区别为什…

GIS竞赛指南

全国大学生GIS应用技能大赛 全国大学生GIS应用技能大赛 主办单位:中国地理信息产业协会、中国地理学会 协办单位&#xff1a;广州大学(2023年) 参赛要求&#xff1a;每个学校一支队伍&#xff0c;限在读本科生组队不超过4人&#xff0c;指导老师不超过2人&#xff0c;一般学…

三磷酸肌醇(IP3)为细胞内信号转导分子 在医药、科研领域应用前景广阔

三磷酸肌醇&#xff08;IP3&#xff09;为细胞内信号转导分子 在医药、科研领域应用前景广阔 三磷酸肌醇又称为肌醇三磷酸&#xff0c;简称InsP3或IP3&#xff0c;是一种小信号分子&#xff0c;由磷脂酶C催化磷脂酰肌醇-4,5-二磷酸水解产生的&#xff0c;水解后剩下的甘油二酯停…

异众比率(variation ratio)

异众比率&#xff08;variation ratio&#xff09;是指非众数组的频数占总频数的比率&#xff0c;其计算公式为: 其中&#xff0c;为众数组的频数。 异众比率主要用于衡量众数对一组数据的代表程度。异众比率越大&#xff0c;说明非众数组的频数占总频数的比重越大&#xff0…

甭管几岁退休,都要做纵横驰骋的疯狂老太太

点击文末“阅读原文”即可参与节目互动 剪辑、音频 / 卷圈 运营 / SandLiu 卷圈 监制 / 姝琦 封面 / 姝琦Midjourney 产品统筹 / bobo 场地支持 / &#xff08;新&#xff09;声湃轩北京录音间 对许多年轻人来说&#xff0c;退休是此生最大的“延迟满足”。 手握不用干活…