原文:http://ju.outofmemory.cn/entry/116780

一分钟读懂互联网广告竞价策略GFP+GSP+VCG

两个广告位,三家广告主竞价,广告平台究竟应该制定广告竞价策略呢?这是本文即将分享的一个问题。

一、前序知识-传统竞价策略
英式拍卖(English Auction)
英式拍卖又叫公开增价拍卖OAB(Open Ascending Bid),卖家提供物品,在物品拍卖过程中,买家按照竞价阶梯由低至高喊价,出价最高者成为竞买的赢家。为了保证竞价收敛,一般会为竞价设定一个终止时间。这种模式非常容易理解,平时电影电视中经常看到。

荷兰式拍卖(Sealed-bid Auction)
荷兰式拍卖亦称公开减价拍卖ODB(Open Descending Bid),其过程与英式拍卖过程相反:竞价由高到低依次递减直到第一个买家应价时成交的一种拍卖方法。

第一价格密封拍卖FPSB(The first-price sealed auction)
第一价格密封拍卖,买方将自己的出价写在一个信封里,众多买方进行投标,同一时间揭晓信封价格,出价最高者竞价成功。

第二价格密封拍卖SPSB(The Second Price Sealed Auction)
又称为维克里拍卖(Vickrey Auction),其拍卖过程和第一价格密封拍卖过程一样,由出价最高的买家获得物品,但他只需要支付所有投标者中的第二高价。

二、核心章节-互联网广告竞价策略
广义第一价格GFP(Generalized First Price)
和传统第一密封竞价类似,出价高者得,需要支付自己提出的报价。
互联网广告竞价(例如搜索广告位竞价)如果按照这种形式竞价,缺点是:
1)平台方收益会非常不稳定;
2)竞价效率不高;

价格的波动:
B -> 2.01(出价超过2,C就会放弃出价)
A-> 2.02
B-> 2.03
A-> 2.04
A和B均会采取“微小差值策略”,直到一方放弃(此例中B会比A先放弃)。
一方放弃之后,另一方失去的竞争者,从而再次把价格拉低(A想,我没有竞争者了,为啥还出价这么高)。
放弃方得知价格被拉低后,又会开始新一轮的“微小差值策略”。

于是,广告位的价格极不稳定,呈现上图中的态势,Yahoo和Google初期都是采用这种策略,直到2002年Google提出了GSP竞价算法。

广义第二价格GSP(Generalized Second Price)
和传统第二密封竞价类似,出价高者得,需要支付出价第二高着提出的报价再加上一个最小值。

此时:
A的实际出价为4+0.01=4.01
B的实际出价为2+0.01=2.01
C竞价失败
GSP是一种稳定的竞价方式,可操作性很强,现阶段几乎所有的互联网广告平台都使用这一种竞价方式。
GSP的不足是,它也不是一种“鼓励讲真话”的机制,说实话不一定形成纳什均衡,竞价的结果不一定全局最优化的。于是,VCG竞价算法出现了。

VCG(Vickrey-Clarke-Groves)竞价机制
广告主为网民的一次点击支付他对其他广告主造成的效用损失。

上面的竞价机制描述比较晦涩,举例以说明定价过程:
1)假设A不参加竞价,B和C的社会总效用为200*4 + 100*2 = 1000元
2)A如果参加竞价,B和C的社会总效用为100*4 + 0*2 = 400元
3)因为A参加了竞价,导致B和C的社会总效用损失了1000 – 400 = 600元
4)于是,A需要为每一次点击支付600 / 200 = 3元
但实际应用中,受损者的社会总效用损失难于计算,故VCG竞价机制几乎没有谁真的来使用。

