gpt4 book ai didi

algorithm - 效用最大化分配

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:44:24 25 4
gpt4 key购买 nike

我将其发布在计算机科学部分,但没有人回复 :(。任何帮助将不胜感激 :)。

有一个大小为 MxN 的网格。 M~20000 和 N~10。所以 M 非常大。因此,一种方法是查看并排放置的 N 个大小为 M 的网格 block 。接下来假设有 K 个用户,每个用户都有一个 MxN 的效用矩阵,其中每个元素提供用户在分配给该网格元素时将获得的效用。分配需要以每个分配的用户总效用必须超过每个网格 block 中的某个阈值效用 U 的方式进行。假设只能为一个用户分配一个网格元素。 最多可以分配多少用户?。 (所以如果一些用户没有分配也没关系)。

第 2 级:现在假设对于每个用户,N 个 block 中至少有 n 个必须超过效用阈值 U。对于这个问题,可以分配的最大用户数是多少。

当然,由于 K^(MN) 的复杂性,暴力搜索在这里没有用。我猜测某种动态编程方法可能是可行的。

最佳答案

据我了解,问题可以建模为 Maximum Bipartite Matching问题,可以使用 Hungarian algorithm 有效解决.在左侧分区 L 中,创建 K 节点,每个用户一个。在右分区 R 中,创建 L*M*N 节点,每个节点对应网格中的每个单元格。由于边为每个 l in Lr in R 创建边,成本等于将用户 l 分配给网格单元的成本r

关于algorithm - 效用最大化分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29364554/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com