关于影响力最大化问题中贪心算法的一些理解

        在影响力最大化问题中(Influence Maximization,以下简称IM),贪心算法是最早提出的一种解决方法,并且一直沿用至今。它基于IM问题所具有的单调性(Monotonicity)和子模性(Submodularity)使用一种Hill Climbing策略,不断使用Monte Carlo模拟来寻找在当前情况下的具有最大传播范围的节点,添加至种子集合,得到最终结果,算法伪代码如下所示:

关于影响力最大化问题中贪心算法的一些理解_第1张图片

        这里算法1其实并没有使用Monte Carlo模拟,而只是使用了贪心的策略,表示在可以准确估计任意节点集S的传播范围的这种理想情况下,通过贪心策略逐步得到结果的过程。

        而在实际情况中,我们无法预先得到节点集S的真实传播范围,只能通过Monte Carlo模拟来估计它的影响范围,故真实的贪心算法如算法2所示:

关于影响力最大化问题中贪心算法的一些理解_第2张图片

其中S表示最终得到的种子集结果,k表示最终种子集的大小,R表示每次迭代中,所进行Monte Carlo模拟次数。

        Kempe[1]和Chen Wei[2]证明了贪心算法在R满足一定条件的情况下,可以达到1-\frac{1}{e}-\varepsilon倍最优解的效果,即

f(S^{g})\geq (1-\frac{1}{e}-1)f(S^{*})

        其中f(S^{*})是所有可能得到结果中的最优解。具体证明过程如下:

        首先,令S^{*}=\left \{ s_{1}^{*}, s_{2}^{*},...,s_{k}^{*}\right \},为大小为k的最优解,S^{g}=\left \{ s_{1},s_{2},...,s_{k} \right \}为大小为k的贪心算法1所得到的解,同时,有S_{i}^{*}=\left \{ s_{1}^{*}, s_{2}^{*},...,s_{i}^{*}\right \}S_{g}^{i}=\left \{ s_{1},s_{2},...,s_{i} \right \}S_{0}^{*}=S_{0}^{g}=\varnothing。那么对于所有的i=0,1,...,k-1,有

关于影响力最大化问题中贪心算法的一些理解_第3张图片

         推导过程的前几步都很简单,重点说一下最后一步,原文中给出的注释是by repeating the above steps k times,重复上述步骤k次,之前百思不得其解,推不出来,后来想明白了,考虑f(S_{g}^{i}\bigcup S_{k-1}^{*})=f(S_{g}^{i}\bigcup S_{k-2}^{*}\bigcup \left \{ s_{k-1}^{*} \right \})\leq f(S_{i}^{g}\bigcup \left \{ s_{k-1}^{*}\right \})-f(S_{i}^{g})+f(S_{g}^{i}\bigcup S_{k-2}^{*})

        那么以此类推k次,即可得到原式。

        在3.1式的基础上,重新排列不等式,可以得到:

         然后左右两边同时乘以(1-\frac{1}{k})^{k-i-1},并且将i=0,1,...,k-1的所有式子相加,可得:

关于影响力最大化问题中贪心算法的一些理解_第4张图片

        即证明了,在理想情况下的贪心算法可以达到(1-1/e)倍最优解的效果下限。但是需要注意的是我们无法得到任何节点集的传播范围的真实值,只能像算法2那样使用Monte Carlo模拟得到关于真实值的估计值,那么通过估计进行的贪心算法也是有一个效果下限的:

        它的证明过程如下:

关于影响力最大化问题中贪心算法的一些理解_第5张图片       

关于影响力最大化问题中贪心算法的一些理解_第6张图片

        总结一下,贪心算法有一个效果下限(1-1/e-\varepsilon )f(S^{*}),在证明过程中,需要考虑Monte Carlo模拟是存在误差的,这个误差受Monte Carlo模拟次数R的影响,R越大,误差越小,关于这方面的内容将会在下一节进行讨论。

参考文献:

[1] D. Kempe, J. M. Kleinberg, and É. Tardos. Maximizing the spread of influence through a social network. In KDD, pages 137–146, 2003.

[2] Chen W , Lakshmanan L , Castillo C . Information and Influence Propagation in Social Networks[J]. Synthesis Lectures on Data Management, 2013, 5(4):1-177.

你可能感兴趣的:(贪心算法)