将二进制关系分布到容器中,以便每个元素都位于少量容器中


10

给我们成对的对象(例如数字)。每个对象最多出现对。我们的目标是将这些对分配到大小相等的垃圾箱中,以使每个对象出现在尽可能少的不同垃圾箱中。q

更准确地说,我们对函数感兴趣,该函数具有以下特性:对于具有对的每个二进制关系(每个对象最多对),将这些对分布到仓中,这样每个仓接收对(应该除以),并且没有对象出现在超过 bin中。fmqpm/ppmf(m,q,p)

这个问题出现在我们关于并行查询评估的研究中。人们可能希望比。的“正确”大小不太清楚。一个有趣的大小可能是。不依赖于函数,但只适用于一定范围内的也将是有用的(但不是)。mpqqmp−−√qqq=O(1)

实际上,我们位于形式的边界之后,尽可能大...p1−ϵϵ>0


3
用图术语表示:给定一个整数和一个具有边的图,每个顶点的度数最多为,找到个子图,其中,使得和是划分为部分的部分,每个部分的大小为,并且每个顶点最多出现在图的个图中。您的目标是最小化。最好的上限是多少ģ = (V ,ê )米q p ģ 1,G ^ 2,... ,g ^ p ģ 我 = (V 我,È 我)V = ⋃ 我V 我 { ë 我} 我 ë p 米/ p v ∈ V ķ (最大值v | { 我:v ∈ VpG=(V,E)mqpG1,G2,…,GpGi=(Vi,Ei)V=⋃iVi{Ei}iEpm/pv∈Vkķ ķ 米p q(maxv|{i:v∈Vi}|≤k)kk可以显示给定的,和?mpq
— Neal Young

那就对了。就图而言。问题的答案是:。确实,如上所述,我们对形式为边界很感兴趣,而对于则没有任何约束。p 1 - ε ε > 0pp1−ϵϵ>0
— Thomas S

一个特殊的情况开始:令是一个奇数整数。可以将整个图的边分成大小为个子集,这样,对于每个顶点,包含入射到该顶点的边的子集的数量为,对于?我敢肯定,任何 ---取随机顶点子集,每个子集的大小为。然后,每个顶点很有可能在大约个顶点子集中,而每个对都在大约( Ñn≥1 ķÑ(n2)Kn(ñ - 1 )/ 2 ø (Ñ 1 - ε)ε > 0 ε < 1 / 2 Ñ Ñ 1 - ε ñ 1 - ε(我,Ĵ )ñ 1 - 2 εn(n − 1 )/ 2O(n1−ϵ)ϵ>0ϵ<1/2nn1−ϵn1−ϵ(i,j)n1−2ϵ个子集。现在将对分配给子集...
— Neal Young

在这种情况下,节点可首先分配到集大小的(认为间隔)。然后每个bin得到两个这样的集合的乘积(我正在考虑完整的有向图,它更易于陈述,并且渐近没有太大差异)。因此,每个顶点都出现在箱中,也就是说,在这种情况下为。 √ñ--√我×Ĵ √ñ--√一世× J ϵ= 1ñ--√ϵ = 12
— Thomas S

对于星形图(边缘入射到一个顶点),顶点必须位于个子图中的每个子图中,因此对于这种情况,小于的边界是不可能的。我想这就是为什么限制最大度数。也许您可以对此说一些更明确的定义,因为这似乎是一个至关重要的假设。同时,我在下面留下了一个观察结果(不是一个答案,但太大了,无法作为评论!)。r r p p qn − 1[R[Rppq
— Neal Young

Answers:


1

这不是答案。 只是有些琐碎的观察,WLOG可以放宽对边缘子集的大小完全相同的要求,而只是寻找任意数量的。也许这有助于思考问题。{ E i } i O (所需大小)p{ E一世}一世O (所需大小)

固定任何图和整数。令p ≥ 1 小号= ⌈ | E | / p ⌉G = (V,E)p ≥ 1s = ⌈ |E| / p⌉

引理。 假设存在子图,从而将划分为大小为(任意数量的)部分。令 是任何顶点所在的最大零件数。 { ë ' Ĵ } Ĵ È Ô (小号)中号= 最大值v ∈ V | { Ĵ :v ∈ V ' Ĵ } |{G′Ĵ= (V′Ĵ,E′Ĵ)}Ĵ{E′Ĵ}ĴËO(s)

M=maxv∈V|{j:v∈V′j}|

然后有个子图使得将精确地划分为部分,每个部分的大小最大为 和 { g ^ 我 = (V 我,ë 我)} 我 { ë 我} 我 Ê p 小号= ⌈ | E | / p ⌉ 最大v ∈ V | { 我:v ∈ V 我 } | = O (M )。p{Gi=(Vi,Ei)}i{Ei}iEps=⌈|E|/p⌉

maxv∈V|{i:v∈Vi}|=O(M).

证明。 从序列,用该部分中包含的边的任何有序序列替换序列中的每个部分。让是得到的序列(的置换使得每个部分是一些“间隔”边缘在序列)。现在将此序列划分为个连续的子序列,以使除最后一个序列以外的每个子序列的大小为,并让包含第个连续的子序列中的边。(所以 è ' Ĵ ë 1,ë 2,... ,Ë 米 è è ' Ĵ { é 一个,ë 一个+ 1,... ,Ë b } p 小号Ë 我我E i = { e iE′1,E′2,…,E′p′E′je1,e2,…,emEE′j{ea,ea+1,…,eb}psEiiEi={eis+1,eis+1,…,e(i+1)s}对于。)i<p

通过假设每个部分大小为,并通过设计每个部分除了最后一个部分大小为,因此(由于的定义方式)任何给定部分的边缘分为部分。这以及每个顶点都出现在中最多个部分中的假设,意味着每个顶点都出现在中不超过个部分中。QED Ô (小号)Ê Ĵ Ë p小号{ ë 我} 我E′jO(s)EjEps{Ei}i Ô (1 ){ Ë 我} 我中号{ ë ' Ĵ } Ĵ Ô (中号){ Ë 我} 我E′jO(1){Ei}iM{E′j}jO(M){Ei}i

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.