一个玩具问题可能是最好的解释。假设我们有 100 个人,每个人都有 4 种独特的项目(为了简化事情,假设每个人都有相同的四种项目)。对于这些人中的每一个,他们需要的每种物品类型的数量都不同。
所以对于第一个人,他们有项目 {i1 = 10, i2 = 4, i3 = 6, i4 = 20},他们需要 {n1 = 6, n2 = 7, n3 = 8, n4 = 15} 分别用于这 4 个项目.
对于第二个人,他们有 {i1 = 0, i2 = 5, i3 = 5, i4 = 10},他们分别需要 {n1 = 0, n2 = 6, n3 = 10, n4 = 14}。
对于第三个人,他们有 {i1 = 50, i2 = 6, i3 = 6, i4 = 5},他们分别需要 {n1 = 55, n2 = 2, n3 = 5, n4 = 5}。
依此类推,直到 100 人。
我正在寻找一种算法来建议应该在这 100 个人之间交易哪些商品,以便达到全局最优状态(总体需求得到最优满足)。算法将进行的一项(许多)交易是建议第 1 个人向第 3 个人出售 4 件商品 1。这样,在全球范围内,需求得到更好的满足。
软约束是我们最小化交易总数(不能无限次交易)。你知道这种优化问题的名称吗?您可以推荐任何算法名称吗?更好的是,是否有任何开源库来处理您所知道的这种类型的优化?
谢谢!