跳过1简介部分 1 简介 在各种应用程序中,查找互连实体之间的最短路径是一项重要任务。 当路由资源时,如道路上的流量、港口之间的船舶或路由器之间的数据包,确定两个节点之间的最短路径是有效利用网络的关键。鉴于流量更倾向于选择最短路径, 有能力改变图形拓扑的恶意对手可以操纵路径以获得优势。 例如,可以操纵道路网络,通过对手拥有的收费公路,引导两个热门地点之间的交通。 可以改变计算机网络,以鼓励数据包流经对手的子网络。破坏社交网络中的连接可能会使对手成为重要个人的“守门人”。 应对这种行为很重要,了解这种操作的漏洞是朝着更健壮的图挖掘迈出的一步。
在本文中,我们展示了 强制路径切割 问题,在这个问题中,对手希望边缘加权网络中源节点和目标节点之间的最短路径遵循首选路径。 对手通过切割边缘来实现这一目标,每个边缘都有已知的移除成本。 我们通过从3端切割问题的简化证明了这个问题的优化版本是APX硬的[ 18 ]。 为了优化力路径切割,我们将其重新定义为加权集覆盖问题,这允许我们使用成熟的近似算法来最小化总边缘去除成本。 我们建议 路径攻击 该算法将这些算法与约束生成方法相结合,以有效地识别中断目标的路径子集。 虽然这些算法通常只能保证近似最优解, 路径攻击 在我们的大多数实验中,得到了成本最低的解决方案。
我们还介绍了 强制边缘切割 和 强制节点切割 问题,其中特定边(或节点)是目标,而不是整个路径。 这些问题的优化版本也是APX-hard,我们使用 路径攻击 作为启发式搜索算法的一部分来解决这些问题。 这三个问题将在下一节中正式定义。
1.1 问题陈述 我们考虑一个图 \(G=(V,E)\),其中顶点集 \(V\)包含 \(N)个实体和 \(E)包括 \(M)边,可以是有向的或无向的。 每条边都有一个权重 \(w:E\右箭头\mathbb {右}_ {\ge0}\)表示遍历的费用(例如,距离或时间)。 此外,每个边缘都有一个移除成本 \(c:E\右箭头\mathbb {右}_ {\ge 0}\)。 我们还获得了一个源节点 \(V\中的“s”),目标节点 \(t\ in V\)和预算 \(b\gt 0\)进行边缘去除。 在此背景下,我们解决了三个问题:
强制边缘切割: 给予优势 \(e\中的e^*\),查找 \(E^\prime\subset E\)其中 \(e^\prime}{c(e)}\le-b\中的sum_{e\)和所有最短路径 \(s\)到 \(t\)英寸 \(G^\prime=(V,E\set减去E^\price)\)使用 \(e ^*\)。
强制节点切割: 给定一个节点 \(v^*\在v\中),查找 \(E^\prime\subset E\)其中 \(e^\prime}{c(e)}\le-b\中的sum_{e\)和所有最短路径 \(s\)至 \(t\)英寸 \(G^\prime=(V,E\set减去E^\price)\)使用 \(v^*\)。
强制路径切割: 给定路径 \(p^*\)来自 \(s\)至 \(t\)英寸 \(G\),查找 \(E^\prime\subset E\)其中 \(e^\素数}{c(e)}\le b\中的sum_{e)和 \(p^*\)是唯一的最短路径 \(s\)到 \(t\)英寸 \(G^\prime=(V,E\set减去E^\price))。
问题的每一种变化都解决了不同的对抗目标:有一个特定的边缘(例如收费公路)、一个特定节点(例如网络中的路由器)或一条完整的路径(例如一系列监视点),在这些路径中,增加的流量将使对手受益。 在所有情况下,攻击向量都是删除边,而对手可以访问整个图。 我们还考虑了上述每个决策问题的相应优化问题。 在优化版本中,目标是 \成本最小的(E^\prime\) \满足决策问题条件的(e^\prime}{c(e)}中的sum_{e\)。 我们将相应决策问题的每个优化对应项分别称为最优力边切割、最优力节点切割和最优力路径切割。
1.2 贡献 本文的主要贡献如下:
我们定义了强制边切割、强制节点切割和强制路径切割问题,并证明了它们相应的优化问题是APX-hard。
我们引入了PATHATTACK算法,该算法为高概率(大于 \(1-(1/|E|)\))。
我们提供了最佳力边切割和最佳力节点切割的非凸优化公式,以及多项式时间启发式算法。
我们展示了在各种合成和实际网络上进行的16000多个实验的结果,证明了这些算法相对于基线方法的最佳性能。
1.3 第条组织 本文的其余部分组织如下。 在节中 2 简要总结了逆优化和对抗图分析的相关工作。 在节中 三 ,我们提供了一个草图,证明所有三个优化问题都是APX-hard问题。 (详见附录 一个 .)章节 4 介绍了 路径攻击 该算法保证强制路径切割的最优解的对数近似。 在节中 5 ,我们展示了如何 路径攻击 可以用作“强制边切割”和“强制节点切割”优化版本的启发式。 章节 6 记录不同真实网络和合成网络上的实验结果,演示 路径攻击 与基线方法相比,具有优势。 在章节中 7 最后,我们总结并讨论了未决问题。
跳过2相关工作部分 2 相关工作 早期攻击网络的工作重点是断开网络连接[ 2 ]。 这项工作表明,针对具有幂律度分布的网络(例如,Barabási–Albert网络),有针对性地去除高阶节点是非常有效的,但针对随机网络,效果要差得多。 这是由于具有这种学位分布的网络中普遍存在中心。 其他工作的重点是通过边缘删除中断最短路径,但范围比我们窄。 处理最重要的边缘问题(例如[ 44 ])尝试有效地查找删除后最大程度增加两个节点之间距离的单个边。 (定义类似的最重要节点会查找删除操作相同的节点[ 45 ].) 相比之下,我们目前的工作考虑的是一个狡猾的对手,它希望特定路径最短,或者将特定节点或边缘作为路由目标,而不是将距离最大化。
在其他几种对抗性环境中,路径查找具有高度相关性。 一些工作侧重于穿越敌对领土,例如秘密规划无人驾驶飞行器的路径[ 29 ]。 其补充是网络阻断,其目标是拦截试图穿越图形而保持隐藏状态的对手。 Bertsimas等人提出了一个类似于最优力路径切割的优化问题,其目标是总体中断流,而不是针对特定的最短路径[ 6 ]。 多年来,人们一直在博弈论的背景下研究网络阻断[ 52 ]并已扩展到中断攻击的工作,该图表示攻击计划[ 36 ]。 在这项工作中,就像在我们的工作中一样,神谕可以用来避免列举出大量可能的策略[ 26 ].
与许多图问题一样,寻找最短路径可以被描述为一个优化问题:从 \(s\)至 \(t\),找到使边权重之和最小化的一个。 求两个节点具有特定最短路径的权重是逆优化的一个示例[ 1 ]。 从这个角度来看,最短路径是一个将边权重映射到路径的函数,而逆最短路径问题是求逆函数:输入一条路径,输出一组权重。 这通常包括在给定基线的情况下,根据一些距离度量,找到一组新的权重,该基线应尽可能少地发生变化(尽管如所示[ 56 ]在没有基线权重的情况下解决问题可以解决最小割集问题)。 要求解反向最短路径,同时最小化 \Zhang等人提出了一种列生成算法[ 59 ],类似于我们在第节中描述的约束生成方法 4.3 。这样的约束生成过程也用于[ 9 ]。 最接近强制路径切割的反向最短路径实例使用权重向量之间的加权汉明距离,其中更改边的权重具有固定成本,而与更改的大小无关。 1 该病例先前被证明为NP-hard[ 57 ]。 在本文中,我们证明了柔性较小的最优力路径切割不仅是NP-hard,而且是APX-hard。
除了逆最短路径外,作者还考虑了逆最短路线长度问题(有时称为逆最短道路)[ 47 ],其中只指定了最短路径的长度。 除仅考虑单一来源和目的地外,该问题已被证明为NP-hard[ 16 , 58 ]。 还有反向最短路径路由的概念,在这种路由中,对边权重进行操作,以使来自一个指定子集的边用于最短路径,而从不使用来自第二个不相交子集的边[ 10 ]。 其他基于图形的优化问题,如最大流量和最小切割,也已成为反向优化文献中的主题(参见,例如[ 20 , 27 , 38 ]). 关于改变图以改变路由模式的主题,还有在给定预算内改变节点延迟的工作[ 21 , 39 ]包括用户必须注意到改进的情况[ 40 ]。 其他人考虑过通过添加边而不是删除边或更改权重来更改最短路径的问题[ 41 ].
最近,在攻击机器学习方法方面做了大量工作,其中图形是输入的一部分。 寻找最短路径是攻击者可以利用的另一个常见的图问题。 对顶点分类的攻击[ 14 , 19 , 54 , 55 , 60 ]和节点嵌入[ 8 , 11 ]考虑可以操纵边和/或节点属性以影响学习方法结果的攻击者。 此外,还提出了针对社区检测的攻击,其中节点可以创建新的边缘来改变社区检测算法的组分配[ 13 , 28 , 30 ]或降低社区检测的整体效果[ 12 , 23 , 37 , 43 , 51 ]。 我们的工作补充了这些努力,将对抗性图分析的空间扩展为另一个重要的图挖掘任务。
跳过3COMPUTATIONAL COMPLEXITY部分 三 计算复杂性 我们首先考虑力路径切割的复杂性。 Hamming距离下的类逆最短路径[ 57 ],如我们之前的工作所示,这个问题是NP-hard[ 42 ]。 我们当前工作的一个新结果是,最佳力路径切割不仅仅是NP-hard; 没有可能的多项式时间近似方案,也就是说,没有多项式时间算法能够在因子 \最优(最小)预算的((1+\epsilon)),除非P=NP。这适用于问题的优化版本。 使用另一个APX-hard问题的线性约简,我们证明了以下定理。
定理3.1。 最优力路径切割是APX硬的,包括所有重量和所有成本相等的情况。
3.1 校样草图 下面是定理证明的草图 3.1 ,详细证明见附录 一个 首先,考虑无向图的情况,其中所有边的权重都等于它们的删除代价。 我们通过减少三端切割来证明这是APX-hard[ 18 ]。 在3-终端切割中,我们得到了一个图 \(G=(V,E)); 三个终端节点 \(V中的s_1、s_2、s_3); 和预算 \(第0页)。 为了证明这一点,我们只考虑所有边权重相等的情况。 目标是确定是否存在 \(E^\素数\子集E\),带 \(|E^\prime|\le b\),其中 \(s1\), \(s_2\),以及 \(s_3\)在中断开 \(G^\prime=(V,E\set减去E^\price)); 即,在边缘之后 \(E^\prime\)被删除,则任何终端节点之间都不存在路径。
我们通过以下过程将3端切割减少为强制路径切割,如图所示 1 .创建 \(M+1)新的不相交路径,每个 \(N\)跳长,从 \(s1\)至 \(第2节)。 这就引入了 \((M+1)(N-1)\)新节点和 \((M+1)N\)新边。 对执行相同操作 \(s2)和 \(s_3\)(另一个 \((M+1)(N-1)\)节点和 \((M+1)N\)边)。 创建新的 \((2N-1)\)-跃点路径 \(s_1\)到 \(s_3\)( \(2N-2)新节点, \(2N-2)新边)。 创建新路径 \(s1\)至 \(s_3\)目标路径 \(p^*\),带 \(s=s_1)和 \(t=s_3\)。 调用结果图 \({G})。 求解强制路径切割 \({G}),获取一组边 \(E^\prime\)将被删除。
图1。 从三端切割减少到强制路径切割。 初始图(左侧)包括三个终端节点\(s_1\)、\(s_2\)和\(s_3\),它们分别通过边集\(E_1\)、\。 虚线表示端子之间可能存在边缘。 强制路径切割的输入,包括原始图形和端子之间的许多长平行路径。 从\(s_1\)到\(s_3\)组成\(p^*\)的单个路径用红色表示。求解“强制路径切割”并移除返回边(右)的结果是,端子之间的任何现有路径都已被移除,从而在原始图中断开它们的连接,并解算“三端子切割”。
如果 \(E^\prime)是强制路径切割的解决方案,也是三端切割的解决方法。 如果可以使用原始图形中的边从另一个终端节点到达任何终端节点, \(p^*\)不是最短的路径。 如果路径来自 \(s2\)至 \例如,该路径最多为 \(N-1)跳得很长。 将存在来自的路径 \(s1\)至 \(s_3\)使用新的 \((N+1)\)-跃点路径 \(s1\)至 \(s_2\),后跟中的剩余路径 \(s2\)至 \(第3节)。 此路径将小于 \(2N+1)跳,所以 \(p^*\)不是最短的路径。
在问题的优化版本中,目标是找到 \(E^\prime),以最小的预算解决3终端切割。 让 \(E^\prime_{\mathrm{OPT}})就是这个边集。 由于此设置断开端子连接,它还解决了“强制路径切割”的问题 \({G})。 在完整的证明中,我们表明没有办法求解力路径切割 \({G})具有较少的边。 因此,最优力路径切割的解与三端切割的最优解相同。 此外,如果我们考虑 任何 解决方案 \(\hat{E}^\prime\)以强制路径切割 \({G}),我们证明了存在一个不大于 \({E}^\prime\)。 正如我们在附录中所讨论的,这意味着缩减是线性的,因此保留了近似值。 由于三端切割是APX硬切割,线性缩减意味着最佳力路径切割也是APX硬切削。
为了证明最优力路径割对于有向图也是APX困难的,我们将无向图的力路径割简化为有向图的相同问题。 给定一个无向图 \(G=(V,E)\)和路径 \来自源节点的(p^*\) \(s\)到目标节点 \(t\),创建一个新图形 \({G}=(V,{E}))在同一顶点集上,每个无向边有两条有向边 \(G\); 即。, \({E})包含有向边 \((u,v)和 \(v,u)当且仅当 \(E\)包含无向边 \(\lbrace u,v\rbrace)。 我们再次考虑所有权重和所有成本都相等的情况。 求解最佳力路径切入 \({G}),获取解决方案 \({E}^\prime\)。 对于中的每个定向边 \((u,v)在{E}^prime中),删除无向边 \(\lbrace u,v\rbrace)来自 \(G\)。 在所得到的图中, \(p^*\)将是距离 \(s\)至 \(t)。 如附录所示 A.2款 ,如果最佳解决方案包括 \((u,v)\),它不能还包括 \(v,u); 即,如果 \((u,v)在{E}^prime中),然后 \((v,u)不代表{E}^prime)。 这意味着有向图中强制路径切割的最优解大小等于无向图中强迫路径切割的最佳解大小。 根据我们用于无向图的相同论点,最优力路径切割对于有向图来说是APX-hard。
3.2 延伸到强制边切割和强制节点切割 用于证明最佳力路径切割为APX-hard的相同约简可以对最佳力边缘切割显示相同的约简。 区别在于 \(p^*\)是来自的新路径 \(s1\)至 \(s_3\),我们让 \(e^*\)是这条新路径的边之一。 这仍将迫使新路径从 \(s_1\)到 \(s3)是最短的,因此最优解将完全相同。 与最优力路径切割一样,有向和无向情况具有相同的解,从而得出以下定理。
定理3.2。 最佳力切边是APX-hard,包括所有重量和所有成本相等的情况。
通过沿新路径选择节点 \(s1\)至 \(s_3\)扮演 \(v^*\),我们可以为最优力节点切割提供相同的参数。
定理3.3。 最佳力节点切割是APX-hard,包括所有重量和所有成本相等的情况。
跳过4PATHATTACK部分 4 路径攻击 虽然最优力路径切割是APX-hard,但其解可以在多项式时间内近似为对数因子。 本节描述了实现这种近似的算法。
4.1 通过集合覆盖切割路径 我们首先注意到,最优力路径切割可以重新定义为加权集覆盖的一个实例。 在加权集覆盖中,存在一个离散的宇宙 \元素和集合的(U) \(\mathcal{S}\)的子集 \(U \),其中每个子集 \(S\in\mathcal{S}\)具有关联成本 \(c(S)\ge 0)。 目标是找到 \(mathcal{S}),其中元素的并集包含最低的总成本 \(U),即查找 (1) \(开始{align}\hat{mathcal{S}}=&\mathop{\text{arg-min}}\limits_{mathcal{S}^\prime\subseteq\mathcal}S}}{\sum_{S\in\mathcal}S}^\ prime}c(S)}\end{align{}\)
(2) \(开始{align}\text{s.t.}&~\bigcup_{s\in\mathcal{s}^\prime}{s}=U.\end{align{}\)
当我们求解最优力路径切割时,目标是从 \(s\)至 \(t)不长于 \(p^*\),并通过选择要删除的边来执行此操作。 这是一个套餐问题。 宇宙 \(U)是所有竞争最短路径的集合。 必须通过从图形中删除所有此类路径来“覆盖”此集合。 如果这些路径中有任何一条仍然存在, \(p^*\)不是最短的路径。 中的子集 \(\mathcal{S}\)是边:每条边表示使用该边的路径集。 切割边是选择要包含在并集中的集,即删除包含边的所有路径。 图 2 说明了这两个问题之间的联系。
图2。 最优力路径切割问题是加权集覆盖问题的一个例子。 在右侧的二分图中,方形节点表示路径,圆形节点表示边。 请注意,不包括沿\(p^*\)的边。 当删除红色圆(即边\(v_7,t)\)时,则删除红色方块(即路径\(p_1\)、\(p_2\)、_(p_3\)和\(p_4\))。
加权集合覆盖不仅是APX-hard,而且不能在小于对数因子的范围内进行近似[ 46 ]。 然而,有一些众所周知的近似算法使我们能够有效地达到这个渐近下限。 强制路径切割的挑战是,竞争路径的范围可能非常大。我们将在本节的剩余部分中解决这一挑战。
4.2 固定路径集的近似算法 我们考虑了加权集覆盖的两种近似算法,这两种算法都实现了最优解的对数因子近似[ 49 ]。 第一种是贪婪方法,迭代选择最具成本效益的集合并将其包含在解决方案中; 即,它选择未覆盖元素的数量除以成本的值最小的集合。 我们同样迭代地删除切割最未切割路径的边 \(P\)表示最低成本。 我们将此过程称为 GreedyPathCover公司 ,我们在算法中提供了它的伪码 1 。我们有一组固定的路径 \(P\子集P_{P^*}\)。 注意,该算法只使用成本,而不使用权重:感兴趣的路径已经确定,我们只需要确定打破它们的成本。 GreedyPathCover公司 执行恒定数量的工作(在简单的统一散列假设下[ 15 ])在初始化循环中的每条路径中的每条边上进行边和路径的删除。 我们使用延迟初始化来避免初始化表中与没有出现在任何路径中的边关联的条目。 因此,填充表和删除路径所需的时间与所有路径上的边数之和呈线性关系,我们将其定义为 (3) \(在P}{|E_P|}中开始{方程式}M_P:=\sum_{P\,结束{方程式{) 哪里 \(E_p\)是沿路径的边集 \(p)。 找到最具成本效益的优势需要 \(O(M_P)\)时间,并且这一部分在每条路径上最多运行一次,导致总运行时间如下。
提案4.1。 GreedyPathCover公司 磨合 \(O(|P|M_P)\)时间。
请注意,运行时间对输出敏感:它取决于在算法过程中选择哪些路径作为约束。 这就是我们在本文中提出的所有算法的情况。 使用更复杂的数据结构(如Fibonacci堆)来保存每条边的路径数,可以在恒定的时间内找到最具成本效益的边,但在删除边时更新计数需要 \(O(\log{M_P})\)时间,总运行时间为 \(O(M_P\log{M_P})\)。 最坏情况下的近似因子是宇宙大小的调和函数[ 49 ]即。, \(H_{|U|}=\sum_{n=1}^{|U|1}{1/n}\),这意味着 GreedyPathCover公司 算法的最坏情况近似因子为 \(H_{|P|}\)。
对于第二近似算法,我们引入了最佳力路径切割的整数程序公式,该公式是在加权集覆盖公式的基础上建立的。 目标是最小化切割边的成本。 让 \(\mathbf{c}\in\mathbb {右}_ {\ge 0}^M\)是边缘去除成本的向量,其中每个条目对应于一个边缘。 二进制向量 \(\mathbf {x}_ {\textrm{cut}}\in\lbrace 0,1\rbrace ^M\)表示要删除的边。 在加权集合覆盖的整数规划公式中,每个维度对应一个集合,每个约束对应一个元素。 每个元素形成一个线性约束,强制选择包含该元素的至少一个集合。 让 \(P_{P^*}\)是必须剪切的路径集。 对于每条路径 \(p\在p_{p^*}\中),让 \(\mathbf {x} (p) \在\lbrace 0,1\rbrace ^M中)是 \(E_p\)。 我们通过整数程序求解最优力路径切割 (4) \(开始{align}\hat{mathbf{x}}_{mathrm{cut}}=&\mathop{text{arg-min}}\limits_{mathbf {x}_ {\textrm{cut}}}\mathbf{c}^\top\mathbf {x}_ {\textrm{cut}}\end{align}\)
(5) \(\begin{align}\text{s.t.}&~\mathbf) {x}_ {\textrm{cut}}\在\lbrace 0,1\rbrace ^{M}\结束{align}\)
(6) \(\开始{align}&~\mathbf {x} (p) ^\顶部\mathbf {x}_ {\textrm{cut}}\ge 1~~\ for all p\ in p_{p^*}\end{align}\)
(7) \(\开始{align}&~\mathbf {x}_ {\textrm{keep}}^\top\mathbf {x}_ {\textrm{cut}}=0。 \结束{align}\)
方程式( 7 )防止集合中的任何边 \(E_\mathrm{keep}\)不被切割。 2 通过目标路径,我们设置 \(E_\mathrm{keep}=E_{p^*}),但我们允许第节中概述的方法具有更大的灵活性 5 ,以节点或边为目标。
第二种算法是使用此公式的随机算法。 与贪婪方法一样,我们关注路径的子集 \(P\子集P_{P^*}\)。 该算法放松了整数程序(方程式( 4 )–( 7 ))通过替换二进制约束 \(\mathbf {x}_ {\textrm{cut}}\in\lbrrace 0,1\rbrace ^M\)具有连续约束 \(\mathbf {x}_ [0,1]^M中的{\textrm{cut}})。 当我们找到最佳解决方案时 \对于放松问题,我们对每条边执行以下随机取整过程 \(e):
(1)
处理相应条目 \(\hat{mathbf{x}}_\mathrm{cut}(e)\)作为概率。
(2)
绘制 \(lceil\ln{(4|P|)}\rceil\)i.i.d.Bernoulli概率随机变量 \(\hat{\mathbf{x}}_\mathrm{cut}(e)\)。
(3)
剪切 \(e)仅当步骤中至少有一个随机变量 2 为1。
必须根据两个标准检查结果图。首先,必须满足所有约束; 即,中的所有路径 \(P\)必须切割。 此外,切割边缘的成本不得超过 \(ln{(4|P|)})乘以分数最优,即松弛的 线性程序 。如果不满足其中一个标准,则再次运行随机取整程序。 如Vazirani所示,每个标准至少满足概率 \(3/4\) [ 50 ]:任何路径进入的概率 \(P\)保持未切割状态最多为 \(1/4),即解决方案超过 \(\ln{(4|P|)}\)。 结合这些概率,任何随机取整试验不令人满意的概率最多为1/2; 即,成功的概率大于或等于1/2。 这导致随机取整试验的预期数量最多为2个。 我们为这个过程提供了伪代码,我们称之为 RandPathCover公司 ,在算法中 2 .其运行时间主要取决于线性规划的求解,这导致以下命题:
提议4.2。 RandPathCover公司 磨合 \(tilde{O}((M_P+|P|^2)|P||^{1/2}+M)预期时间。 三
证明。 具有稀疏约束矩阵的线性规划 \(A\in\mathbb{R}^{d\times n})(即。, \(d)约束, \(n \)变量)可以在 \(\波浪线{O}((\mathrm{nnz}(A)+d^2)d^{1/2}\log{\epsilon^{-1}})\)时间[ 33 ],其中 \(\mathrm{nnz}(\cdot)\)是稀疏矩阵的非零数。在我们的例子中,非零数为 \(M_P)。 约束的数量为 \(|P|\),插入公式,我们得到 \(\波浪线{O}((M_P+|P|^2)|P||^{1/2})\)(用于固定精度)。 正在初始化 \(\mathbf {x}_ {\textrm{cut}}\)需要 \(O(M)\)时间。 在随机取整循环中,检查条件 \(O(M)\)时间,内部循环运行 \(O(\log{|P|})\)迭代。 在每次迭代中,都会选择边,我们只能考虑那些被选择的概率不为零的边,这导致 \(O(M_P)\)试验。 创建指示符向量还限于中的路径中使用的那些边 \(P\),所以需要 \(O(M_P)\)时间。 最后,计算 \(\mathrm{not_cut}\)可以通过约束矩阵与 \(\mathbf {x}_ {\textrm{cut}}\),这需要 \(O(M_P)\)时间,并检查结果向量中是否存在违反的约束,这需要 \(O(|P|)\)时间。 如前所述,随机取整试验的预期数量最多为2个,这只会将循环中操作的运行时间按常数进行缩放。 将所有组件的运行时间加在一起,我们的总运行时间为 (8) \(开始{方程式}\波浪形{O}((M_P+|P|^2)|P||^{1/2})+O(M+M_P\log{|P|}+M_P+| P|)=波浪形{O}([M_P++|P| ^2)| P|^{1/2}+M)。 \结束{方程式}\) □
4.3 约束生成 算法 1 和 2 使用一组固定的路径 \(P),但要求解最优力路径切割,枚举整个相关路径集可能很难。 例如,考虑以下情况 \(G)是一个团(即一个完整图),除边连接外,所有边的权重都为1 \(\)和 \(t),具有重量 \(N \)。 在所有来自 \(s\)至 \(t),最长路径是直接路径 \(s,t)\)仅使用一条边; 所有其他简单路径都较短,包括 \((N-2)!\) 长度路径 \(N-1)。 设置 \(p^*=(s,t)\)使得整个约束集(即,每个需要切割的路径对应一个约束)非常大。但是,如果 \(P)如果只包括长度为2和3的路径,我们将仅用 \((N-2)^2+(N-2”)约束。 一般来说,我们可以解决线性规划问题,即使是那些有无限多约束的问题,只要我们有一个多项式时间方法来识别候选解决方案违反的约束。 在约束生成过程中,我们迭代求解了一个只考虑约束子集的松弛优化问题[ 4 ]。 在解决松弛问题后,我们参考多项式时间预言来确定是否有任何约束未满足。 如果是这样,则添加此约束并再次运行优化。 当oracle发现没有违反任何约束时,进程终止。
在我们的案例中,提供违反约束的预言机(如果存在)是最短路径算法。 在应用候选解决方案后,我们看看 \(p^*\)是距离 \(s\)至 \(t)。 如果是,则该过程终止。 否则,最短路径将作为新约束添加。 此过程在迭代过程中使用近似算法展开 \(P\),因为发现了新的约束。 我们将结果算法称为 路径攻击 并在算法中提供伪代码 三 。取决于我们是否使用 GreedyPathCover公司 或 RandPathCover公司 ,我们将该算法称为 路径攻击-贪婪 或 路径攻击-随机 分别是。
的运行时间 路径攻击 计算如下。 初始化需要 \(O(M)\)时间。 在约束生成循环中,路径被添加到 \(P)(时间与其长度成正比),运行集合覆盖近似算法(由命题给出 4.1 和 4.2 ),边缘被移除(最多 \(M_P)),并计算新的最短路径。 我们可能需要计算第二条最短路径,但我们使用Eppstein算法 \(k)最短路径,即使它允许循环路径:如果第二条最短路径有一个循环,那么 \(p^*\)是唯一的最短路径。 这是在 \(O(M+N\log{N})\)时间[ 22 ]。 检查路径长度最多花费 \(O(N)\)时间。 约束生成循环已运行 \(|P|\)次。 结合所有项,我们得到以下渐近运行时间。
提议4.3。 病态贪婪 和 路径攻击-随机 磨合,磨合 \(O(|P|^2M_P)\)时间和 \(分别用波浪号{O}((M_P+|P|^2)|P||^{3/2}+|P| M)\)时间。
4.4 路径攻击 收敛和近似保证 虽然集合覆盖的近似因子是宇宙大小的函数(所有需要切割的路径),但在我们的情况下,这不是近似中的基本因子。 近似因子 路径攻击-贪婪 仅基于我们明确考虑的路径。 仅使用约束子集,最坏情况近似因子由该子集的大小决定。 通过的最后迭代 路径攻击 然而,我们有一个强制路径切割的解决方案,预算在以下因素内 \最小值的(H_{|P|}\),使用 \(|P|\)。 这产生了以下命题:
提案4.4。 近似因子 路径攻击-贪婪 最多是 \(H_{|P|}\)乘以最优力路径切割的解。
最坏情况下的近似系数 路径攻击-随机 按结构为对数:
提议4.5。 路径攻击-随机 产生最坏情况 \最佳力路径切割的(O(\log|P|)近似值。
还有一种变体 路径攻击-随机 这可以保证多项式时间收敛。 虽然隐式约束的数量可能非常大,但每个约束都是标准的线性不等式约束,这意味着可行域是凸的。 给定一个多项式时间预言机,该预言机返回一个被建议的解决方案违反的约束 \对于松弛的LP,我们可以使用哈奇扬的椭球算法(参见[ 24 ]),它可以在多项式迭代次数中求解具有任意(或无限)个线性约束的线性程序[ 25 ]。 我们使用算法中的随机取整过程 2 实现这样的预言。 在附录中 B类 ,我们以高概率证明了这个预言终止于多项式时间。 这导致了以下定理。
定理4.6。 路径攻击-随机 使用椭球算法至少以概率在多项式时间内收敛 \(1-(1/|E|)\)。
虽然这表明在对数近似下求解最优力路径切割不是NP-hard,并且表明存在 路径攻击 这保证了在多项式时间内运行,我们在实验中没有使用椭球算法,因为其他方法在实践中收敛得更快。 如第节所述 6 ,我们使用Gurobi优化包来解决所有优化问题,该软件将单纯形法和障碍法相结合用于连续线性规划。 然而,当使用一组大小非多项式的约束生成时,这些方法不能保证多项式时间收敛。
4.5 用于节点删除的PATHATTACK 本文主要讨论从图中删除边的情况,但在某些应用程序中,删除节点更合适。 例如,在计算机网络中,节点可能更容易离线(例如,通过拒绝服务攻击),而不是禁止特定连接。 通过节点删除强制路径切割是一个更复杂的问题; 对于给定的 \(p^*\),无论预算限制如何,都不总是有解决方案。 例如,考虑节点的三角形 \(u\), \(v),和 \(w\),其中所有权重相等,以及 \(p^*=(u,v,w)\):三个节点都不能删除,因为这会破坏 \(p^*\),所以 \由于存在连接边,(p^*\)无法成为最短路径 \(u\)至 \(w\)。
然而,在可能的情况下,我们仍然可以使用 路径攻击 。到加权集覆盖的映射类似:路径是一个元素,节点对应于来自的路径集 \(s\)至 \(t\)使用该节点。 给出一个图表和 \(p^*\),我们可以检查是否可以 \(p^*\)最短路径 \(s\)至 \(t\)通过节点移除:如果 \(p^*\)是距离 \(s\)到 \(t)在上的节点的诱导子图中 \(p^*\),那么有一个解决方案。 如果没有,就没有; 检查方法表明,即使删除了所有其他节点, \(p^*\)不是最短路径。 如果有可能的解决方案,我们可以运行 路径攻击 用于节点删除,并实现与边缘删除相同的收敛和近似保证。 由于这是本文重点的辅助内容,我们将节点删除的进一步讨论降到附录 4.5 .
4.6 有限的攻击者能力 实际上,攻击者可能无法删除某些边缘。 通过将这些边的移除成本设置为无穷大,我们可以简单地将其集成到优化公式中。 在线性程序公式中,可以通过省略方程式中与无穷远边相关的列来实现( 4 )通过( 7 ). 与节点移除情况一样,这将需要进行检查以确保存在解决方案,这可以通过移除除属于 \(p^*\)-并观察 \(p^*\)成为其端点之间的最短路径。 如果是这样, 路径攻击 可以在限制边集中使用以找到近似最优解。
跳过强制边缘切割和强制节点切割部分的5个启发式 5 力边切割和力节点切割的启发式算法 求解最佳力边切割或最佳力节点切割需要额外的优化层。 由于这些问题不考虑固定路径,因此有可能通过切割目标的当前最短路径来改进候选解决方案。 以图中的图表为例 三 。最短路径 \(s\)至 \(t\)通过 \(e ^*)-即。, \((s,v1,v2,v3,t)-是四跳,使用唯一的低成本边缘。 如果我们用以下路径求解最优力路径切割 \(p^*\),所有 \(k)必须沿着图形顶部切割路径。 如果我们去掉低成本优势,所有这些路径都将被切断 \(s\)至 \(t\)将通过 \(e ^*\)。 由于该边缘作为 \(p^*\),但是 \(k)必须单独切割并行两跳路径,并产生以下成本 \(c_{\textrm{max}}\):如果这些路径中有任何一条仍然存在,那么它比 \((s,v1,v2,v3,t)),所以 \(e^*\)不在最短路径上。 对于大型 \(k),我们可以看到,当低成本解决方案可用时,此成本在移除图中所有边的恒定因素范围内。 更具体地说,请注意 \(M=2k+7\)。 保存的解决方案的成本 \(p^*\)是 (9) \(开始{方程式}kc_{\textrm{max}}=\frac{M-7} {2} c(c)_ {\textrm{max}}=\Omega(Mc_{\textrm{max})。 \结束{方程式}\)
图3。 如果保留通过\(e^*\)的初始最短路径,则会导致错误的解决方案。 在这里,所有边缘都具有相同的重量,标签是移除成本。 通过\(e^*\)的最短路径是\((s,v_1,v_2,v_3,t)\),并包括边\(\lbrace v_3、t\rbrace \)和代价\(c_{min}\)。 然而,如果我们用这个路径作为\(p^*\)来求解最优力路径切割,则需要切割图顶部的\(k\)平行路径,从而导致\(kc_{\max}\)的成本。 另一方面,如果删除了\(\lbrace v_3,t\rbrace \),那么从\(s)到\(t)的最短路径将通过\(e^*),成本更低。 如果(k)为(Omega(M)),则当可以获得成本最低的解时,最优解保持((s,v_1,v_2,v_3,t)在去除所有边的常数因子内。
无需保存 \(p^*\),我们可以删除 \(\lbrace v_3,t\rbrace)并产生 \(c{\textrm{min}}\),这是删除超过零条边的攻击的最小可能代价。 这个场景的存在证明了以下定理。
定理5.1。 求解以最短路径为目标的最优力路径切割 \(e ^*\)(或 \(v^*\))可能会产生成本 \(\Omega(M\frac{c_{\textrm{max}}}{c_}\textrm}min}})\)比求解最佳力边切割(或最佳力节点切割)大一倍,其中 \(c_{\textrm{max}}\)和 \(c{\textrm{min}})分别是边缘去除成本的最大值和最小值。
为了使成本最小化并允许灵活地改变目标路径,我们提出了一个非凸优化问题。 我们从线性规划的公式开始,以获得通过的最短路径 \(e ^*\)(或 \(v^*\))。 回顾最短路径问题的线性规划公式(参见,例如[ 三 ]). 利用图的关联矩阵,求最短路径可以用线性规划表示。 在关联矩阵中,表示为 \(\mathbf{C}\),每行对应一个节点,每列对应一条边。 表示节点边缘的列 \(u\)到节点 \(v\)包含 \(-1\)在的行中 \(u\),在行中为1 \(v),其他地方为零。 如果图是无向的,则边的方向是任意的。 确定最短路径的步骤 \(s\)至 \(t\),定义向量 \(\mathbf{d}\in\lbrace-1,0,1\rbrace ^N\),即 \(-1\)在对应于的行中 \(s\),在行中为1 \(t),其他地方为零。 最短路径是整数线性规划的解 (10) \(\begin{align}\hat{\mathbf{x}}=&&\mathop{\text{arg-min}}\limits_{\mathbf{x}}\mathbf{x}^\top\mathbf{w}\end{align}\)
(11) \(\开始{align}\text{s.t.}&~\mathbf{x}\在\lbrace 0,1\rbrace ^{M}\end{align{}\中)
(12) \(\begin{align}&~\mathbf{C}\mathbf{x}=\mathbf1{d}.\end{alinge}\)
结果向量 \(\hat{\mathbf{x}}\)是最短路径中边的指示器。 4 方程式( 12 )确保 \(hat{mathbf{x}})是一条路径,目标保证结果具有最小权重。 由于关联矩阵的结构,我们可以放松方程( 11 )进入连续间隔 \([0,1]^M\中的\mathbf{x}\)。 如果距离 \(s\)至 \(t\)是唯一的, \尽管进行了这种放松,但(hat{mathbf{x}})将是最短路径的指示向量。 如果有多条最短路径, \({mathbf{x}})将是这些路径的向量的凸组合。
回想一下,攻击者的目标是迫使旅行者 \(s\)到 \(t)横穿边缘 \(e^*\),所以我们改变公式以找到这样的路径。 获取最短路径 \(e^*\),我们对两条路径执行类似的优化: \(s\)到 \(e^*\)和来自的路径 \(e ^*\)至 \(t)。 5 让 \(e^*=(u,v)\)是目标边。 (在无向设置中,我们考虑了 \((u,v)和 \((v,u)\)独立选择低成本解决方案。) 因为我们考虑两条路径,所以我们有两个向量 \(\mathbf {d} _1个 \)和 \(\mathbf {d} _2 \),类似于 \方程式中的(mathbf{d})( 12 ). 假设 \(s \n ne u)和 \(一个v\), \(\mathbf {d} _1个 \)是 \(-1\)在行 \第行中的(s)和1 \(u),其他地方为零,以及 \(\mathbf {d} _2 \)同样有 \(-1\)在的行中 \(v)和第1行 \(t)。 (如果 \(s=u), \(\mathbf {d} 1个 \)都是零 \(\mathbf {d} _2 \)如果 \(t=v\)。) 因为我们正在优化两条路径,所以我们使用两个路径向量, \(\mathbf {x} _1个 \[0,1]^M\)和 \(\mathbf {x} _2 \[0,1]^M\)。
然而,从中获取路径是不够的 \(s\)至 \(u)和一个来自 \(v)至 \(t):串联也必须是简单(非循环)路径。 (否则,最短路径算法将删除循环。)为了确保生成的路径没有循环,我们添加了一个约束以确保任何节点最多访问一次。 由于路径向量是在边上优化的,因此我们确保除了终端节点(最多出现一次)之外,任何节点在边集中最多出现两次。 为了获得这个约束,我们使用矩阵 \(\mathbf) {C}(C)_ {\textrm{abs}}\),包含关联矩阵的绝对值; 即 \第(i)行和 \第(j)列 \(\mathbf {C}(C)_ {\textrm{abs}}\)包含 \(|\mathbf {C}(C)_ {ij})。 我们还定义 \(\mathbf {d}_ {\textrm{abs}}\in\lbrace 1,2\rbrace ^N\)在与关联的行中为1 \(\), \(t\), \(u),和 \(v)和其他2。 这就产生了线性程序 (13) \(\开始{align}\hat{mathbf{x}}_1,\hat}\mathbf}x}}_2=&\mathop{text{arg-min}}\limits__{mathbf {x} _1个 ,\mathbf {x} _2 }(\mathbf) {x} _1个 +\马特布夫 {x} _2 )^\顶部\mathbf{w}\end{align}\)
(14) \(\开始{align}\text{s.t.}&~\mathbf {x} _1个 ,\mathbf {x} _2 \在[0,1]^{M}\结束{align}\)
(15) \(\开始{align}&~\mathbf{C}\mathbf {x} _1个 =\mathbf {d} _1个 \结束{align}\)
(16) \(\开始{align}&~\mathbf{C}\mathbf {x} 2个 =\mathbf {d} _2 \结束{align}\)
(17) \(\开始{align}&~\mathbf {C}(C)_ {\textrm{abs}}(\mathbf {x} _1个 +\马特布夫 {x} _2 )\le\mathbf公司 {d}_ {\textrm{abs}}。 \结束{align}\)
为了求解“强制边切割”,我们使用与中相同的约束生成技术 路径攻击 ,加上非线性约束,以确保返回的路径不包含任何删除的边。 如中所示 路径攻击 ,我们使用向量 \(\mathbf {x}_ [0,1]\中的{\textrm{cut}}\)。 除了约束之外 \(\mathbf {x}_ {\textrm{cut}}\)不剪切 \(e^*\),我们添加了非凸双线性约束 \(\mathbf {x}_ {\textrm{cut}}\)在任何地方都是0 \(\mathbf {x} _1个 \)或 \(\mathbf {x} _2 \)非零。 最后,我们再次考虑路径子集 \(P)我们希望确保被切割。 生成的非凸程序 (18) \(开始{align}\hat{mathbf{x}}_1,\hat}\mathbf}x}}_2,\hat{mathbf{x}{{mathrm{cut}}=&\mathop{text{arg-min}}\limits_{mathbf {x} _1个 ,\mathbf {x} 2个 ,\mathbf {x}_ {\textrm{cut}}}(\mathbf {x} _1个 +\马特布夫 {x} _2 )^\顶部\mathbf{w}\end{align}\)
(19) \(\开始{align}\text{s.t.}&~\mathbf {x} _1个 ,\mathbf {x} _2 \在[0,1]^{M}\结束{align}\)
(20) \(\开始{align}&~\mathbf {x}_ {\textrm{cut}}\在\lbrace 0,1\rbrace ^{M}\结束{align}\)
(21) \(\开始{align}&~\mathbf{C}\mathbf {x} _ i =\mathbf {d} i(_i) ,~i\in\lbrace 1,2\rbrace\end{align}\)
(22) \(\开始{align}&~\mathbf {C}(C)_ {\textrm{abs}}(\mathbf {x} _1个 +\数学BF {x} _2 )\le\mathbf公司 {d}_ {\textrm{abs}}\end{align}\)
(23) \(\开始{align}&~\mathbf {x} _ i ^\顶部\mathbf {x}_ {\textrm{cut}}=0,~i\in\lbrace 1,2\rbrace\end{align}\)
(24) \(\开始{align}&~\mathbf {x}_ {\textrm{cut}}(e^*)=0\结束{align}\)
(25) \(\开始{align}&~\mathbf {x}_ {\textrm{cut}}^\top\mathbf{c}\le-b\end{align}\)
(26) \(\开始{align}&~\mathbf {x}_ {\textrm{cut}}^\top\mathbf {x} (p) \第1~页,用于所有p\in p\end{align}\) 提供部分解决方案(即,竞争路径子集的解决方案)。
约束生成机制与“强制路径切割”情况略有不同。 求解“强制路径切割”时,存在一条长度不变的特定目标路径。 对于“强制边切割”(Force Edge Cut),将新路径添加到约束集时 \(P\),它可以改变最短的未切割路径 \(e^*\),从而更改包含的长度阈值。 因此,我们希望 \(P)包括解决方案中不长于最短路径的所有路径,在问题解决之前,最短路径是不可用的。 如中所示 路径攻击 ,每次我们解决优化问题时,我们都会在删除下列边后找到最短路径 \(\hat{\mathbf{x}}{\mathrm{cut}})以及 \(e ^*\)。 如果此路径不长于通过的最短未切割路径 \(e^*\)-由 \(\hat{\mathbf{x}}_1\), \(\hat{\mathbf{x}}_2),以及 \(e^*\)-那么这个替代路径也必须被剪切,我们添加了一个约束来实现这一点。 算法 4 为该修改的约束生成过程提供了psuedocode。
我们注意到方程的求解( 18 )是一种非凸混合整数优化,使用分支和切割求解,在最坏的情况下运行时间为指数。 因此,我们设置了最大运行时间 \(t_\mathrm{max}\),然后我们选择迄今为止找到的最佳解决方案。 我们用这个量来表示算法的运行时间,因为它代表了一个具有最坏情况指数运行时间的算法的截断运行时间。 约束生成过程的运行时间如下。
提议5.2。 算法 4 磨合 \(O(|P|(t_\mathrm{max}+M+N\log{N}))\)时间。
证明。 例示 \(\mathbf{C}\), \(\mathbf{w}\), \(\mathbf{c}\), \(\mathbf {d} _1个 \), \(\mathbf {d} _2 \), \(\mathbf) {C}(C)_ {\textrm{abs}}\),以及 \(\mathbf {d}_ {\textrm{abs}}\)成本 \(O(M+N)\)时间。 在循环中,我们首先从方程式中获得目标( 18 ),最多运行 \(t\mathrm{max}\)时间。 从中提取单个路径 \(\hat{\mathbf{x}}_1\)和 \({\mathbf{x}}_2)需要 \(O(M)\)(任何边最多考虑两次)。 正在提取 \(p_1)从指示符向量中取 \(O(|E_{p_1}|)\)时间。 的大小 \(E^\prime\)是 \(O(M)\),并创建 \(G^\prime\)取 \(O(N+M)\)时间。 在中查找最短路径 \(G^\prime\)获取 \(O(M+N\log{N})\)时间,并向添加新约束 \(P\)采取 \(O(|E_{p_2}|)\)时间。 结合循环中的所有操作,我们有 (27) \(开始{方程式}O(t_\mathrm{max}+M+N+N\log{N}+|E_{p_1}|+|E_}p_2}|)=O(t_mathrm}max}+M+N\log{N})。 \结束{方程式}\) 循环的迭代次数为 \(|P|\),并且循环内的渐近运行时间大于在循环之前实例化变量所需的时间。 这将产生的总运行时间为 \(O(|P|(t_\mathrm{max}+M+N\log{N}))\)。 □
为了最小化攻击成本,我们根据预算执行二进制搜索 \(b)。 我们通过运行 路径攻击 以最短路径为目标 \(e ^*\)。 我们执行标准 路径攻击 以获得上限,并移除目标路径未切割到下限的约束,而只约束 \(e^*\)未切割。 如果在搜索过程中发现了新的上限(即通过 \(e^*\)发现需要的预算小于正在考虑的预算),我们基于新的满意路径创建新的上下限。 算法 5 概述了此过程。
算法中的二进制搜索过程 5 将在成本为对数的多次迭代中终止 \(c\mathrm{total}=e}{c(e)}\中的sum_{e\)。 在循环中,我们运行Algorithm 4 ,按提议 5.2 磨合 \(O(|P|(t_\mathrm{max}+M+N\log{N}))\)时间。 在该算法的情况下 4 无法求解,我们删除约束,这需要 \(O(M_P)=O(|P|N)\)时间。 否则,我们创建一个新图形( \(O(N+M)\)时间),找到最短路径( \(O(M+N\log{N})\)时间),运行 路径攻击 两次( \(\波浪线{O}((M_P+|P|^2)|P||^{3/2}+|P| M)\)时间,按命题 4.3 ),并计算新预算( \(O(M)\)时间)。 结合循环中的所有项,我们的运行时间为 (28) \(\begin{方程式}\begin{split}&O(|P|(t_\mathrm{max}+M+N\log{N})+M+M_P+N+N\log{N})+\tilde{O}((M_P+|P|^2)|P||^{3/2}+|P| M}+M+N),结束{拆分}结束{方程式} 由于 \(\波浪线{O}\)表示法。 循环中的迭代次数将对数因子添加到运行时间中,在符号中也省略了对数因子,从而得出以下命题。
提案5.3。 算法 5 磨合 \(\波浪线{O}((M_P+|P|^2)|P||^{3/2}+|P|(t_\mathrm{max}+M+N))\)时间。
除了组合优化方法外,我们还考虑了一种启发式算法,该算法旨在识别阻碍最优解决方案的瓶颈,如图所示 三 ,并保证在多项式时间内运行。 在组合优化中,我们利用 路径攻击 有约束和无约束以避免切割目标路径。 在这种情况下,运行后 路径攻击 而只是防止 \(e^*\)从被切割开始,我们考虑目标路径上被切割的边 路径攻击 对于这些边中的每一条,我们考虑(1)从图中完全删除边或(2)将其标记为永远不会删除的可能性。 如果这些边缘的移除导致 \(t\)无法到达 \(s),我们将该边添加到一个不可绘制边列表中。 否则,我们考虑这样一种情况,即每一条边都被删除,每次都要找到最短的路径 \(e ^*\)。 我们跑了 路径攻击 在每种情况下,找出其删除导致删除预算的最低上限的边。 此边将添加到将始终删除的边列表中。 当上下限收敛时,此过程终止。算法中提供了此启发式搜索的伪代码描述 6 .
在算法的每次迭代中 6 , 路径攻击 运行的次数为 \(N)次(每边一次 \(p\),距离 \(s\)到 \(t\)至 \(e^*\)),总运行时间为 \(\波浪线{O}(N((M_P+|P|^2)|P||^{3/2}+|P| M))\)。 这支配着循环的内部,除了查找 \(p):这还涉及到用 \(O(M)\)非零和 \(O(N)\)约束。 遵循我们使用的相同公式 路径攻击 ,这将导致运行时间为 \(\波浪线{O}((M+N^2)N^{1/2})\)。 循环中的总迭代次数由 \(M)(每次迭代都会删除一条边,但没有找到解决方案),这会导致总运行时间如下。
提案5.4。 算法 6 磨合 \(颚化符{O}(MN((M_P+|P|^2)|P|^{3/2}+|P|M)+(M+N^2)MN^{1/2})\)时间。
与相同 路径攻击 如果使用椭球算法,这可以保证多项式的运行时间,但在我们的实验中,我们使用了其他在实践中更快的方法。
跳过6个实验部分 6 实验 本节介绍基线、数据集、实验设置和结果。
6.1 基线方法 我们将两种简单的贪婪方法作为评估 路径攻击 。每个算法都迭代计算最短路径 \(p\)介于 \(\)和 \(t); 如果 \(p\)不长于 \(p^*\),它使用一些标准从 \(第页)。 当我们以最小成本切割边缘时,我们将该算法称为 贪婪成本 。我们还考虑基于当前最短路径最重要边的版本[ 44 ],这是一条边,如果移除该边,将导致端点之间的距离最大。 如果 \(p\)是当前最短路径 \(s\)至 \(t\),边缘的分数 \(e)是距离 \(s\)至 \(t\)如果 \(e)除以 \(e)。 我们反复删除得分最高的边,直到 \(p^*\)是最短的路径。 此版本的算法称为 贪婪MVE 在任何一种情况下,边缘 \不允许切割(p^*\)。 (在之前的工作中[ 42 ],我们还考虑使用每条边的特征值[ 48 ]但这一直表现不佳 贪婪成本 .)我们在算法中提供了包含两个基线的伪代码 7 。求解最佳力边切割(或最佳力节点切割)的基线方法是确定通过 \(e ^*\)(或 \(v^*\)),将此路径用作 \(p^*\),并求解 路径攻击 .
在算法外循环的每次迭代中 7 ,我们找到最多两条最短路径,运行时间为 \(O(M+N\log{N})\)。 对于最短路径中的每条边,我们要么做恒定的功(在 贪婪成本 )或者找到一个新的距离 \(s\)至 \(t)(用于 贪婪MVE ),这需要 \(O(M+N\log{N})\)。 在以下情况下 贪婪的MVE ,对于我们标识为约束的所有路径上的每条边,都会发生一次,定义为 \方程式中的(M_P)( 三 ). 这将导致以下渐近运行时间。
提议6.1。 贪婪成本 磨合 \(O(|P|(M+N\log{N}))时间和 贪婪MVE 磨合 \(O(M_P(M+N\log{N}))时间。
6.2 合成网络和真实网络 我们在实验中使用了合成网络和真实网络。 对于合成网络,我们运行七个不同的图模型来生成每个模型的100个合成网络。 我们选取参数以生成具有相似边数的网络( \(约160K)。 我们使用16000个节点的Erdős–Rényi图,包括无向(ER)和有向(DER),边缘概率为0.00125; 16000-节点 巴拉巴西-阿尔伯特(BA) 平均度为20的图; 16000-节点 瓦特-斯特罗加茨(WS) 平均次数为20,重接线概率为0.02的图; \(2^{14})-节点随机 克罗内克(Kronecker) 图; \(285\乘以285\) 格子(LAT) ; 和565节点 完成(COMP) 图。
我们使用七个加权和未加权网络。 未加权网络是 Wikispeedia(WIKI) 图表[ 53 ],俄勒冈州 自主系统(AS) 网络[ 34 ],和 宾夕法尼亚州公路网(PA-road) [ 35 ]。 加权网络为 智利中部电网 [ 32 ], 劳伦斯伯克利国家实验室网络数据(LBL) ,的 美国东北部公路网(NEUS) 、和 DBLP合著图(DBLP) [ 5 ]。 除WIKI和LBL外,所有实际网络都是无向的。网络的范围从347个节点上的444条边到1.8M多个节点上超过8.3M条边,平均度从2.5到46.5不等,三角形数从40到近27M不等。 有关真实网络和合成网络的更多详细信息,包括真实数据的URL,请参阅附录 D类 .
对于合成网络和未加权的真实网络,我们考虑了三种不同熵水平的边权分配方案:均匀随机权重(高熵)、泊松随机权重(低熵)或相等权重(无熵)。 对于泊松权重,每个边 \(e)具有独立的随机权重 \(w_e=1+w_e ^\prime),其中 \(w_e^\prime)是从具有速率参数20的泊松分布中得出的。 对于均匀权重,每个权重都是从1到41的整数的离散均匀分布中提取的。 这将产生与泊松权重相同的平均权重。
6.3 实验装置 对于每一个具有不同边缘加权方案的图形相关图,我们进行了100次实验。 在每个实验中,我们选择 \(\)和 \(t)在所有节点中均匀随机,LAT、PA-ROAD和NEUS除外,其中我们选择 \(s\)均匀随机选择 \(t)在距离30到50跳的节点之间随机 \(s \),其中距离是从范围内均匀随机选择的。 6 鉴于 \(\)和 \(t),我们确定最短的简单路径,并使用第100、200、400和800条最短路径作为 \(p^*\)在四个实验中。 对于大型网格状网络(LAT、PA-ROAD和NEUS),此过程仅使用 \(s\)。 我们关注的是边缘去除成本等于重量(距离)的情况。 对于强制边切割和强制节点切割,我们考虑从 \(s\)至 \(t)直到我们看到五条边(或节点)不在初始最短路径上。 我们看到的不在原始最短路径上的第五条边(或节点)用作 \(e ^*\)(或 \(v^*\))。
运行算法时 4 ,我们让非凸优化( 18 )跑步时间不超过10分钟。 如果当时没有找到可行点,我们假设模型不可行,并增加预算。 我们每30秒停止一次该过程,以检查最佳候选解决方案,并查看它是否满足我们的标准。此外,如果目标与最佳现有解决方案的长度匹配,我们将停止优化。 如果我们考虑超过8小时的预算,我们认为它不可行,并增加下限。 如果24小时后仍在运行,则整个过程将终止,并返回最低上限。
实验在具有32个内核和192GB内存的Linux机器上运行。 中的LP 路径攻击-随机 使用Gurobi 9.1.1实现,最短路径使用 最短的简单路径 在NetworkX中。 7 组合搜索方法设置为使用四个线程。
6.4 路径攻击结果 我们对待 贪婪成本 作为我们的基准成本,并报告其他算法解决方案的成本,作为该基准的减少。 在所有实验中,我们将边缘去除成本设置为等于权重。 图 4 显示了合成图和实际未加权图的结果,这些图的边上添加了合成权重。 图 5 显示了实数加权网络上的结果。 在这些图中,第800条最短路径被用作 \(p^*\); 其他结果是相似的,为了简洁起见省略了。
图4。 PATHATTACK在合成图和实际未加权图上得出结果,并添加了合成权重,包括边缘去除成本(左栏)和运行时间(右栏)。 这两个指标越低越好。 使用GreedyCost基线将成本绘制为成本的比例。 杆高是100次试验的平均值,误差杆是标准误差。 结果显示,所有边(顶行)上的权重相等,从泊松分布(中行)和均匀分布(底行)中提取边权重。 PATHATTACK-Greedy在重量相等的格子上操作了1天以上,没有收敛,因此没有收集到本例的结果。 PATHATTACK大大降低了ER、BA、KR、WIKI和AS图的成本,而LAT和PA-ROAD的基线通常接近最佳。
图5。 PATHATTACK根据边缘去除成本(左)和运行时间(右)在实际加权图上得出结果。 这两个指标越低越好。 使用GreedyCost基线将成本绘制为成本的比例。 钢筋高度是100次试验的平均值,误差钢筋是标准误差。 注意垂直轴上的比例与图中的不同 4 .PATHATTACK大大提高了DBLP的性能,而基线在其他(集群较少的)网络上表现良好。
考虑到两个基线之间的差异,我们发现在大多数情况下,在成本方面表现相当相似。 虽然使用最重要的基于边缘的基线通常比单独使用成本有一些改进,但它的改进效果永远不会超过10% 贪婪成本 。这是真的,尽管运行时间要长得多。 值得注意的是,我们的 贪婪MVE 实现没有优化:它是在NetworkX中实现的,并使用暴力技术来查找最重要的边(即从图中删除每个候选边后查找最短路径)。 然而,成本结果表明,即使是一个优化的版本,与贪婪地去除成本最低的边缘相比,也只能提供相对较小的改进。
比较通过以下方式实现的成本 路径攻击 对于那些通过贪婪基线获得的结果,我们观察到一些有趣的现象。 例如,格子和道路网络具有类似的折衷: 路径攻击 以一个数量级的额外处理时间为代价,略微提高了成本。 考虑到 路径攻击-随机 通常会得到最佳解决方案(超过86%的时间),这意味着基线通常会通过天真的算法达到接近最佳的成本。 另一方面,ER、BA和KR图遵循的趋势与AS和WIKI网络更为相似,特别是在随机加权的情况下:成本被大幅削减,从而以较小的预算支持攻击,而时间增长则相似或较小。 这表明,时间/成本权衡对集群度较低的网格状网络不利得多(注意附录中的集群系数 D类 ).
在这种情况下,Cliques(COMP)特别有趣,它显示了随着权重熵的增加而发生的相变。 当边缘权重相等时,团的行为类似于道路网络的极端版本:运行时数量级增加,而成本没有降低。 使用泊松权重, 路径攻击 成本略有提高,而当使用均匀随机权重时,团的行为更像ER或BA图。 在未加权的情况下, \(p^*\)是三跳路径,因此 \(s\)至 \(t)必须进行切割,而基线有效地做到了这一点。 添加泊松权重会产生一些随机性,但大多数边的权重大约是平均值,因此它仍然类似于未加权的场景。使用统一的随机权重,我们可以得到贪婪基线性能受到影响的不同行为(例如,具有多个边的短路径)的可能性。
PA-ROAD和LAT有一个相反但更温和的现象:使用更高的能量权重 变窄 基准和 路径攻击 。这可能是因为源和目标相隔多远。 由于终端节点之间有许多跳距,因此它们之间的许多最短路径可以通过一些低重量(因此成本低)的边。 两个节点之间的极低权重边很可能出现在许多最短路径上,并且会在贪婪算法的早期迭代中发现并删除,而同时考虑更多的最短路径会产生类似的结果。 我们还注意到,在加权图数据中,LBL和GRID的行为类似于道路网络。 在我们的实际数据集中,这些数据集的聚类系数很低(参见附录 D类 ). 由于候选路径之间可能没有太多重叠,因此节点邻域中缺少重叠可能会导致与基线的相对性能更好。 对于实际数据集,我们还可以看到基线方法的近最佳性能。 以LBL数据集为例。 在图中为该数据集汇总的100个试验中,有60个试验 5 , 路径攻击-随机 得到最优解。 在这些试验中 贪婪成本 基准收益率平均增加9.3%左右。 这与基线中7.1%的成本增长非常相似 全部的 试验。 这表明,在许多现实世界的网络中,贪婪方法是非常有效的。
6.5 以节点为目标的结果 在本节中,我们将展示对手以节点为目标的情况下的结果 \(v^*\)。 这些实验的基准是 路径攻击 使用最短路径 \(s\)到 \(t\)至 \(v^*\)作为 \(p^*\)。 我们称这种方法为 路径攻击 - \(v^*\)。 我们给出了使用该方法的结果以及启发式搜索方法(算法 6 )和组合优化。
在大多数情况下,这三种方法都会产生相同成本的解决方案。 为了澄清性能差异,我们将这些情况与方法之间成本不同的情况分开。 对于所有方法导致相同成本的情况,我们在图中显示了未加权图的运行时间结果 6 与目标路径一样,格子和道路网络是相似的:它们是启发式方法在大多数情况下与组合优化结果不匹配的唯一图形,主要是由于等量情况。 Watts–Strogtaz图有一个类似格子的组件,在不同的方法中也经常有不同的结果。 图 7 举例说明了并非所有算法产生相同成本的情况。 同样,格子和道路是不同的:在这里,他们看到组合优化比启发式有更大的改进,Watts–Strogatz图有时也类似。 在许多情况下,启发式搜索产生的结果与 路径攻击 - \(v^*\)基线。 经检查,许多这种情况是由使用 \(v^*\):启发式忽略了一个解决方案,因为它没有切断电流 \(p^*\),这导致在算法的内部循环中没有要考虑的边 6 .
图6。 在所有三种算法产生相同成本的情况下,以特定节点为目标时,在未加权网络上的运行时间结果。 时间越短越好。 注释是所有费用相同的100个试验的比例。 杆高是这些试验的平均值,误差杆是标准误差。 结果显示,所有边(顶部)的权重相等,边权重由泊松分布(中部)和均匀分布(底部)得出。 除了LAT和PA-ROAD之外,基线方法在大多数情况下都与组合优化相匹配,并且所需的时间要少得多。
图7。 在并非所有节点定位算法在边缘去除成本(左栏)和运行时间(右栏)方面产生相同成本的情况下,以特定节点为目标时未加权网络的结果。 这两个指标越低越好。 杆高是这些试验的平均值,误差杆是标准误差。 结果显示,所有边(顶行)上的权重相等,从泊松分布(中行)和均匀分布(底行)中提取边权重。 注意,不包括具有相等和泊松权重的COMP和具有泊松权重的ER,因为所有试验中的方法都匹配。 使用组合搜索最大的成本降低通常与运行时间的大幅增加相一致。
对于加权网络,所有方法产生相同成本的情况下的运行时间如图所示 8 在所有情况下,虽然组合方法经常超时,但这三种算法通常都能找到等成本解。 使用组合方法时,电网的运行时间增长特别大。 在并非所有方法产生相同成本的情况下,如图所示 9 与未加权图相比,启发式搜索获得与组合搜索相同的代价更多。 事实上,在DBLP上,组合搜索通常会超时,而启发式搜索的性能优于它。
图8。 在所有三种算法产生相同成本的情况下,以特定节点为目标时,加权网络上的运行时间结果。 时间越短越好。 注释是所有费用相同的100个试验的比例。 杆高是这些试验的平均值,误差杆是标准误差。 与未加权网络相比,启发式方法在大多数情况下都与组合优化相匹配,即使在网格状网络中也是如此。
图9。 在并非所有节点目标算法都产生相同成本的情况下,在边缘去除成本(左)和运行时间(右)方面,当以特定节点为目标时,加权网络的结果。 这两个指标越低越好。 杆高是这些试验的平均值,误差杆是标准误差。 在这些情况下,启发式搜索与组合搜索相比具有竞争力,甚至有时由于超时而优于组合搜索。
跳过7结论部分 7 结论 在本文中,我们介绍了强制路径切割、强制边切割和强制节点切割问题,在这些问题中,为了使从一个节点到另一个节点的最短路径分别为特定路径、使用特定边或使用特定节点,需要从图中删除边。 我们表明,所有三个问题的优化版本都很难近似,但通过现有的集合覆盖近似算法,最优力路径切割存在对数近似。 我们利用这些方法开发了一种新的算法,称为 路径攻击 并通过在真实网络和合成网络上进行的一组彻底的实验,证明其在求解最优力路径切割中的有效性。 我们还使用 路径攻击 作为启发式搜索方法的一部分,用于求解最优力边切割和最优力节点切割,其性能类似于计算密集度更高的组合搜索。
近似因子之间存在间隙 路径攻击 和APX硬度暗示的下限; 最优力路径切割是APX完全的还是没有常数因子近似的,这仍然是一个悬而未决的问题。 三端切割的最佳多项式时间近似因子为 \(12/11\) [ 17 ],我们的结果表明,最佳力路径切割的最佳近似值介于 \(12/11)和对数。 其他近似算法,例如超图顶点覆盖的算法[ 31 ],在某些情况下可能有用,例如直径很小的图形。 此外,虽然我们为所有算法的运行时间提供了上限,但实验结果表明这些都是悲观的,可以收紧。 特别是,在我们求解稀疏线性程序的情况下,可以利用稀疏矩阵的结构来实现更严格的边界。 未来的工作将包括防御 路径攻击 使网络更能抵抗对抗性操纵。
1 可以通过显著增加权重来模拟边缘去除。 使用加权汉明距离的反向最短路径还允许减少边权重,这在强制路径切割中是不允许的。
脚注 2 这也可以通过从优化中删除这些变量来实现。
脚注 三 符号 \(tilde{O})从 \(O\)表示法。
脚注 4 在无向情况下,为了表示边在其任意方向的相反方向上的遍历,我们考虑 \(\mathbf {x}_ \textrm{pos}\)和 \(\mathbf) {x}_ \textrm{neg}\),使用公式( 12 )替换为 \(\mathbf{C}(\ mathbf {x}_ \文本消息 {位置}- \马特布夫 {x}_ \textrm{neg})=\mathbf{d}\),目标替换为 \((\mathbf {x}_ \textrm{pos}+\mathbf {x}_ \textrm{neg})^\top\mathbf{w}\)。 为了限制沿两个方向移动边,我们添加了约束 \(\mathbf {x}_ \textrm{pos}+\mathbf {x}_ \textrm{neg}\le\mathbf{1}\)
脚注 5 为了简洁起见,我们将重点讨论最优力切边的解决方案。 最佳力节点切割的公式类似。
脚注 6 由于在大型网格状网络中识别连续最短路径的计算开销,因此使用了这种选择目的地的替代方法。
脚注 7 古罗比在 https://www.gurobi.com网站 .NetworkX位于 https://networkx.org .实验代码位于 https://github.com/bamille1/PATHATTACK网站 .
脚注 8 更具体地说,它在[ 18 ]问题是MAX SNP-hard,但这意味着APX-hard:如果问题是MAX-SNP-hard,那么它没有多项式时间近似方案,除非P=NP。
[1] Ahuja Ravindra K。 和 奥林·詹姆斯B。 . 2001 . 反向优化 . 运筹学 49 , 5 ( 2001 ), 771 —— 783 . 谷歌学者 数字图书馆 [2] 阿尔伯特·雷卡 , Jeong Hawoong公司 、和 巴拉巴西·阿尔伯特·拉什洛 . 2000 . 复杂网络的容错与攻击 . 自然 406 , 6794 ( 2000 ), 378 —— 382 . 谷歌学者 交叉引用 [3] 阿尼娅·亚什·P。 和 奈尔·库希拉曼(Nair Kunhiraman P.K.)。 . 1978 . 约束最短路径问题 . 海军研究后勤季刊 25 , 三 ( 1978 ), 549 —— 555 . 谷歌学者 交叉引用 [4] 本·阿梅尔·瓦利德 和 内托·何塞 . 2006 . 基于多点分离的大规模线性规划约束生成算法 . 数学规划 107 , 三 ( 2006 ), 517 —— 537 . 谷歌学者 数字图书馆 [5] 本森·奥斯汀(Benson Austin R.)。 , Abebe重放 , 肖伯·迈克尔·T。 , 贾德巴比·阿里 、和 Kleinberg乔恩 . 2018 . 简单闭包与高阶链路预测 . 美国国家科学院院刊 115 , 48 ( 2018 ), E11221–E11230 . 谷歌学者 交叉引用 [6] 伯西马斯·迪米特里斯 , 纳斯拉巴迪·易卜拉欣 、和 奥林·詹姆斯B。 . 2016 . 论网络阻断中随机化的威力 . 运营研究信件 44 , 1 ( 2016 ), 114 —— 120 . 谷歌学者 数字图书馆 [7] 金德尔·文森特·D。 , 纪尧姆·吉安·卢普 , 兰比特·雷诺 、和 列斐伏尔·艾蒂安 . 2008 . 大型网络中社区的快速发展 . 统计力学杂志:理论与实验 2008 , 10 ( 2008 ), 第10008页 . 谷歌学者 交叉引用
[8] 博伊切夫斯基·阿列克桑达尔 和 Günnemann Stephan先生 . 2019 . 通过图中毒对节点嵌入进行对抗性攻击 .英寸 第36届机器学习国际会议(ICML’19)会议记录 PMLR,695–704。 谷歌学者 [9] 布兰多·马蒂姆 , 科尔斯·阿曼达 、和 Magazzeni Daniele公司 . 2021 . 解释路径规划优化:使用全逆优化和增量逆优化的导航网格快速解释方法 .英寸 自动化规划和调度国际会议记录(ICAPS’21) ,卷。 31 . AAAI出版社 , 加利福尼亚州帕洛阿尔托 , 56 —— 64 . 谷歌学者 [10] 给米凯尔打电话 和 霍姆伯格-卡吉 . 2011 . 逆最短路径路由的复杂性 .英寸 网络优化(INOC'11) . 施普林格 , 柏林, 339 —— 353 . 谷歌学者 [11] 常恒 , 荣宇(音) , 徐廷阳 , 黄文兵 , 张洪雷 , 崔鹏 , 朱文武 、和 黄俊洲 . 2020 . 一种面向攻击图嵌入模型的受限黑盒对抗框架 .英寸 AAAI人工智能会议记录(AAAI'20) . AAAI出版社 , 加利福尼亚州帕洛阿尔托 , 3389 —— 3396 . 谷歌学者 [12] 陈金银 , 陈丽红 , 陈义贤 , 赵明浩 , 余善清 , 宣启 、和 杨小牛 . 2019 . 基于GA的社区检测Q攻击 . IEEE计算社会系统汇刊 6 , 三 ( 2019 ), 491 —— 503 . 谷歌学者 交叉引用 [13] 陈金银 , 陈义贤 , 陈丽红 , 赵明浩 、和 玄气 . 2020 . 社区检测中的多尺度进化扰动攻击 . IEEE计算社会系统汇刊 8 , 1 ( 2020 ), 62 —— 75 . 谷歌学者 交叉引用 [14] 陈金银 , 吴阳阳 , 徐轩恒 , 陈义贤 , 郑海滨 、和 玄气 . 2018 . 网络嵌入中的快速梯度攻击 . 谷歌学者 交叉引用 [15] 科曼·托马斯H。 , 雷瑟森·查尔斯·E·。 、和 Rivest Ronald L。 . 1990 . 哈希表 .英寸 算法简介 . 麻省理工学院出版社 , 马萨诸塞州剑桥 , 219 —— 243 . 谷歌学者 [16] 崔婷婷 和 Hochbaum Dorit S.公司。 . 2010 . 一些逆最短路径问题的复杂性 . 网络 56 , 1 ( 2010 ), 20 —— 29 . 谷歌学者 数字图书馆 [17] 坎宁安·威廉·H·。 和 唐·劳伦斯 . 1999 . 最优三端切割与线性规划 .英寸 整数规划和组合优化国际会议 .施普林格, 施普林格 , 柏林, 114 —— 125 . 谷歌学者 交叉引用 [18] 达尔豪斯·埃利亚斯 , Johnson David S。 , Papadimitriou Christos H。 , 西摩·保罗·D·。 、和 亚纳卡基斯·米哈利斯 . 1994 . 多端切割的复杂性 . SIAM计算机杂志 23 , 4 ( 1994 ), 864 —— 894 . 谷歌学者 数字图书馆 [19] 戴汉军 , 李辉 , 田田 , 黄欣 , 王林 , 朱军 、和 宋乐 . 2018 . 图结构数据的对抗性攻击 .英寸 第35届机器学习国际会议(ICML’18)会议记录 . PMLR公司 , 1115 —— 1124 . 谷歌学者 [20] 迪科努·阿德里安 和 齐帕拉·劳拉 . 2020 . 具有下界和上界的逆最小割问题 . 数学 8 , 9 ( 2020 ), 10页 . 谷歌学者 交叉引用 [21] 迪尔基纳·比斯特拉 , 赖·凯瑟琳J。 、和 戈麦斯·卡拉(Gomes Carla P.)。 . 2011 . 升级网络中的最短路径 .英寸 AI和OR技术在组合优化问题约束规划中的集成(CPAIOR’11) . 施普林格 , 柏林 , 76 —— 91 . 谷歌学者 [22] 艾普斯坦·戴维 . 1998 . 查找 \(k\)最短路径 . SIAM计算机杂志 28 , 2 ( 1998 ), 652 —— 673 . 谷歌学者 数字图书馆 [23] 菲昂达·瓦莱里亚 和 皮罗·朱塞佩 . 2017 . 社区欺骗或:如何停止害怕社区检测算法 . IEEE知识与数据工程汇刊 30 , 4 ( 2017 ), 660 —— 673 . 谷歌学者 交叉引用 [24] 加茨·彼得 和 洛瓦斯·拉斯洛 . 1981 . 哈奇扬线性规划算法 .英寸 Oberwolfach的数学规划 . 施普林格 , 柏林 , 61 —— 68 . 谷歌学者 [25] 格伦切尔·马丁 , 洛瓦斯·拉斯洛 、和 施里杰弗·亚历山大 . 1981 . 组合优化中的椭球方法及其结果 . 组合型 1 , 2 ( 1981 ), 169 —— 197 . 谷歌学者 交叉引用 [26] 贾恩·曼尼什 , Korzhyk Dmytro公司 , 范·安德(Vaněk Ondřej) , 科尼泽·文森特 , Pěchouček Michal先生 、和 塔姆贝·米林德 . 2011 . 图上零和安全对策的双预言算法 .英寸 第十届自主代理和多代理系统国际会议(AAMAS’11)会议记录 . 国际会计师联合会 , 南卡罗来纳州里奇兰 , 327 —— 334 . 谷歌学者 [27] 姜一伟 , 刘龙城 , 吴彪 、和 姚恩玉 . 2010 . 加权Hamming距离下的最小费用流反问题 . 欧洲运筹学杂志 207 , 1 ( 2010 ), 50 —— 54 . 谷歌学者 交叉引用 [28] 姜忠元 , 李静 , 马建峰 、和 Yu Philip S。 . 2020 . 基于相似性和Sybil的攻击为社交网络的社区检测提供了防御 . IEEE电路与系统汇刊II:简报 67 , 12 ( 2020 ), 3487 —— 3491 . 谷歌学者 交叉引用 [29] Jun Myungsoo先生 和 达安德里亚·拉斐洛 . 2003 . 不确定和对抗环境下无人飞行器的路径规划 .英寸 协同控制:模型、应用和算法 . 美国施普林格 , 马萨诸塞州波士顿 , 95 —— 110 . 谷歌学者 [30] 凯格梅耶·菲利普 , 温特·杰里米·D·。 、和 皮纳尔·阿里 . 2018 . 反病毒社区检测分析实例 . 技术报告 沙2018-12068。 桑迪亚国家实验室。 谷歌学者 交叉引用 [31] Khot子散列 和 雷格夫·奥德德 . 2008 . 顶点覆盖可能很难接近2以内- \(\varepsilon\) . 计算机与系统科学杂志 74 , 三 ( 2008 ), 335 —— 349 . 谷歌学者 数字图书馆 [32] 金·希泰 , 奥拉夫·罗杰斯·戴维 , 阿尔瓦雷斯-米兰达-爱德华多 、和 儿子Seung-Woo . 2018 . 智利中部电网网络结构和每小时活动的深度数据 . 科学数据 5 , 1 ( 2018 ), 1 —— 10 . 谷歌学者 交叉引用 [33] 李寅达 和 西德福德·亚伦 . 2015 . 线性规划的高效逆维护和快速算法 .英寸 IEEE第56届计算机科学基础年会(FOCS’15) . 电气与电子工程师协会 , 新泽西州皮斯卡塔韦 , 230 —— 249 . 谷歌学者 [34] 莱斯科维奇陪审团 , 克莱恩贝格·乔恩 、和 法洛索斯·克里斯托斯 . 2005 . 随时间变化的图表:致密化定律、收缩直径和可能的解释 .英寸 第十一届ACM SIGKDD数据挖掘知识发现国际会议论文集(KDD’05) . ACM公司 , 纽约州纽约市 , 177 —— 187 . 谷歌学者 [35] 莱斯科维奇陪审团 , 朗·凯文·J。 , 达斯古普塔·阿尼尔班 、和 马奥尼·迈克尔·W。 . 2009 . 大型网络中的社区结构:自然集群规模和缺乏定义明确的大型集群 . 互联网数学 6 , 1 ( 2009 ), 29 —— 123 . 谷歌学者 交叉引用 [36] 莱奇福德·约书亚 和 叶甫根尼 . 2013 . 攻击计划的最佳阻断 .英寸 第十二届自治代理和多代理系统国际会议记录 . 国际会计师联合会 , 南卡罗来纳州里奇兰 , 199 —— 206 . 谷歌学者 [37] 李佳 , 张红雷 , 韩志超 , 荣宇(音) , 程红 、和 黄俊洲 . 2020 . 隐藏个人对社区检测的对抗性攻击 .英寸 网络会议记录(WWW'20) . ACM公司 , 纽约州纽约市 , 917 —— 927 . 谷歌学者 [38] 刘龙城 和 张建忠 . 2006 . 加权Hamming距离下的最大流反问题 . 组合优化期刊 12 , 4 ( 2006 ), 395 —— 408 . 谷歌学者 交叉引用 [39] 梅迪亚·苏拉夫 , 博格达诺夫·佩特科 、和 辛格·安布吉 . 2016 . 面向可扩展网络延迟最小化 .英寸 IEEE第16届国际数据挖掘会议(ICDM'16) . 电气与电子工程师协会 , 新泽西州皮斯卡塔韦 , 1083 —— 1088 . 谷歌学者 [40] 梅迪亚·苏拉夫 , 拉努·萨扬 , 瓦切里·吉辛 、和 辛格·安布吉 . 2018 . 通过节点升级将网络延迟降至最低 . VLDB捐赠会议记录 11 , 9 ( 2018 ), 988 —— 1001 . 谷歌学者 数字图书馆 [41] 迈耶森·亚当 和 塔吉库·布赖恩 . 2009 . 通过添加快捷边最小化平均最短路径距离 .英寸 近似、随机化和组合优化。 算法和技术(APPROX–RANDOM’09) . 施普林格 , 柏林 , 272 —— 285 . 谷歌学者 [42] 米勒·本杰明A。 , 沙菲·佐海尔 , Ruml Wheeler公司 , 沃勒德米奇克·叶夫根尼 , 埃利亚西·雷德·蒂娜 、和 阿尔费尔德·斯科特 . 2021 . PATHATTACK:攻击复杂网络中的最短路径 .英寸 数据库中的机器学习和知识发现。 研究方向(ECML PKDD’21) , 奥利弗·努里亚 , 佩雷斯·克鲁斯·费尔南多 , 克莱默·斯特凡 , 阅读Jesse 、和 洛扎诺·何塞A。 (编辑)。 施普林格国际出版公司 , 查姆 , 532 —— 547 . 谷歌学者 [43] Nagaraja Shishir公司 . 2010 . 不可链接性对敌对社区检测的影响:效果与对策 .英寸 隐私增强技术(PETS’10) . 施普林格 , 柏林 , 253 —— 272 . 谷歌学者 [44] 纳德利·恩里科 , 吉多项目 、和 维德迈尔·彼得 . 2001 . 快速计算最短路径的最重要边 . 信息处理信件 79 , 2 ( 2001 ), 81 —— 85 . 谷歌学者 数字图书馆 [45] 纳德利·恩里科 , Proietti Guido公司 、和 维德迈尔·彼得 . 2003 . 找到最短路径中最重要的节点 . 理论计算机科学 296 , 1 ( 2003 ), 167 —— 177 . 谷歌学者 数字图书馆 [46] 拉兹·兰 和 Safra Shmuel公司 . 1997 . NP的亚常量错误概率低度检验和亚常量错误几率PCP表征 .英寸 第29届ACM计算理论年会论文集(STOC'97) . ACM公司 , 纽约州纽约市 , 475 —— 484 . 谷歌学者 [47] Tayyebi爪哇 和 阿曼·马苏德 . 2016 . 海明距离下树上反向最短路径问题的有效算法 . 南斯拉夫运筹学杂志 27 , 1 ( 2016 ), 46 —— 60 . 谷歌学者 交叉引用 [48] 童航航 , 普拉卡什·B·阿迪蒂亚 , 埃利亚西·拉德·蒂娜 , 法洛索斯·米查利斯 、和 法洛索斯·克里斯托斯 . 2012 . 通过边缘操作将大图形凝胶化和融化 .英寸 第21届ACM信息与知识管理国际会议(CIKM'12)会议记录 . ACM公司 , 纽约州纽约市 , 245 —— 254 . 谷歌学者 [49] 瓦齐拉尼·维贾伊五世。 . 2003 . 近似算法 . 施普林格 , 柏林 . 谷歌学者 交叉引用 [50] 瓦齐拉尼·维贾伊五世。 . 2003 . 应用舍入设置覆盖 .英寸 近似算法 . 施普林格 , 柏林 , 118 —— 123 . 谷歌学者 交叉引用 [51] 瓦尼埃克·马钦 , Michalak Tomasz P。 , 伍尔德里奇·迈克尔·J·。 、和 拉赫万·塔拉尔 . 2018 . 在社交网络中隐藏个人和社区 . 自然-人类行为 2 , 2 ( 2018 ), 139 —— 147 . 谷歌学者 交叉引用 [52] 艾伦·沃什伯恩 和 伍德·凯文 . 1995 . 网络阻断的两人零和游戏 . 运筹学 43 , 2 ( 1995 ), 243 —— 251 . 谷歌学者 数字图书馆 [53] 西罗伯特 , 皮诺-乔尔 、和 Precup Doina公司 . 2009 . Wikispeedia:用于推断概念之间语义距离的在线游戏 .英寸 第21届国际人工智能联合会议记录(IJCAI'09) . AAAI出版社 , 加利福尼亚州帕洛阿尔托 , 1598 —— 1603 . 谷歌学者 [54] 吴慧君 , 王晨 , 季谢茨基·尤里 , 多尔蒂·安德鲁 , 卢凯 、和 朱利明 . 2019 . 图形数据的对手示例:对攻击和防御的深入了解 .英寸 第28届国际人工智能联合会议论文集(IJCAI’19) . 国际JCAI , 4816 —— 4823 . 谷歌学者 [55] 徐凯迪 , 陈洪阁 , 刘思嘉 , 陈品玉 , 翁翠伟 , 洪明毅 、和 林雪 . 2019 . 图神经网络的拓扑攻防:一种优化观点 .英寸 第28届国际人工智能联合会议(IJCAI’19)会议记录 . 国际JCAI , 3961 —— 3967 . 谷歌学者 [56] 徐少吉 和 张建忠 . 1995 . 加权最短路径问题的一个逆问题 . 日本工业与应用数学杂志 12 , 1 ( 1995 ), 47 —— 59 . 谷歌学者 交叉引用 [57] 张斌武 和 王勤 . 2008 . 海明距离下的逆最短路径问题 . 河海大学学报(自然科学版) 36 , 4 ( 七月 2008 ), 571 —— 574 . 谷歌学者 [58] 张建忠 和 林毅勋 . 2003 . 反向最短路径问题的计算 . 全球优化杂志 25 , 三 ( 2003 ), 243 —— 261 . 谷歌学者 数字图书馆 [59] 张建忠 , 马忠凡 、和 杨超 . 1995 . 逆最短路径问题的列生成方法 . 德意志银行运营研究部 41 , 三 ( 1995 ), 347 —— 358 . 谷歌学者 [60] 佐格纳·丹尼尔 , 阿克巴内贾德·阿米尔 、和 Günnemann Stephan先生 . 2018 . 针对图数据的神经网络的对抗性攻击 .英寸 第24届ACM SIGKDD知识发现与数据挖掘国际会议(KDD’18)会议记录 . ACM公司 , 纽约州纽约市 , 2847 —— 2856 . 谷歌学者