Algorithm 资源交易算法
我正试图找到以下问题的最佳算法解决方案。这是一个真实的问题,但我将以一种抽象的方式来描述它 有一个1000人的社区。向每个用户提供一组票证。有四种类型的门票,每种门票对应不同的活动。然而,有些人愿意做交易,例如,我想要一张A票,我愿意放弃两张B票。此外,有些人有额外的票,他们愿意免费赠送。例如,我会赠送两张C票给任何想要的人。假设我知道每个人愿意赠送/交易什么,我如何满足最多的人 我尝试过谷歌搜索,但我不知道如何用词来形容这个问题,以避免得到与金融工具算法交易相关的结果Algorithm 资源交易算法,algorithm,optimization,resources,trading,Algorithm,Optimization,Resources,Trading,我正试图找到以下问题的最佳算法解决方案。这是一个真实的问题,但我将以一种抽象的方式来描述它 有一个1000人的社区。向每个用户提供一组票证。有四种类型的门票,每种门票对应不同的活动。然而,有些人愿意做交易,例如,我想要一张A票,我愿意放弃两张B票。此外,有些人有额外的票,他们愿意免费赠送。例如,我会赠送两张C票给任何想要的人。假设我知道每个人愿意赠送/交易什么,我如何满足最多的人 我尝试过谷歌搜索,但我不知道如何用词来形容这个问题,以避免得到与金融工具算法交易相关的结果 谢谢。考虑到它有多个维度
谢谢。考虑到它有多个维度,它很可能是一个NP完全问题。它类似于一个多维背包问题 因此,我建议尝试回溯方法 从参与交易的每个人开始 对造成赤字最多的人进行排序。在这里,您可以根据每张票中的差额来权衡每种票类型造成的赤字 然后以回溯的方式,将导致下一个最高赤字的人踢出交易 重复这个步骤,直到你们们在任何票证记录中都并没有赤字,或者你们们把所有人都踢出去 当这种情况发生时,回溯1步并继续,如果你已经尝试踢出最高的赤字,踢出下一个造成赤字的最高的人 重复,直到结束,否则你的时间不够了。从你找到的可能答案中找出最佳答案 如果问题太难,它可能会用光时间。否则,这个算法会给你一个合理的答案,也许接近最优
这种方法的效果取决于人们有多慷慨/贪婪,有多少人,以及你的计算机有多快。寻找一个二部最小重量匹配问题。其思想是使用顶点1找到从i到j的最短距离。。仅限k。您需要定义“满足”。如果人们至少有{A,B,C,D}的某个子集的票或者每种类型至少有一定数量的票,他们会满意吗?另外,如果一个人愿意放弃或交易,而你不能让他满意,那么他是否仍然愿意放弃罚单?这个算法没有足够好的定义。你不会说满足一个人意味着什么,他们是否从一种以上的票开始,等等。我建议编辑这个问题;否则它可能很快就要关门了。说得好。所以,当一个人最终得到他或她想要的数量和类型的确切门票时,他或她会感到满意。那些不想做任何交易或愿意出票的人总是被认为是满意的。注意到了第二个问题。因此,一个人只有在他或她对交易感到满意的情况下才愿意进行交易。当我在搜索关键词中添加易货时,我开始收集肾脏交易的文件,这至少不是金融工具。这看起来是个难题。其中一篇论文说,组合拍卖的研究对他们不太适用——也许对你适用。谢谢!特别是关于背包的问题。谢谢,我也会调查的。