一分钟读懂互联网广告竞价策略GFP+GSP+VCG的更多相关文章

  1. 【转】一分钟读懂互联网广告竞价策略GFP+GSP+VCG

    参考这篇文章: http://ju.outofmemory.cn/entry/116780 一分钟读懂互联网广告竞价策略GFP+GSP+VCG 两个广告位,三家广告主竞价,广告平台究竟应该制定广告竞价 ...

  2. 一片非常有趣的文章 三分钟读懂TT猫分布式、微服务和集群之路

    原文http://www.cnblogs.com/smallSevens/p/7501932.html#3782600 三分钟读懂TT猫分布式.微服务和集群之路   针对新手入门的普及,有过大型网站技 ...

  3. 一分钟读懂低功耗蓝牙(BLE)连接数据包

    一分钟读懂低功耗蓝牙(BLE)连接数据包 1.概述 BLE 连接过程中有三个重要的数据包:SCAN_REQ, SCAN_RSP 和 CONNECT_REQ. SCAN_REQ: 扫描请求,由主设备(M ...

  4. 五分钟读懂UML类图

    平时阅读一些远吗分析类文章或是设计应用架构时没少与UML类图打交道.实际上,UML类图中最常用到的元素五分钟就能掌握,下面赶紧来一起认识一下它吧: 一.类的属性的表示方式 在UML类图中,类使用包含类 ...

  5. 五分钟读懂UML类图(转)

    平时阅读一些远吗分析类文章或是设计应用架构时没少与UML类图打交道.实际上,UML类图中最常用到的元素五分钟就能掌握,下面赶紧来一起认识一下它吧: 一.类的属性的表示方式 在UML类图中,类使用包含类 ...

  6. 五分钟读懂UML类图(转)

    平时阅读一些远吗分析类文章或是设计应用架构时没少与UML类图打交道.实际上,UML类图中最常用到的元素五分钟就能掌握,下面赶紧来一起认识一下它吧: 一.类的属性的表示方式 在UML类图中,类使用包含类 ...

  7. 一分钟读懂MySQL分布式消息的处理

    在很多MYSQL环境中,对于MYSQL的分布式事物处理一直是个难题,在当前互联网环境中,大多数应用系统是基于SOA的很多复杂接口之间的调用,并且事物之间的处理优先级也是有先后的,所以对于实际入库的数据 ...

  8. 三分钟读懂TT猫分布式、微服务和集群之路

    针对入门新手的普及,有过大型网站技术架构牛人路过,别耽误浪费了时间,阅读之前,请确保有一定的网络基础,熟练使用Linux,浏览大概需要3-5分钟的时间,结尾有彩蛋. 目录 分布式 微服务 负载均衡集群 ...

  9. 三分钟读懂TT猫分布式、微服务和集群之路 (转)

    http://www.cnblogs.com/smallSevens/p/7501932.html 针对新手入门的普及,有过大型网站技术架构牛人路过,别耽误浪费了时间,阅读之前,请确保有一定的网络基础 ...

随机推荐

  1. CentOS 7安装tunctl

    cat << EOF > /etc/yum.repos.d/nux-misc.repo [nux-misc] name=Nux Misc baseurl=http://li.nux. ...

  2. swddude -- A SWD programmer for ARM Cortex microcontrollers.

    Introducing swddude I love the ARM Cortex-M series of microcontrollers.   The sheer computational po ...

  3. Revit API封装一个通用函数“过名称找元素”

    感觉这个函数不错.通过这种方式寻找元素经常需要用到. )         {  ];         }         // cannot find it.         return null; ...

  4. [Git]git教程

    摘要 目前公司项目逐渐都要迁移到git上,使用git进行版本控制及源代码管理. git学习资料 一个小时学会Git 权威Git书籍ProGit(中文版) git官网:http://git-scm.co ...

  5. webpack原理与实战

    webpack是一个js打包工具,不一个完整的前端构建工具.它的流行得益于模块化和单页应用的流行.webpack提供扩展机制,在庞大的社区支持下各种场景基本它都可找到解决方案.本文的目的是教会你用we ...

  6. javascript:常用数组操作

    concat()方法 数组和数组的 粘结: var a=[1,2,3,4]; var b=[5,6,7,8]; var c=a.concat(b); console.log(c); // [1,2,3 ...

  7. Java并发编程的艺术(十)——线程池(1)

    线程池的作用 减少资源的开销 减少了每次创建线程.销毁线程的开销. 提高响应速度 每次请求到来时,由于线程的创建已经完成,故可以直接执行任务,因此提高了响应速度. 提高线程的可管理性 线程是一种稀缺资 ...

  8. 【转】内存分析工具 MAT 的使用

    本文转载自:http://blog.csdn.net/aaa2832/article/details/19419679 1 内存泄漏的排查方法 Dalvik Debug Monitor Server ...

  9. vue quill editor输入文字出现首字母的问题

    当使用vue quill editor输入中文时,第一个中文的汉语拼音第一个字母会显示如图. 解决的办法就是升级vue quill editor js文件的版本,目前的我升级之后ok的版本是 < ...

  10. 关于MySQL的行转列的简单应用

    sql 脚本 -- 创建表 学生表 CREATE TABLE `student` ( `stuid` VARCHAR(16) NOT NULL COMMENT '学号', `stunm` VARCHA ...