我很难想出一个算法来生成一份膳食计划。考虑到营养需求(碳水化合物、脂肪、蛋白质等),问题涉及到不同数量的食物项目。食品项目需要从少数项目中选择(<7项)。例如,假设你有食物项目A,B,C。食品项目A有a_p克蛋白质1克A,B项b_p克蛋白质1克B等等。假设所需的碳水化合物总量为Crb,所需蛋白质总量为Prt,脂肪需要量为Ft。对于这个问题,方程看起来就像
A_g*a_p + B_g*b_p + C_g*c_p = Prt A_g*a_c + B_g*b_c + C_g*c_c = Crb A_g*a_f + B_g*b_f + C_g*c_f = Ft
其中A_g、B_g和C_g是每种食物的克,而a_p...b_c...c_f表示每种食物的1克中的蛋白质、碳水化合物和脂肪的克。这里的问题是,大多数情况下,不可能满足给定的需求,只需要最接近给定需求的最佳解决方案。总体目标是减少实际养分需求与算法计算的差异。我已经研究过线性规划,但我看到的大多数问题都涉及到具有一组约束的给定函数的最小化/最大化。我将非常感谢在解决这一问题方面的任何帮助。
谢谢
发布于 2015-01-13 04:15:45
假设你被允许有分数克的食物,你可以解析地解决这个问题,详见%28mathematics%29。
你有一个额外的隐含约束,即没有任何一种食物能以负的数量出现。因此,如果食物出现负数,你需要尝试不同的食物子集,以找到可能的答案,然后选择最好的答案。
如果你不能有少量的食物,那么这个问题就会变得更加困难。
https://stackoverflow.com/questions/27912241
复制相似问题