算法博弈论-这个贪心算法为什么是背包问题的1/2近似算法

本文介绍了背包拍卖问题中的贪心算法,该算法按单价或最高报价选择赢家,保证至少获得最优解的一半。通过证明展示了在两种情况下,算法都能达到这一性质。
摘要由CSDN通过智能技术生成


博主想起当时证明出来特开心,虽然不会长更博弈论,还是可以分享一下。有问题想要一起讨论的也可以私信博主。

背包拍卖

在背包拍卖中,每一个竞拍者 i 都有一个公开的规模 w i w_{i} wi和一个私有的估值。卖家有容量 W W W。可行集合 X X X是一个0-1向量 ( x 1 , . . . , x n ) (x_{1}, ...,x_{n}) (x1,...,xn),且 ∑ i = 1 n w i x i ≤ W \sum_{i=1}^nw_{i}x_{i}\le W i=1nwixiW
x i x_{i} xi仍表示竞拍者 i i i是拍卖中的一个赢家。

博主给个常见的情景,某档综艺中休息时间的广告投标。多个不同广告(时间不同,价格不同)。中间休息时间的长度是固定的。

其中一种分配规则:贪心

对于 w i > W w_{i}>W wi>W的竞拍者,把他们移除对竞拍结果没有影响,别人一共能放30s,你的广告40s,报高报少都不会中标(当然,抽疯了给了天价也是有可能的,这里讨论正常的交易情况)。
所以在下面算法中 w i ≤ W w_{i}\le W wiW
背包问题的贪心算法:

  1. 将竞拍者按照以下公式的顺序从高到低排序:
    b 1 w 1 ≥ b 2 w 2 ≥ . . . ≥ b n w n \frac{b_{1}}{w_{1}}\ge \frac{b_{2}}{w_{2}}\ge ...\ge \frac{b_{n}}{w_{n}} w1b1w2b2...wnbn
  2. 按照这个顺序依次选取赢家,直到背包剩余容量容纳不下新的竞拍者的规模,算个停止。
  3. 要么返回上一步中的解,要么直接返回最高报价者。判断方法是,对比这两者的社会福利值,哪个更大就返回哪个。

读完一遍算法,博主又过一阵蒙蔽,这是什么选择?但是只要明白排序中第一个的报价不一定是最高的就能理解这个算法。这个算法是要不按照单价最高开始选取,要不就直接选择报价最高的。
该算法有个性质:对于任意一个背包问题,该算法所返回的值至少了最优解的一半。

证明

最优解说明

首先要说明一下这里的最优解是指“部分背包”的贪心算法的最优解。
“部分背包”的贪心算法:

  1. 将竞拍者按照以下公式的顺序从高到低排序:
    b 1
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值