一种基于团体粒度的带有预算约束的影响最大化优化方法与流程

文档序号:12825764阅读:231来源:国知局
一种基于团体粒度的带有预算约束的影响最大化优化方法与流程

本发明属于信息传播领域,尤其涉及一种基于团体粒度的带有预算约束的影响最大化优化方法。



背景技术:

分析社会网络中存在的相互影响以及影响的级联传递来找到一个影响最大化的子集问题对现实生活有重要作用,而且由于现实生活中主要关注团体之间的影响,故而团体影响最大化问题是研究的热点。在现实生活中选择具有最大影响力的团体集合时,还有一个必须考虑的问题就是每个团体的预算,虽然有的团体具有可观的影响力,但是需要的预算也有可能更大,因而如何在有限的预算下找到影响最大的团体组合具有现实的意义。

在预算有限时,寻找影响最大的团体组合一般采用贪心搜索的策略,每次选择单位预算产生影响范围最大的团体,直至选择的团体达到预算上限。然而这种贪心策略存在着无法充分使用预算的缺点,有时导致具有更大影响力的团体组合没有被找到,例如当总预算为4时,有三个候选团体m1,m2,m3,预算分别为3,2,2,假设单位预算带来的影响范围分别为1,0.8,0.8,则上述贪心策略将会选择团体m1,并且停止搜索,这将导致有更大影响范围的团体组合<m2,m3>没有被选中,并造成了1预算的浪费,所以找到影响力最大的团体组合时考虑充分利用预算使找寻影响力最大团体的过程变的更加复杂。



技术实现要素:

为了解决如何充分利用有限预算找到影响最大团体组合的问题,本发明提供了一种基于团体粒度的带有预算约束的影响最大化方法,在给定影响范围计算函数σ(x)后,若函数σ(x)具有单调性和子模性,本文方法可以在充分使用预算的前提下,找到一个影响力最大的团体组合。

本发明所采用的技术方案是:

一种基于团体粒度的带有预算约束的影响最大化优化方法,其特征在于,给定团体影响关系图g(m,e,w),m表示所有团体构成的集合,e表示图g的边集合,w表示图g中所有边的权重集合,定义m中每个团体所需预算组成的集合为c={c(m1),c(m2),...,c(m|m|)},其中|m|为团体集m中包含的团体总个数,c(mi),表示团体mi所需要的预算;

步骤1:使用集合s记录已选择的团体,并初始化s为空集,使用集合l来记录候选团体集合,初始化集合l时,l包含m中的所有团体;根据影响范围函数σ(x)计算团体集m中的每个团体的影响范围,记录下影响范围最大的团体

步骤2:通过以已选择的团体集s和给定的总预算b更新候选团体集合不断从l中选择单位预算的增量影响范围最大的团体加入s中,并从l中删除该团体,直至任何新团体的加入都会使得s中所有团体总预算超过给定上限b或者集合l变为空集;记录下最后加入s中的团体,记为mt;l中某个团体ml单位预算的增量影响范围δ(s,ml)的计算为:

其中,σ(s)表示通过给定的影响函数σ(x)计算得到的团体集s的影响范围;c(ml)表示团体ml所需的预算;

步骤3:计算团体集s的影响范围σ(s),并选择执行:

选择执行一:如果l为空集,并且满足σ({mλ})≥σ(s),则更新s={mλ},返回步骤2;

选择执行二:如果l为空集,并且满足σ({mλ})<σ(s),则将s作为最终的团体组合,并结束整个优化方法;

选择执行三:如果l不是空集,将mt从s中删除,然后根据l中剩余团体的预算来选择:

选择步骤a、若l中每个团体的预算都比mt高,则找到一个新的团体候选集合计算集合lc中每个团体mc的增量影响范围δ(s,mc)=σ(s∪mc)-σ(s),记录下增量影响范围最大的团体将更新s=s∪{mk},把s作为最终的团体组合;并结束整个优化方法;

选择步骤b、若l中存在一个至少包含两个团体的团体组合,该团体组合所需的预算比mt的预算低,在l中找到团体组合确定的候选集然后对于集合p中的每个元素<mi,mj>,计算<mi,mj>的增量影响范围δσ(s,<mi,mj>)=σ(s∪mi)+σ(s∪mj)-2σ(s),按照增量影响范围从大到小的顺序访问集合p中的每个元素,如果找到某个元素满足条件那么更新否则更新s=s∪{mt},然后返回步骤2。

在上述的一种基于团体粒度的带有预算约束的影响最大化优化方法,其特征在于,影响范围函数σ(x)具有单调性:若团体集s,t满足则σ(s)≤σ(t);而且σ(x)具有子模性:若团体集s,t满足对mi∈m,则σ(s∪{mi})-σ(s)≥σ(t∪{mi})-σ(t).

在上述的一种基于团体粒度的带有预算约束的影响最大化优化方法,定义影响函数为:

其中,σ(s)表示团体集s的影响范围;|mj|表示团体mj中包含的个体数目;ms→j表示图g上从s到mj的路径上的所有团体组成的集合;表示能直接影响mj的团体组成的集合;pkj表示团体mk对团体mj影响概率;表示团体mj的初始感染概率。

因此,本发明具有如下优点:避免了一般贪心选择策略不能充分使用预算的问题,并且能够在不超出给定预算的限制下,充分利用所给的预算,找到影响范围最大的团体组合。

附图说明

图1是本发明实施例的流程图。

图2是本发明实施例在amazon网络生成的团体影响关系图上选择不同数目团体组合得到的影响范围图。

具体实施方式

为了便于本领域普通技术人员理解和实施本发明,下面结合附图及实施例对本发明作进一步的详细描述,应当理解,此处所描述的实施示例仅用于说明和解释本发明,并不用于限定本发明。

请见图1,本发明包括以下步骤:

步骤1:使用集合s记录已选择的团体,并初始化s为空集,使用集合l来记录候选团体集合,初始时m中的所有团体都作为候选团体,即初始时l=m。根据影响范围函数σ(x)计算团体集m中的每个团体的影响范围,记录下影响范围最大的团体

步骤2:通过已选择的团体集s和给定的总预算b更新候选团体集合不断从l中选择单位预算的增量影响范围最大的团体加入s中,并从l中删除该团体,直至任何新团体的加入都会使得s中所有团体总预算超过给定上限b或者集合l变为空集。记录下最后加入s中的团体,记为mt。l中某个团体ml单位预算的增量影响范围δ(s,ml)的计算为:

其中,σ(s)表示通过给定的影响函数σ(x)计算得到的团体集s的影响范围;c(ml)表示团体ml所需的预算。

步骤3:计算团体集s的影响范围σ(s),并选择执行:

选择执行一:如果l为空集,并且满足σ({mλ})≥σ(s),则更新s={mλ},返回步骤2;

选择执行二:如果l为空集,并且满足σ({mλ})<σ(s),则将s作为最终的团体组合,并结束整个优化方法;

选择执行三:如果l不是空集,将mt从s中删除,然后根据l中剩余团体的预算来选择:

选择步骤a、若l中每个团体的预算都比mt高,则找到一个新的团体候选集合计算集合lc中每个团体mc的增量影响范围δ(s,mc)=σ(s∪mc)-σ(s),记录下增量影响范围最大的团体更新s=s∪{mk},把s作为最终的团体组合;并结束整个优化方法;

选择步骤b、若l中存在一个至少包含两个团体的团体组合,该团体组合所需的预算比mt的预算低,在l中找到团体组合确定的候选集然后对于集合p中的每个元素<mi,mj>,计算<mi,mj>增量影响范围δσ(s,<mi,mj>)=σ(s∪mi)+σ(s∪mj)-2σ(s),按照增量影响范围从大到小的顺序访问集合p中的每个元素,如果找到某个元素满足条件那么更新否则更新s=s∪{mt},然后返回步骤2。

本发明研究了在有预算限制下的团体影响最大化问题,通过本文方法,可以充分利用所给的预算来找到影响范围最大的团体组合。

应当理解的是,本说明书未详细阐述的部分均属于现有技术,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1