经济模拟的最佳匹配算法?

发布于 2025-01-06 00:18:02 字数 479 浏览 3 评论 0原文

我想找到最佳匹配算法来重新创建经济模拟。

我将创建不同的客户群。每个组都有特定的参数来确定客户想要购买什么。这些参数的示例:质量、功能、营销等。

我的游戏中的每个玩家都会创建不同的产品,并尝试满足不同客户群体的需求。然后,他们将为每种产品定价,并决定生产多少(数量有限)。

因此,一方面,您的客户数量有限。另一方面,您的产品数量有限。这些数量不需要相等(但可以相等)。因此,对于客户数量来说,您的产品可能过多,或者对于产品数量来说,客户可能过多。但有一点是肯定的:每个顾客都想购买一种产品,除非出现短缺。

我找到了稳定的婚姻算法,但这似乎并不完全适合我的情况。对此最好的匹配算法是什么?

这个问题与之前有关类似主题的帖子相关: 经济模拟算法?

I want to find the best matching algorithm to recreate an economic simulation.

I will create differents groups of customers. Each group will have particular parameters that will determine what the customers wants to buy. Example of those parameters : quality, features, marketing, etc.

Each player in my game will create differents products and try to fill out the needs of the differents groups of customers. Then, they will put a price on each product, and decide how much they will produce (limited quantity).

So, on one side, you have a limited quantity of customers. On they other side, you have a limited quantity of products. These to quantities do not need to be equal (but it can be). So you might have too much products for the quantity of customers, or too much customer for quantity of products. But one thing is sure : every customer wants to buy a product, unless there is a shortage.

I found the stable mariage algorithm, but this one doesn't seem to fit exactly my situation. What would be the best matching algorithm for this?

This question is related to a previous post about similar subject :
An algorithm for economic simulation?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

中性美 2025-01-13 00:18:02

思考这个问题的一种方法是将其视为最大权重二分匹配问题。在您的设置中,您可以将问题视为具有两组节点的图:

  1. 对应于客户的节点
  2. 对应于产品的节点

有一条边将每个客户与他们有兴趣购买的产品配对,成本为优势在于客户对特定产品的需求程度。由于客户不与客户配对,产品也不与产品配对,因此该图是二分图。

考虑到这种设置,一种选择是在此图中找到具有最大可能总收益的匹配(即,最大化人们购买适当产品所提供的效用总量)。这样,每个能买东西的人最终都会这样做,除非其他人不成比例地想要该客户想要的产品,以至于该人不购买任何他喜欢的产品更有意义。最大权重二分匹配的算法有很多,而且运行速度相当快。

希望这有帮助!

One way to think about this problem is as a maximum-weight bipartite matching problem. In your setup, you can think of the problem as a graph with two groups of nodes:

  1. Nodes corresponding to customers
  2. Nodes corresponding to products

There is an edge pairing up each customer with the products that they're interested in buying, with the cost of an edge being how much the customer wants that particular product. Since customers aren't paired with customers and products aren't paired with products, this graph is bipartite.

Given this setup, one option would be to find a matching in this graph with the maximum possible possible total benefit (that is, maximizing the total amount of utility given by people buying the appropriate products). This way, everyone who can buy something will end up doing so, unless other people so disproportionately want the products that that customer wants that it makes more sense for that person not to get any of his preferred products. There are many algorithms for maximum-weight bipartite matching, and they run fairly quickly.

Hope this helps!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文