【问题标题】:Even prize distribution奖金分配均匀
【发布时间】:2016-05-02 14:19:40
【问题描述】:

我目前正面临有趣的算法问题,我正在寻找想法或可能的解决方案。主题似乎很常见,所以它可能已经知道并已解决,但我找不到它。

所以让我们假设我正在经营商店并且 我正在为购买客户制作lottery。每次他们买东西都可以赢得奖品。

  • 客户购买后立即获得奖品。
  • 我有X prizes
  • 我将为Y days 抽奖
  • 付费客户(购买行为、交易行为)应该有equal chance to win 奖品
  • 奖品应分发到最后一天(最后一天应该有一些奖品要分发)
  • 最后不能有left奖品
  • 我确实没有拥有每天交易的历史数据(没有抽奖前的数据)来估计平均交易数量(但抽奖可能会改变交易数量)
  • 我可以在彩票运行时收集数据

这是无法解决的,最接近的解决方案是什么? 即时奖品分配必须保留。

【问题讨论】:

  • 那么您需要做的就是假装您只有 X-1 个奖品(或 X-k 个奖品,如果您想在最后一天保留 k 个奖品)和 Y-1 天。这将在最后一天留下 1(或 k)个奖品。
  • @j_random_hacker 如果我理解正确水库采样我不能在交易后立即授予奖励
  • 没有什么可以保证您不会得到很多奖品(如果在抽奖的最后几天没有人进入您的商店)或者在最后一刻进入商店的人仍然存在有机会(在某个时候有人会赢得最后一个奖品,但在那之后人们仍然可以进入商店。)
  • @KrzysztofBogdan:您说得对,使用水库采样意味着您也将奖品远离人!但我认为 m69 的评论是正确的:我认为没有办法在不出现矛盾的情况下处理所有可能的情况。
  • 因为任何彩票都是一种机会游戏,所以您无法一直到最后一天做出任何明确的预测,尤其是当您有未知数量的人进来时。他们在期间的分布兴趣。你只能近似,但永远不能确定。

标签: algorithm random probability


【解决方案1】:

你想做的事是不可能的。一旦您赠送了最后一个奖品,您就无法证明剩下的客户数量有任何保证,因此并非所有客户都有平等的机会赢得奖品。

你可以做一些相当接近它的事情。您可以尝试估计您将拥有的客户数量,假设他们是均匀分布的,然后在比赛进行期间将奖品分配给您。这将为您提供一个比率,您可以使用该比率来判断给定客户是否是赢家。然后随着比赛的进行,更改估算值以匹配您所看到的内容以及剩余的奖品。每 x 次(小时/分钟甚至客户交易)运行一次此更新,以确保费率不会太低,并且每 q 次奖励以确保费率不会太高。如果奖品被送出,请不要过于频繁地运行更新,否则算法可能会在流量较低的时段(例如一夜之间)反应过于强烈。

让我举个例子。假设您计算出每小时将接待 100 位顾客,您应该每 200 位顾客发放奖品。所以大约每2小时1次。 3 小时后您回来,您会看到每小时有 300 位顾客,您已经发放了 4 个奖品。因此,您现在可以将预期调整为每小时 300 名客户,并调整分配率以匹配剩余的客户。

即使您的初始值太低或太高,这也会起作用。 如果您的估计太远并且您的更新相差很远(假设您只在一天后检查但您已经赠送了所有奖品),这将严重破坏。

这可以把奖品留在桌子上。如果您不希望这样,您可以减少程序认为比赛正在运行的时间,以便它应该在比赛结束前完成奖品。您可以限制给定日期的奖励数量,以使分配更加均匀(不要将其设置为X/Y,而是设置为X/Y * .25,这样会有一些变化),并在结束时更新限制说明所给予奖励变化的日期。

【讨论】:

  • 这是我的想法之一,根据最后一帧时间调整获胜机会。
【解决方案2】:

可能的解决方案 #1

基于@m69 评论

假设有 6 个奖品(总奖品)和 2 天的抽奖。 让我们将“按日奖品”定义为 PBD(以满足直到最后一天有奖品的要求)。 PBD = 总奖金/天 我们每天随机选择尽可能多的 PBD 事件。 此事件之后的每一笔交易都是赢钱交易。 可以优化为不使用彩票最后一天的最后一小时来保证送出所有奖品。

优点

随机。简单、优雅的解决方案。

缺点

似乎用户没有平等的获胜机会。

可能的解决方案 #2

基于@Sorin 的回答

我们开始分析第一个时间范围(例如 1 小时)。我们计算获胜机会为: 在哪里: Δprizes = 剩下的奖品, Δframes = 左帧

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-12-22
    • 2023-03-11
    • 2011-04-04
    • 2021-11-29
    • 1970-01-01
    • 1970-01-01
    • 2011-09-16
    相关资源
    最近更新 更多