这是一个复杂的问题所以请耐心等待。
我有许多组件来制作化合物。
在最终化合物中,有三个相关部分需要尽可能平衡。
例如,起点可能是
ITEM A B C
ONE 25kg 50kg 40kg
TWO 45kg 20kg 65kg
THREE 12kg 50kg 4kg
etc. - there can be 3-50 components but only parts A, B and C are relevant.
最终目标是调整一,二,三等项目的数量,以便最终化合物(通过将这些项目加在一起而成)的比例为
A B C
24% 46% 30%
还有一项限制,即我可以向上或向下调整一个组件的数量超过40%。
显然我明白,有时候考虑到上述限制,不可能获得所需的比例,但我需要尽可能接近。
目前我的方法是: -
A = 26.37%
B = 38.59%
C = 35.05%
A=24%, B=46% etc.
)进行比较,得出差异。
A = -2.37%%
B = 7.41%%
C = -4.05%
这是我开始有点卡住的地方(但有一些半工作的东西) - 此刻我基本上开始调整A - >首先是B比率 - 所以从这个例子中我需要找到具有高B和低A比例的项目(项目THREE)。
然后我将ITEM 3增加1%并将项目1和2减少1%。然后我重新评估,直到达到我想要的比例或者达到最大增加/减少40%。
如果我达到最大40%的增加/减少,那么我找到下一个最好的B - >比率(第一项优于比率)并重复该比率。
一旦我用尽所有可能性或达到我的目标,我在C项和B项之间做同样的事情
然后我一遍又一遍地重新运行整个过程,直到我耗尽循环(目前20个循环的项目3-5 - 循环它们大约30次)效果很好。
效果相对较好 - 我可以达到预期结果的2-3%。
然而 - 为了达到这个目的,我必须在400-900个循环区域内完成。
为了使所需结果更加清晰,示例结果可能是: -
ITEM MULTIPLIER A B C
ONE 1.38 34.5kg 69kg 55.2kg
TWO 0.62 27.9kg 12.4kg 40.3kg
THREE 1.4 16.8kg 70kg 5.6kg
PERCENTAGE 23.88% 45.64% 30.48%
TARGET DIFFERENCE -0.12% -0.36% 0.48% NET 0%
我知道我的方式很愚蠢,但我不知道如何以另一种方式做到这一点,所以这就是我需要帮助的地方。
摘要
我如何编写/我应该使用什么方法来平衡多个项目以达到我想要的比率 - 它需要考虑到最多可以有50个组件和40%的更改上限。
我不希望任何人为我写这些内容 - 只是指示,建议,简单问题的例子,看看我如何能更好地解决这个问题
提前致谢,我希望这很清楚。