CN109829753B - 一种对广告订单分配流量的方法及设备 - Google Patents
一种对广告订单分配流量的方法及设备 Download PDFInfo
- Publication number
- CN109829753B CN109829753B CN201910015119.9A CN201910015119A CN109829753B CN 109829753 B CN109829753 B CN 109829753B CN 201910015119 A CN201910015119 A CN 201910015119A CN 109829753 B CN109829753 B CN 109829753B
- Authority
- CN
- China
- Prior art keywords
- flow
- order
- orders
- advertisement
- optimization
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种对广告订单分配流量的方法及设备,用于对HWM算法求得的初始流量分配方案进行优化,通过调整各类流量分配给各个订单的比例继续对剩余广告订单进行分配,能够在较短时间内得到分配方案并且减少赔偿损失。该方法包括:获取广告订单,利用高水位HWM算法确定广告订单的初始流量分配方案;基于所述初始流量分配方案进行至少一次优化,每次完成优化得到的流量分配方案为下一次优化前的流量分配方案,其中,每次进行优化时,根据优化前的流量分配方案,及未满足订单流量需求的剩余广告订单在满足订单流量需求时所需流量,为剩余广告订单分配满足订单流量需求时所需的至少部分流量。
Description
技术领域
本发明涉及广告分配,尤其涉及一种对广告订单分配流量的方法及设备。
背景技术
在线广告有很大一部分是通过担保式合约来售卖的,这类广告的特点是,广告***要保证广告主要求的定向条件的曝光量,并且完成该曝光量是有时间限制的,若超过限制的时间没有完成的话可能会遭受赔偿。实际应用中,广告主主要关心合约所要求的量是否能够完成,对广告***来说,当一次曝光机会到来时,可能会有多个广告主的单子满足曝光要求,广告***需要决定这次曝光该展示哪一个合约,并且保证其他所有合约也完成,这涉及到广告的分配算法,目前应用最为广泛的广告分配算法是高水位HWM(High watermark)算法和页岩SHALE算法,其中,HWM算法是一种应用于广告分配的贪婪式启发算法,SHALE算法是一种利用KKT条件求解广告分配问题的算法。
利用上述两种算法为广告订单分配流量,均存在以下缺陷:
HWM算法虽然能够在较短时间内求得较满意的分配方案,HWM算法往往不能求得最优解即不能最大限度地将合约分配下去。
SHALE算法虽然能够求得比HWM算法更优的分配方案,但是算法的计算复杂度远高于HWM算法,求解时间久。
发明内容
本发明提供一种对广告订单分配流量的方法及设备,用于对HWM算法求得的初始流量分配方案进行优化,通过调整各类流量分配给各个订单的比例继续对剩余广告订单进行分配,能够在较短时间内得到分配方案并且减少赔偿损失。
第一方面,本发明实施例提供一种对广告订单分配流量的方法,该方法包括:
获取广告订单,利用高水位HWM算法确定广告订单的初始流量分配方案;
基于所述初始流量分配方案进行至少一次优化,每次完成优化得到的流量分配方案为下一次优化前的流量分配方案,其中,每次进行优化时,根据优化前的流量分配方案,及未满足订单流量需求的剩余广告订单在满足订单流量需求时所需流量,为剩余广告订单分配满足订单流量需求时所需的至少部分流量。
上述实施方式,基于HWM算法是一种应用于广告分配的贪婪式启发算法,该算法不能够最大限度的将广告分配下去,通过对HWM算法确定的广告订单的初始流量分配方案进行至少一次优化,对初始流量分配方案中的未被分配的剩余广告订单分配至少部分流量,在原先已分配的广告订单的基础上,继续将剩余广告订单进行分配,一定程度上减少了剩余订单的数量,同时也减少了不能完成广告订单造成的违约赔偿,能够避免只通过HWM算法对广告进行分配时,给广告订单签约双方带来的损失。
作为一种可选的实施方式,还包括:
基于优化前的流量分配方案确定剩余广告订单的第一违约成本,及基于优化后的流量分配方案确定剩余广告订单的第二违约成本;
确定所述第一违约成本大于所述第二违约成本时,触发进行下一次优化,否则停止优化。
作为一种可选的实施方式,基于优化前/优化后的流量分配方案确定剩余广告订单的第一违约成本/第二违约成本,包括:
基于剩余广告订单的违约系数及根据优化前/优化后的流量分配方案确定的剩余广告订单的剩余数量,确定剩余广告订单的第一违约成本/第二违约成本。
作为一种可选的实施方式,根据优化前的流量分配方案,及未满足订单流量需求的剩余广告订单在满足订单流量需求时所需流量,为剩余广告订单分配满足订单流量需求时所需的至少部分流量,包括:
根据优化前的流量分配方案及未满足订单流量需求的剩余广告订单,确定已被分配的且能被剩余广告订单使用的至少一个类型流量;
根据所述至少一个类型流量被分配的比例,及剩余广告订单在满足订单流量需求时所需流量,从所述至少一个类型流量中,为剩余广告订单分配满足订单流量需求时所需的至少部分流量。
作为一种可选的实施方式,根据所述至少一个类型流量被分配的比例,及剩余广告订单在满足订单流量需求时所需流量,从所述至少一个类型流量中,为剩余广告订单分配满足订单流量需求时所需的至少部分流量,包括:
根据所述至少一个类型流量被分配的比例,及剩余广告订单在满足订单流量需求时所需流量,从所述至少一个类型流量中选择被分配的比例小于设定第一阈值类型流量,为剩余广告订单分配满足订单流量需求时所需的至少部分流量,且分配后每个类型流量的被分配比例不大于设定第二阈值。
作为一种可选的实施方式,为剩余广告订单分配满足订单流量需求时所需的至少部分流量之后,还包括:
确定与当前广告订单占用同一类型流量的其他各个订单;
根据当前未完全被分配的各个类型流量的剩余流量,从当前未完全被分配的各个类型流量中,为所述其他各个订单重新分配至少部分流量。
作为一种可选的实施方式,为所述其他各个订单重新分配至少部分流量之后,还包括:
确定当前被分配比例超过设定高门限的各类型流量中的广告订单;
从当前被分配比例小于设定低门限的各类型流量中,重新为所述确定的广告订单分配至少部分流量。
第二方面,本发明实施例提供一种对广告订单分配流量的设备,该设备包括:处理器以及存储器,其中,所述存储器存储有程序代码,当所述程序代码被所述处理器执行时,使得所述处理器用于执行如下步骤:
获取广告订单,利用高水位HWM算法确定广告订单的初始流量分配方案;
基于所述初始流量分配方案进行至少一次优化,每次完成优化得到的流量分配方案为下一次优化前的流量分配方案,其中,每次进行优化时,根据优化前的流量分配方案,及未满足订单流量需求的剩余广告订单在满足订单流量需求时所需流量,为剩余广告订单分配满足订单流量需求时所需的至少部分流量。
作为一种可选的实施方式,所述处理器还用于:
基于优化前的流量分配方案确定剩余广告订单的第一违约成本,及基于优化后的流量分配方案确定剩余广告订单的第二违约成本;
确定所述第一违约成本大于所述第二违约成本时,触发进行下一次优化,否则停止优化。
作为一种可选的实施方式,所述处理器具体用于:
基于剩余广告订单的违约系数及根据优化前/优化后的流量分配方案确定的剩余广告订单的剩余数量,确定剩余广告订单的第一违约成本/第二违约成本。
作为一种可选的实施方式,所述处理器具体用于:
根据优化前的流量分配方案及未满足订单流量需求的剩余广告订单,确定已被分配的且能被剩余广告订单使用的至少一个类型流量;
根据所述至少一个类型流量被分配的比例,及剩余广告订单在满足订单流量需求时所需流量,从所述至少一个类型流量中,为剩余广告订单分配满足订单流量需求时所需的至少部分流量。
作为一种可选的实施方式,所述处理器具体用于:
根据所述至少一个类型流量被分配的比例,及剩余广告订单在满足订单流量需求时所需流量,从所述至少一个类型流量中选择被分配的比例小于设定第一阈值类型流量,为剩余广告订单分配满足订单流量需求时所需的至少部分流量,且分配后每个类型流量的被分配比例不大于设定第二阈值。
作为一种可选的实施方式,所述处理器具体用于:
确定与当前广告订单占用同一类型流量的其他各个订单;
根据当前未完全被分配的各个类型流量的剩余流量,从当前未完全被分配的各个类型流量中,为所述其他各个订单重新分配至少部分流量。
作为一种可选的实施方式,所述处理器具体还用于:
确定当前被分配比例超过设定高门限的各类型流量中的广告订单;
从当前被分配比例小于设定低门限的各类型流量中,重新为所述确定的广告订单分配至少部分流量。
第三方面,本发明实施例还提供一种对广告订单分配流量的设备,该设备包括初始流量分配方案模块、优化初始流量分配方案模块,其中:
初始流量分配方案模块,用于获取广告订单,利用高水位HWM算法确定广告订单的初始流量分配方案;
优化初始流量分配方案模块,用于基于所述初始流量分配方案进行至少一次优化,每次完成优化得到的流量分配方案为下一次优化前的流量分配方案,其中,每次进行优化时,根据优化前的流量分配方案,及未满足订单流量需求的剩余广告订单在满足订单流量需求时所需流量,为剩余广告订单分配满足订单流量需求时所需的至少部分流量。
作为一种可选的实施方式,所述设备还用于:
基于优化前的流量分配方案确定剩余广告订单的第一违约成本,及基于优化后的流量分配方案确定剩余广告订单的第二违约成本;
确定所述第一违约成本大于所述第二违约成本时,触发进行下一次优化,否则停止优化。
作为一种可选的实施方式,所述设备具体用于:
基于剩余广告订单的违约系数及根据优化前/优化后的流量分配方案确定的剩余广告订单的剩余数量,确定剩余广告订单的第一违约成本/第二违约成本。
作为一种可选的实施方式,所述优化初始流量分配方案模块具体用于:
根据优化前的流量分配方案及未满足订单流量需求的剩余广告订单,确定已被分配的且能被剩余广告订单使用的至少一个类型流量;
根据所述至少一个类型流量被分配的比例,及剩余广告订单在满足订单流量需求时所需流量,从所述至少一个类型流量中,为剩余广告订单分配满足订单流量需求时所需的至少部分流量。
作为一种可选的实施方式,所述优化初始流量分配方案模块具体用于:
根据所述至少一个类型流量被分配的比例,及剩余广告订单在满足订单流量需求时所需流量,从所述至少一个类型流量中选择被分配的比例小于设定第一阈值类型流量,为剩余广告订单分配满足订单流量需求时所需的至少部分流量,且分配后每个类型流量的被分配比例不大于设定第二阈值。
作为一种可选的实施方式,所述优化初始流量分配方案模块具体用于:
确定与当前广告订单占用同一类型流量的其他各个订单;
根据当前未完全被分配的各个类型流量的剩余流量,从当前未完全被分配的各个类型流量中,为所述其他各个订单重新分配至少部分流量。
作为一种可选的实施方式,所述优化初始流量分配方案模块具体还用于:
确定当前被分配比例超过设定高门限的各类型流量中的广告订单;
从当前被分配比例小于设定低门限的各类型流量中,重新为所述确定的广告订单分配至少部分流量。
第四方面,本发明实施例还提供一种计算机存储介质,其上存储有计算机程序,该程序被处理单元执行时实现第一方面所述方法的步骤。
另外,第二方面至第四方面中任一种实现方式所带来的技术效果可参见第一方面中不同实现方式所带来的技术效果,此处不再赘述。
附图说明
图1A为一种对广告订单分配流量的方法步骤图。
图1B为一种最大程度对广告订单分配流量的方法步骤图。
图2A为未分配的剩余订单的优化流程图。
图2B为剩余流量的优化流程图。
图3为一种对广告订单分配流量的模块图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
下面对文中出现的一些词语进行解释:
1、本发明实施例中术语“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
2、本发明实施例中术语“HWM算法”,是高水位(High water mark,HWM)算法,是一种应用于广告分配的贪婪式启发算法。
3、本发明实施例中术语“SHALE算法”,是页岩算法,是一种利用KKT条件求解广告分配问题的算法,其中KKT(Karush-Kuhn-Tucher)条件在优化理论中是非线性规划(nonlinear programming)最佳解的必要条件。
4、本发明实施例中的“广告订单”、“订单”及“广告”是同一个意思,为了简化说明,在说明书中统一用“订单”进行说明。
本发明实施例描述的应用场景是为了更加清楚的说明本发明实施例的技术方案,并不构成对于本发明实施例提供的技术方案的限定,本领域普通技术人员可知,随着新应用场景的出现,本发明实施例提供的技术方案对于类似的技术问题,同样适用。其中,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
实施例一
HWM算法在广告分配问题的数学模型中,如下式所示,HWM算法是求下式的最小值,对流量分配方案xij中广告订单投放的均匀性及是否能够完成订单合约要求的订单量进行优化。
Sj=∑i∈Γ(j)si;θij=dj/Sj;
上式中,流量分配方案xij是流量i分配给订单j的比例,xij大于0小于1;
si是流量i的大小,dj为订单j要求的广告曝光量,Sj是订单均匀分配给各可用流量的理想值,Γ(j)是满足订单j的流量集合;
Vj是订单j的优先级即订单需要均匀分配的优先程度,uj是订单j未能分配的订单量,pj是订单j未能分配的惩罚系数,其中,惩罚系数表示广告订单的违约系数,不同的订单的违约成本不同,在HWM算法订单分配数学模型中用惩罚系数体现。
本实施例中基于上述HWM算法订单分配数学模型得到的xij作为初始流量分配方案,为了对应上述HWM算法中的流量i的描述,将流量按类型不同区分,流量i表示流量的类型是i,将不同的订单用订单j表示,其中,i、j为正整数,如图1A所示,具体的步骤如下:
步骤101:获取广告订单,利用高水位HWM算法确定广告订单的初始流量分配方案;
实施中,通过HWM算法确定的订单的初始流量分配方案,实际上是确定了xij,即确定了流量i分配给订单j的比例,其中,i大于零小于流量类型总数量,j大于零小于订单类型总数量,xij的值大于零小于1。
步骤102:基于所述初始流量分配方案进行至少一次优化,每次完成优化得到的流量分配方案为下一次优化前的流量分配方案,其中,每次进行优化时,根据优化前的流量分配方案,及未满足订单流量需求的剩余广告订单在满足订单流量需求时所需流量,为剩余广告订单分配满足订单流量需求时所需的至少部分流量。
利用HWM算法获得初始流量分配方案后,同时也能够获得该初始分配方案中未分配的剩余的订单以及未分配的剩余的流量,基于所述初始流量分配方案中进行至少一次优化,如果只进行一次优化,能够根据初始流量分配方案中流量i分配给订单j的比例,确定未满足订单流量需求的剩余广告订单的数量,以及完成至少部分订单所需的流量,不减少已分配的订单所需的流量,为剩余订单分配满足订单流量需求时所需的至少部分流量,能够减少剩余订单的数量,相应的也能够减少赔偿的损失;
如果在一次优化后继续优化,每次完成优化得到的流量分配方案为下一次优化前的流量分配方案,能够在每一次优化后都能减少剩余订单的数量,尽可能的完成所有的订单,最大程度减少赔偿的损失。
其中,本发明实施例中对已分配的订单所需的流量总数不作改变,一种情况是对已分配的订单使用的不同的流量大小进行调整,改变同一个已分配的订单使用的不同流量的流量大小;另一种情况是,对已分配的订单使用的不同的流量不作任何调整,只针对剩余的订单,将剩余的可用流量分配给剩余的订单。使用上述任一种情况,或者将两种情况结合使用,都能够对剩余的订单进行流量的分配,都能够达到减少赔偿损失的目的。
为了能够最大程度的将所有的订单分配下去,本发明实施例还提供了一种可实施的方式,具体步骤如下:
步骤103:基于优化前的流量分配方案确定剩余广告订单的第一违约成本,及基于优化后的流量分配方案确定剩余广告订单的第二违约成本;
具体的,违约成本根据得到优化前/优化后流量分配方案后,能够得到剩余广告订单的数量,同时,不同的广告订单根据签约金额的不同能够确定不同的违约系数,基于剩余广告订单的违约系数及根据优化前/优化后的流量分配方案确定的剩余广告订单的剩余数量,能够确定剩余广告订单的第一违约成本/第二违约成本,违约成本可用下式表示:
∑jpjuj,其中,uj是订单j未能分配的订单量,pj是订单j未能分配的惩罚系数。
步骤104:确定所述第一违约成本大于所述第二违约成本时,触发进行下一次优化,否则停止优化。
具体的,根据违约成本判断是否触发进行下一次优化,第一违约成本大于所述第二违约成本时,说明当前优化得到的违约成本小与优化前得到的违约成本,通过继续优化将违约成本进一步减小的可能,因此,利用上述步骤102继续进行优化,根据优化前的流量分配方案,及未满足订单流量需求的剩余广告订单在满足订单流量需求时所需流量,为剩余广告订单分配满足订单流量需求时所需的至少部分流量。
如图1B所示,步骤103、步骤104的实施方式,能够配合上述步骤101、步骤102针对所有广告订单,最大限度的将所有的广告订单分配下去,达到最佳效果,能够最大化的减少违约损失。通过步骤101、步骤102、步骤103以及步骤104,根据违约成本判断不是最优的分配方案时,对已分配的订单使用的不同的流量大小进行调整,将剩余的广告订单不断被分配下去直至达到最小的违约成本,最大限度的减少违约成本。
并且,针对不同合约的违约成本对HWM算法求得的初始解进行优化,考虑违约成本的同时,能够最大限度的将合约分配下去,进一步提高HWM所求广告分配方案的质量,能够取得和SHALE算法同样的订单分配效果,相比用SHALE算法对广告订单分配流量时使用的计算时间更少。
每次进行优化时,根据优化前的流量分配方案,及未满足订单流量需求的剩余广告订单在满足订单流量需求时所需流量,为剩余广告订单分配满足订单流量需求时所需的至少部分流量,具体实施如下:
一方面,针对未分配的剩余订单进行优化。
根据优化前的流量分配方案及未满足订单流量需求的剩余广告订单,确定已被分配的且能被剩余广告订单使用的至少一个类型流量;
根据所述至少一个类型流量被分配的比例,及剩余广告订单在满足订单流量需求时所需流量,从所述至少一个类型流量中,为剩余广告订单分配满足订单流量需求时所需的至少部分流量。
具体的,根据为剩余广告订单分配流量的流量是未被分配的剩余流量或者已分配的流量,有以下两种分配流量的方式:
方式一,利用剩余流量为剩余广告订单分配流量;
具体的,根据优化前的流量分配方案中,确定剩余订单的数量、当前剩余订单能够使用的剩余流量类型i;
当剩余流量i被分配了30%时,剩余70%的流量能够分配给剩余订单,同时,剩余流量i分配给剩余订单的流量和剩余订单在满足订单流量需求时所需流量有关,即若剩余订单j需要5M流量能满足订单流量需求,但流量i剩余10M流量可以分配该剩余订单j时,最终流量i分配给剩余订单j5M流量;同样的,若剩余订单j需要10M流量才能满足订单流量需求,但流量i只剩余5M流量可以分配该剩余订单j时,最终流量i分配给剩余订单j5M流量。
方式二,利用已分配的流量k为剩余广告订单分配流量;
具体的,根据优化前的流量分配方案中,确定剩余订单的数量、当前剩余订单j能够使用的已分配的流量类型k,对已分配流量k进行重新分配,用剩余流量重新分配给其它占用流量k的订单g,从而能够将已分配流量k的部分流量重新分配给剩余订单,其中流量k能够重新分配给剩余订单的部分流量的大小是根据流量k已分配给订单g的流量kg,与剩余流量能够重新分配给订单g的流量ig中的最小值确定的;
方式三,结合方式一和方式二,利用已分配和未分配的流量为剩余广告订单分配流量。
作为一种可选的实施方式,根据所述至少一个类型流量被分配的比例,及剩余广告订单在满足订单流量需求时所需流量,从所述至少一个类型流量中,为剩余广告订单分配满足订单流量需求时所需的至少部分流量,包括:
根据所述至少一个类型流量被分配的比例,及剩余广告订单在满足订单流量需求时所需流量,从所述至少一个类型流量中选择被分配的比例小于设定第一阈值类型流量,为剩余广告订单分配满足订单流量需求时所需的至少部分流量,且分配后每个类型流量的被分配比例不大于设定第二阈值。
具体的,确定能够满足剩余订单的多个类型流量中,选择该类型流量被分配的比例较小的流量类型,即能够分配的流量较多的流量类型为剩余订单分配流量;同时,该流量类型为剩余订单分配流量后剩余的类型流量被分配的比例不大于第二阈值,当第二阈值取100%时,确定流量类型为剩余订单分配流量后不能无剩余流量。
上述方式三的具体步骤如图2A所示,对未完成的订单进行流量的分配,其中,M为流量类型总数,N为订单总数,i、p表示流量类型,i表示所有的流量类型,p表示剩余的流量类型,j表示剩余订单中的任一订单,k表示全部订单中的任一订单,Γi,j=1或0,其中Γi,j=1表示流量i能够分配给订单j,Γi,j=0表示流量i不能分配给订单j,其中,对流程图2A中的步骤进行解释:
步骤200:选择第一个剩余订单j=1。
步骤201:选择第一个流量i=1。
步骤202:对流量i是否能够分配给订单j进行判断,如果是执行步骤206,否则执行步骤203。
步骤203:选择下一个流量,可选的选择第二个流量i=2。
步骤204:对流量i是否小于等于M进行判断,如果是执行步骤202,否则执行步骤205。
步骤205:结束对当前剩余订单的分配,继续对下一个剩余订单进行流量的分配。
步骤206:选择第一个订单k=1。
步骤207:判断流量i是否分配给订单k且k≠j,如果流量i分配给订单k且k≠j,执行步骤208,否则执行步骤210;
步骤208:判断是否存在剩余流量p能够分配给订单k,如果是执行步骤209,否则执行步骤210;
步骤209:使用剩余流量p对原先分配给订单k的流量i进行重新分配,用剩余流量重新分配给订单k在流量i上占用的部分或全部流量,同时将流量i中的所述占用的部分/全部流量分配给剩余订单j;
具体的,用剩余流量p重新分配给订单k占用在流量i上的部分/全部的流量A,流量i将订单k解除占用的流量A重新分配给剩余订单j,所述流量A指流量的大小是A。
步骤210:选择下一个订单,可选的,选择第二个订单k=2。
步骤211:对订单k是否小于等于N进行判断,如果是执行步骤207,否则执行步骤203。
另一方面,对上述针对未分配的剩余订单进行优化后,为了平衡所有类型的剩余流量中所分配的流量比例,本实施例还提供如下的方式配合上述针对未分配的剩余订单进行优化的方式,对已分配完无剩余的流量类型进行均衡优化,使无剩余的流量类型重新分配流量后产生剩余流量,从而达到最佳优化效果。
具体的,为剩余广告订单分配满足订单流量需求时所需的至少部分流量之后,还包括:
确定与当前广告订单占用同一类型流量的其他各个订单;
根据当前未完全被分配的各个类型流量的剩余流量,从当前未完全被分配的各个类型流量中,为所述其他各个订单重新分配至少部分流量。
上述当前广告订单为所有广告订单中的任一订单,为所述其他各个订单重新分配至少部分流量后能够一定程度上均衡所有类型的剩余流量中所分配的流量比例,从而能够一定程度上将所述剩余的流量重新分配给剩余订单。
作为一种可选的实施方式,为所述其他各个订单重新分配至少部分流量之后,还包括:
确定当前被分配比例超过设定高门限的各类型流量中的广告订单;
从当前被分配比例小于设定低门限的各类型流量中,重新为所述确定的广告订单分配至少部分流量。
具体的,对剩余流量进行重新分配时,可以针对已分配完的各类型流量进行流量的调整,根据当前剩余流量类型中能够分配的流量,对原先分配给订单j后无剩余的流量进行重新分配;将当前剩余流量中的部分或全部流量分配给所述订单j,以使原先分配订单j后无剩余的流量产生剩余流量,对已分配完的各类型流量进行流量的调整。
具体的实施步骤如图2B所示,对已分配完的流量进行重新分配,其中,M为流量类型总数,N为订单总数,i表示流量类型,i表示剩余的流量类型,k表示全部流量类型中的任一流量类型,j表示全部订单中的任一订单,Γk,j=1或0,其中Γkj=1表示流量k能够分配给订单j,Γk,j=0表示流量k不能分配给订单j,其中,对流程图2B中的步骤进行解释:
步骤212:选择第一个剩余流量i=1。
步骤213:选择第一个订单j=1。
步骤214:对流量i是否能够分配给订单j进行判断,如果是执行步骤218,否则执行步骤215。
步骤215:选择下一个订单,可选的选择第二个订单j=2。
步骤216:对订单j是否小于等于N进行判断,如果是执行步骤214,否则执行步骤217。
步骤217:结束对当前剩余流量的分配,继续对下一个剩余流量进行分配。
步骤218:选择第一个流量k=1。
步骤219:判断流量k是否分配给订单j且k≠i,如果流量k分配给订单j且k≠j,执行步骤220,否则执行步骤222。
步骤220:判断流量k分配给订单j后,流量k是否无剩余流量了,如果是执行步骤221,否则执行步骤222。
步骤221:使用剩余流量i对原先分配给订单j的流量k进行重新分配,用剩余流量i重新分配给订单j在流量k上占用的部分或全部流量,从而使得原先分配给订单j的流量k产生剩余流量。
步骤222:选择下一个流量,可选的,选择第二个流量k=2。
步骤223:对流量k是否小于等于M进行判断,如果是执行步骤219,否则执行步骤215。
实施例二
基于相同的发明构思,本发明实施例还提供一种对广告订单分配流量的设备,由于该设备即是本发明实施例方法中的设备,并且该设备解决问题的原理与该方法相似,因此,该设备的实施可参见方法实施例中的实施,重复之处不再赘述。
该设备包括:处理器以及存储器,其中,所述存储器存储有程序代码,当所述程序代码被所述处理器执行时,使得所述处理器用于执行以下步骤:
获取广告订单,利用高水位HWM算法确定广告订单的初始流量分配方案;
基于所述初始流量分配方案进行至少一次优化,每次完成优化得到的流量分配方案为下一次优化前的流量分配方案,其中,每次进行优化时,根据优化前的流量分配方案,及未满足订单流量需求的剩余广告订单在满足订单流量需求时所需流量,为剩余广告订单分配满足订单流量需求时所需的至少部分流量。
作为一种可选的实施方式,所述处理器还用于:
基于优化前的流量分配方案确定剩余广告订单的第一违约成本,及基于优化后的流量分配方案确定剩余广告订单的第二违约成本;
确定所述第一违约成本大于所述第二违约成本时,触发进行下一次优化,否则停止优化。
作为一种可选的实施方式,所述处理器具体用于:
基于剩余广告订单的违约系数及根据优化前/优化后的流量分配方案确定的剩余广告订单的剩余数量,确定剩余广告订单的第一违约成本/第二违约成本。
作为一种可选的实施方式,所述处理器具体用于:
根据优化前的流量分配方案及未满足订单流量需求的剩余广告订单,确定已被分配的且能被剩余广告订单使用的至少一个类型流量;
根据所述至少一个类型流量被分配的比例,及剩余广告订单在满足订单流量需求时所需流量,从所述至少一个类型流量中,为剩余广告订单分配满足订单流量需求时所需的至少部分流量。
作为一种可选的实施方式,所述处理器具体用于:
根据所述至少一个类型流量被分配的比例,及剩余广告订单在满足订单流量需求时所需流量,从所述至少一个类型流量中选择被分配的比例小于设定第一阈值类型流量,为剩余广告订单分配满足订单流量需求时所需的至少部分流量,且分配后每个类型流量的被分配比例不大于设定第二阈值。
作为一种可选的实施方式,所述处理器具体用于:
确定与当前广告订单占用同一类型流量的其他各个订单;
根据当前未完全被分配的各个类型流量的剩余流量,从当前未完全被分配的各个类型流量中,为所述其他各个订单重新分配至少部分流量。
作为一种可选的实施方式,所述处理器具体还用于:
确定当前被分配比例超过设定高门限的各类型流量中的广告订单;
从当前被分配比例小于设定低门限的各类型流量中,重新为所述确定的广告订单分配至少部分流量。
实施例三
基于同一发明构思,本发明还提供一种对广告订单分配流量的设备,如图3所示,该设备包括初始流量分配方案模块301、优化初始流量分配方案模块302,其中:
初始流量分配方案模块301,用于获取广告订单,利用高水位HWM算法确定广告订单的初始流量分配方案;
优化初始流量分配方案模块302,用于基于所述初始流量分配方案进行至少一次优化,每次完成优化得到的流量分配方案为下一次优化前的流量分配方案,其中,每次进行优化时,根据优化前的流量分配方案,及未满足订单流量需求的剩余广告订单在满足订单流量需求时所需流量,为剩余广告订单分配满足订单流量需求时所需的至少部分流量。
作为一种可选的实施方式,所述设备还用于:
基于优化前的流量分配方案确定剩余广告订单的第一违约成本,及基于优化后的流量分配方案确定剩余广告订单的第二违约成本;
确定所述第一违约成本大于所述第二违约成本时,触发进行下一次优化,否则停止优化。
作为一种可选的实施方式,所述设备具体用于:
基于剩余广告订单的违约系数及根据优化前/优化后的流量分配方案确定的剩余广告订单的剩余数量,确定剩余广告订单的第一违约成本/第二违约成本。
作为一种可选的实施方式,所述优化初始流量分配方案模块具体用于:
根据优化前的流量分配方案及未满足订单流量需求的剩余广告订单,确定已被分配的且能被剩余广告订单使用的至少一个类型流量;
根据所述至少一个类型流量被分配的比例,及剩余广告订单在满足订单流量需求时所需流量,从所述至少一个类型流量中,为剩余广告订单分配满足订单流量需求时所需的至少部分流量。
作为一种可选的实施方式,所述优化初始流量分配方案模块302具体用于:
根据所述至少一个类型流量被分配的比例,及剩余广告订单在满足订单流量需求时所需流量,从所述至少一个类型流量中选择被分配的比例小于设定第一阈值类型流量,为剩余广告订单分配满足订单流量需求时所需的至少部分流量,且分配后每个类型流量的被分配比例不大于设定第二阈值。
作为一种可选的实施方式,所述优化初始流量分配方案模块302具体用于:
确定与当前广告订单占用同一类型流量的其他各个订单;
根据当前未完全被分配的各个类型流量的剩余流量,从当前未完全被分配的各个类型流量中,为所述其他各个订单重新分配至少部分流量。
作为一种可选的实施方式,所述优化初始流量分配方案模块302具体还用于:
确定当前被分配比例超过设定高门限的各类型流量中的广告订单;
从当前被分配比例小于设定低门限的各类型流量中,重新为所述确定的广告订单分配至少部分流量。
实施例四
基于同一发明构思,本发明实施例还提供一种计算机存储介质,其上存储有计算机程序,该程序被处理单元执行时实现如下步骤:
获取广告订单,利用高水位HWM算法确定广告订单的初始流量分配方案;
基于所述初始流量分配方案进行至少一次优化,每次完成优化得到的流量分配方案为下一次优化前的流量分配方案,其中,每次进行优化时,根据优化前的流量分配方案,及未满足订单流量需求的剩余广告订单在满足订单流量需求时所需流量,为剩余广告订单分配满足订单流量需求时所需的至少部分流量。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的设备。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令设备的制造品,该指令设备实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (5)
1.一种对广告订单分配流量的方法,其特征在于,该方法包括:
获取广告订单,利用高水位HWM算法确定广告订单的初始流量分配方案;其中,所述HWM算法订单分配数学模型得到的xij作为初始流量分配方案,i表示流量的类型是i,j表示不同的订单,i、j均为正整数;
基于所述初始流量分配方案进行至少一次优化,每次完成优化得到的流量分配方案为下一次优化前的流量分配方案,其中,每次进行优化时,根据优化前的流量分配方案及未满足订单流量需求的剩余广告订单,确定已被分配的且能被剩余广告订单使用的至少一个类型流量;
根据所述至少一个类型流量被分配的比例,及剩余广告订单在满足订单流量需求时所需流量,从所述至少一个类型流量中选择被分配的比例小于设定第一阈值类型流量,为剩余广告订单分配满足订单流量需求时所需的至少部分流量,且分配后每个类型流量的被分配比例不大于设定第二阈值;
基于优化前的流量分配方案确定剩余广告订单的第一违约成本,及基于优化后的流量分配方案确定剩余广告订单的第二违约成本;
确定所述第一违约成本大于所述第二违约成本时,针对已分配完的各类型流量进行调整并触发进行下一次优化,否则停止优化。
2.根据权利要求1所述的方法,其特征在于,基于优化前/优化后的流量分配方案确定剩余广告订单的第一违约成本/第二违约成本,包括:
基于剩余广告订单的违约系数及根据优化前/优化后的流量分配方案确定的剩余广告订单的剩余数量,确定剩余广告订单的第一违约成本/第二违约成本。
3.根据权利要求1所述的方法,其特征在于,为剩余广告订单分配满足订单流量需求时所需的至少部分流量之后,还包括:
确定与当前广告订单占用同一类型流量的其他各个订单;
根据当前未完全被分配的各个类型流量的剩余流量,从当前未完全被分配的各个类型流量中,为所述其他各个订单重新分配至少部分流量。
4.根据权利要求3所述的方法,其特征在于,为所述其他各个订单重新分配至少部分流量之后,还包括:
确定当前被分配比例超过设定高门限的各类型流量中的广告订单;
从当前被分配比例小于设定低门限的各类型流量中,重新为所述确定的广告订单分配至少部分流量。
5.一种对广告订单分配流量的设备,其特征在于,该设备包括:处理器以及存储器,其中,所述存储器存储有程序代码,当所述程序代码被所述处理器执行时,使得所述处理器用于执行以下步骤:
获取广告订单,利用高水位HWM算法确定广告订单的初始流量分配方案;其中,所述HWM算法订单分配数学模型得到的xij作为初始流量分配方案,i表示流量的类型是i,j表示不同的订单,i、j均为正整数;
基于所述初始流量分配方案进行至少一次优化,每次完成优化得到的流量分配方案为下一次优化前的流量分配方案,其中,每次进行优化时,
根据优化前的流量分配方案及未满足订单流量需求的剩余广告订单,确定已被分配的且能被剩余广告订单使用的至少一个类型流量;
根据所述至少一个类型流量被分配的比例,及剩余广告订单在满足订单流量需求时所需流量,从所述至少一个类型流量中选择被分配的比例小于设定第一阈值类型流量,为剩余广告订单分配满足订单流量需求时所需的至少部分流量,且分配后每个类型流量的被分配比例不大于设定第二阈值;
基于优化前的流量分配方案确定剩余广告订单的第一违约成本,及基于优化后的流量分配方案确定剩余广告订单的第二违约成本;
确定所述第一违约成本大于所述第二违约成本时,针对已分配完的各类型流量进行调整并触发进行下一次优化,否则停止优化。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910015119.9A CN109829753B (zh) | 2019-01-08 | 2019-01-08 | 一种对广告订单分配流量的方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910015119.9A CN109829753B (zh) | 2019-01-08 | 2019-01-08 | 一种对广告订单分配流量的方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109829753A CN109829753A (zh) | 2019-05-31 |
CN109829753B true CN109829753B (zh) | 2023-04-14 |
Family
ID=66861599
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910015119.9A Active CN109829753B (zh) | 2019-01-08 | 2019-01-08 | 一种对广告订单分配流量的方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109829753B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111612541A (zh) * | 2020-05-22 | 2020-09-01 | 贝壳技术有限公司 | 事件分配方法和装置、计算机可读存储介质、电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105791157A (zh) * | 2016-04-20 | 2016-07-20 | 腾讯科技(深圳)有限公司 | 一种流量的分配方法、分配***、及服务器 |
CN108053265A (zh) * | 2017-12-29 | 2018-05-18 | 北京奇艺世纪科技有限公司 | 一种广告订单量的分配方法及*** |
CN108282418A (zh) * | 2017-01-06 | 2018-07-13 | 腾讯科技(深圳)有限公司 | 媒体流量分配方法及装置 |
CN108428144A (zh) * | 2017-02-15 | 2018-08-21 | 腾讯科技(北京)有限公司 | 推送信息订单的流量分配方法、服务分配方法及装置 |
CN109067817A (zh) * | 2018-05-31 | 2018-12-21 | 北京五八信息技术有限公司 | 媒体内容流量分配方法、装置、电子设备及服务器 |
-
2019
- 2019-01-08 CN CN201910015119.9A patent/CN109829753B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105791157A (zh) * | 2016-04-20 | 2016-07-20 | 腾讯科技(深圳)有限公司 | 一种流量的分配方法、分配***、及服务器 |
CN108282418A (zh) * | 2017-01-06 | 2018-07-13 | 腾讯科技(深圳)有限公司 | 媒体流量分配方法及装置 |
CN108428144A (zh) * | 2017-02-15 | 2018-08-21 | 腾讯科技(北京)有限公司 | 推送信息订单的流量分配方法、服务分配方法及装置 |
CN108053265A (zh) * | 2017-12-29 | 2018-05-18 | 北京奇艺世纪科技有限公司 | 一种广告订单量的分配方法及*** |
CN109067817A (zh) * | 2018-05-31 | 2018-12-21 | 北京五八信息技术有限公司 | 媒体内容流量分配方法、装置、电子设备及服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN109829753A (zh) | 2019-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8392928B1 (en) | Automated workload placement recommendations for a data center | |
CN105809323A (zh) | 任务分配方法和*** | |
CN110351375B (zh) | 一种数据处理方法、装置及计算机装置、可读存储介质 | |
Kumar et al. | A preference-based resource allocation in cloud computing systems | |
US20130290063A1 (en) | Optimizing Allocations In A Workforce Allocation Plan | |
CN108711020A (zh) | 配送任务分配方法、装置、电子设备及计算机存储介质 | |
CN105718316A (zh) | 一种作业调度的方法及装置 | |
CN108182560A (zh) | 配送任务分配方法、装置、电子设备及计算机存储介质 | |
CN109345108A (zh) | 任务分配方法、装置、设备及存储介质 | |
CN110636394B (zh) | 一种虚拟光网络映射方法、装置、设备及介质 | |
CN108154298A (zh) | 配送任务分配方法、装置、电子设备及计算机存储介质 | |
CN110866687A (zh) | 任务分配方法及装置 | |
CN109829753B (zh) | 一种对广告订单分配流量的方法及设备 | |
CN109976901A (zh) | 一种资源调度方法、装置、服务器及可读存储介质 | |
Zakharov et al. | Stable cooperation in dynamic vehicle routing problems | |
CN106504012A (zh) | 一种特征参数的调整方法、装置和电子设备 | |
CN109840807B (zh) | 一种预埋场景下广告订单的流量分配方法及设备 | |
CN113095885A (zh) | 信息投放数据的处理方法和装置 | |
CN108846635A (zh) | 一种资源申请的实现方法和*** | |
CN105592160B (zh) | 一种云计算环境下面向服务消费者的资源配置方法 | |
KR102312642B1 (ko) | 기계학습 기반 공정 스케줄링 장치 및 방법 | |
KR101639765B1 (ko) | 유동성 조정 및 분배 방법 | |
CN110609735A (zh) | 任务管理方法、设备和计算机程序产品 | |
CN109784687B (zh) | 智慧云制造任务调度方法、可读存储介质和终端 | |
CN109636097A (zh) | 一种产品设计任务的分配方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |