如何使用粒子群优化解决这个问题?

计算科学 优化 约束优化
2021-12-07 05:47:52

我目前正在针对问题的特定部分修改我的优化算法。我在思考一种新方法时遇到了麻烦,而且我的脑海里有这种想法的狭隘视野。我真的可以使用一些新鲜的观点。

我会尽力简单的解释。

(请参阅附件“Example-1.png”和“Example-2.png”)


比如说,我们有 3 个不同的人。

这些人中的每一个都有特定的供应(他/她拥有的物品)和需求(需要获得的物品)。现在,如果这些供给需求被反转,并且它们的反转可以在另一个人身上找到,它们就可以被交易。

此外,这些对有一个称为重力的数值,它指定了这对对人的重要性。我们可以将其视为衡量一个人在满足供给-需求对的情况下能够“满足多少的权重。每个人只能在他/她的所有供应-需求对中分配和分配 100 点重力。

现在,这个过程的总满意度可以通过获得所有个人满意度的总和来计算。

目标是让这组人以不同的组合交易他们的供给-需求对,这样我们就可以获得尽可能大的总满意度。


在 PSO 中,每个粒子代表一个基于其在搜索空间中的位置的候选解。

鉴于本文所附示例,我们可以说Example-1.PNG 和 Example-2.PNG该问题的独特候选解决方案


使用健身/目标函数如何表示和评估这个问题的最佳方法是什么?

您如何描述 PSO 中的这个问题?

您有与此相同问题的已发表作品的建议吗?

干杯!

示例-1.PNG

Example-1.png

示例-2.PNG Example-2.png

1个回答

也许动态规划方法会适合,因为它似乎接近背包问题

如果您选择 PSO,我认为您可以将每个人从特定供应中获得的数量表示为您的问题的变量。然后你必须表达你的约束和你的目标函数。你应该有一个ILP

之后,您可以使用 PSO 算法搜索好的解决方案。这是从谷歌学者找到的一篇论文(似乎被引用了很多次)

www.computer.org/csdl/proceedings/wcci/2002/7282/02/01004478.pdf