Questions tagged «ds.algorithms»

有关完成任务的明确指令的问题,以及有关时间/内存/等方面的相关分析。

2
用于机器调度的多项式时间近似算法:还剩下多少个开放问题?
1999年,Petra Schuurman和Gerhard J. Woeginger发表了论文“用于机器调度的多项式时间逼近算法:十个开放问题”。从那时起,据我所知,还没有出现涉及相同问题列表的评论。因此,如果我们每个人都可以对十个未解决的问题中的一些做出这样的总结并将其贡献在这里,那将是巨大而有益的。

7
为什么CNF用于SAT而不是DNF?
我不太明白为什么几乎所有的SAT求解器都使用CNF而不是DNF。在我看来,使用DNF可以更轻松地解决SAT问题。毕竟,您只需要浏览一组隐含项,并检查其中的一个是否既不包含变量也不包含其否定值。对于CNF,没有像这样的简单过程。

9
从书中减少。
这与“ 书中的算法 ” 类似。尽管归约也是算法,但我认为人们会想到减少归因于本书中有关算法的问题。因此,一个单独的查询! 减少各种欢迎。 我将从最简单的还原开始,从顶点覆盖到恒星的多割。一旦确定了源问题,这种减少几乎表明了自身(在此之前,我很难相信这个问题对恒星来说很难解决)。这种减少包括构造具有叶子的星形,并将一对终端与图中的每个边缘相关联,“很容易看到”它的工作原理。找到参考文献后,我将使用指向参考的链接进行更新。ñnn 那些缺少本书上下文的人可能希望看一下本书中有关算法的问题。 更新:我意识到我对什么是从书中减少的内容尚不完全清楚。我发现这个问题有些棘手,所以我承认通过在另一个线程中插入一个引用来故意地躲避这个问题:) 因此,让我描述一下我的想法,我想这不用多说-在这方面YMMV。我打算直接比作《证明》中“证明”的初衷。我看到了非常巧妙的减少,使我对任何人可能会发生的一系列想法感到茫然。虽然这种减少使我有一定的敬畏感,但这些并不是我希望在这种情况下收集的例子。 我正在寻找的是没有太多困难就可以描述的减排量,也许有些令人惊讶,因为它们易于掌握但不容易提出。如果您估计有问题的削减将需要进行演讲,那么很可能不符合要求,尽管我敢肯定,高层次的想法很优雅,而细节上则是魔鬼(对于记录,我不确定我能想到的任何东西)。 我给出的示例是故意简单的,并希望在某种程度上(如果不是完美的话)可以说明这些特征。听说多切我第一次是在课堂上,我们的教师开始说,不仅是NP-很难在一般情况下,这是NP难的,即使仅限于树...的{戏剧性的沉默} 高度一。我记得当时无法证明,尽管回想起来似乎很明显。 我想,很明显地回顾一下我正在寻找的东西。我不确定这与描述的复杂性是否有关系-也许在某些情况下,某些看起来暗淡的东西可能被归类为优雅-请随时提出您的示例(例外?),但我真的很感激此举。考虑到这是一个品味问题,您当然应该可以自由选择我所看到的疯狂复杂,完美的外观。我期待看到各种各样的例子!

6
压缩感测的类似物
x∈Rnx∈Rnx \in \mathbb{R}^n∥x∥0&lt;k‖x‖0&lt;k\|x\|_0 < kAxAxAx- [R Ñ ř « Ñ 甲ķAAARRRnnnR≪nR≪nR \ll nAAAkkk-稀疏xxx且RRR小至O(kno(1))O(kno(1))O(k n^{o(1)})。我可能没有最知名的参数,但这是一般的想法。 我的问题是:在其他情况下是否也有类似现象?我的意思是,根据复杂度的度量(不一定是稀疏性),输入信号可能来自某个“低复杂度族”。然后,我们需要高效且正确的压缩和解压缩算法(不一定是线性映射)。这样的结果在不同的情况下已知吗?您对压缩感测的“一般”理论有何看法? (当然,在压缩感测的应用中,线性和稀疏性是重要的问题。我在这里提出的问题更多是“哲学的”。)


4
在实践中可以反直觉解决的问题?
最近,我经历了一个痛苦的有趣经历,即向一个年轻的,有才华的自学成才的程序员非正式地解释了计算复杂性的概念,他以前从未参加过算法或复杂性方面的正式课程。毫不奇怪,许多概念起初看起来很奇怪,但是对于某些示例(PTIME,难处理性,不可计算性)是有意义的,而其他一些似乎更为自然(通过归约,以时间和空间为资源进行问题分类,渐进分析)。一切都很好,直到我意外地承认了SAT可以在实践中有效地解决*,就像那样,我丢了他们。我试图为理论辩护有多说服力都没关系,孩子坚信他不应该在乎那全是假话。好... ¯\ _(ツ)_ /¯ 不,我没有伤心,也没有真正在乎他的想法,这不是这个问题的重点。我们的谈话让我想到了一个不同的问题, 对于理论上棘手的问题(超多项式时间复杂度)但实际上可以解决的问题(通过启发式,逼近,SAT求解器等),我真正了解多少? 我意识到,不多。我知道有一些非常有效的SAT解算器可以有效地解决大量实例,Simplex在实践中效果很好,也许还有其他一些问题或算法。您能帮我画出更完整的图画吗?此类别中哪些著名的问题甚至是几类问题? TL; DR:在实践中可以解决哪些违反直觉的问题?是否有(更新的)资源来阅读更多内容?我们有他们的特征吗?最后,作为一般性讨论问题,不是吗? 编辑#1:在试图回答有关这种表征的最后一个讨论问题时,我被介绍给算法的平滑分析,这是丹尼尔·斯皮尔曼(Daniel Spielman)和滕尚华(Thang-Hua Teng)在[1]中引入的概念,该概念在最坏情况和最坏情况之间连续插值。算法的平均情况分析。它与上面讨论的特征不完全相同,但是它捕获了相同的概念,我发现它很有趣。 [1] Spielman,Daniel A.和Teng-Hua Teng。“平滑的算法分析:为什么单纯形算法通常需要多项式时间。” ACM杂志(JACM) 51,第 3(2004):385-463。

3
将“中间技巧”推广到更高维度?
对于采用实数值的随机算法AA\mathcal{A},“中位技巧”是一种将失败概率降低到任何阈值的简单方法δ&gt;0δ&gt;0\delta > 0,其代价是仅乘以t=O(log1δ)t=O(log⁡1δ)t=O(\log\frac{1}{\delta})开销。即,如果AA\mathcal{A}的输出落入‘良好范围’I=[a,b]I=[a,b]I=[a,b]的概率(至少)2/32/32/3,然后运行独立拷贝A1,…,AtA1,…,At\mathcal{A}_1,\dots,\mathcal{A}_t并考虑它们的输出的中间值a1,…,ata1,…,ata_1,\dots,a_t将导致下降的值III的概率至少是1−δ1−δ1-\delta由切尔诺夫/ Hoeffding界限。 有没有把这个“技巧”推广到更高的维度,例如RdRd\mathbb{R}^d,现在好的范围是凸集(或球,或任何足够好的结构化集)?即,给定一个随机算法AA\mathcal{A}输出在值RdRd\mathbb{R}^d,和一个“好一套” S⊆RdS⊆RdS\subseteq \mathbb{R}^d使得Pr{A(x,r)∈S}≥2/3Pr{A(x,r)∈S}≥2/3\mathbb{P}_r\{ \mathcal{A}(x,r) \in S \} \geq 2/3对于所有xxx,如何能一个升压成功的概率为1−δ1−δ1-\delta对数成本只有1/δ1/δ1/\delta? (表述是不同的:给定的固定,arbirary a1,…,at∈Rda1,…,at∈Rda_1,\dots, a_t\in \mathbb{R}^d与保证至少2t32t3\frac{2t}{3}的aiaia_i的属于SSS,有没有输出从一个值过程SSS?如果是这样,那有没有效率?) 为了达到上述要求,一个人对的最低假设SSS是什么? 抱歉,这真是微不足道-我找不到这个问题的参考...

1
P是否等于所有超多项式时间类的交集?
f(n)f(n)f(n) limn→∞nc/f(n)=0limn→∞nc/f(n)=0\lim_{n\rightarrow\infty} n^c/f(n)=0c&gt;0c&gt;0c>0 显然,对于{\ mathsf P}中的任何语言L \,在每个超多项式时间限制f(n)中L∈PL∈PL\in {\mathsf P},L∈DTIME(f(n))L∈DTIME(f(n))L\in {\mathsf {DTIME}}(f(n))都成立。我想知道,这种说法是否相反?也就是说,如果我们对于每个超多项式时间限制f(n)都知道{\ mathsf {DTIME}}(f(n))中的L \,是否暗含{\ mathsf P}中的L \?换句话说,确实是 {\ mathsf P} = \ cap_f {\ mathsf {DTIME}}(f(n)) ,其中交集接管了每个超多项式f(n)。f(n)f(n)f(n)L∈DTIME(f(n))L∈DTIME(f(n))L\in {\mathsf {DTIME}}(f(n))f(n)f(n)f(n)L∈PL∈PL\in {\mathsf P}P=∩fDTIME(f(n))P=∩fDTIME(f(n)){\mathsf P} = \cap_f {\mathsf {DTIME}}(f(n))f(n)f(n)f(n)

2
O(n)时间中的元素区分度?
我们都知道,基于比较的模型中的元素唯一性不能在时间内完成。但是,在word-RAM上,可以达到更好的效果。o (n 日志n )o(nlog⁡n)o(n\log n) 当然,如果假设存在可以在线性时间中计算出的完美哈希函数,我们将获得一种线性时间算法来区分元素:仅将数字逐个哈希一次,如果发生冲突则返回1。 但是,有两个问题:1)我可以找到使用随机性的大多数完美哈希函数构造,以及2)在任何地方都找不到关于预处理时间的讨论,即确定哪个哈希函数要运行所需的时间根据输入的数字集使用。 Fredman等人的“ 用最坏情况访问时间存储稀疏表O (1 )O(1)O(1) O (1 ) ”通过在最坏情况下为访问时间提供哈希函数,确实解决了第一个问题,但第二个问题却一言不发。O (1 )O(1)O(1) 综上所述,这就是我想要的: 设计了一种算法,给定一组的数(每个数字是位长)上的字-RAM与字长,找到散列函数在时间,其中。功能应具有任何属性,的元素的数量映射到是一个常数和计算应采取Ñ 瓦特瓦特ħ :小号→ { 1 ,... ,米} ø (Ñ )米= Ô (Ñ )ħ Ĵ ∈ { 1 ,... ,米} š Ĵ ħ (我)Ô (1 )ø (1 )小号SSñnnwwwwww^ h :小号→ { 1 ,… …

1
我们可以接近线性乘法,加法和比较(整数)吗?
根据KW Regan的文章“ Connect the Stars”,他最后提到,找到整数表示以使得加,乘和比较运算可在线性时间内计算仍然是一个开放的问题: 是否存在整数表示形式,以便加法,乘法和比较都可以在线性时间内完成?基本上,是否存在线性时间离散排序的环? (1)在没有比较的情况下,我们可以接近线性时间乘法和加法吗?在这里,我假设问题的大小可能会有所不同,因此我们可能需要一个允许更改整数大小的数据结构/算法。 (2)对于完整的问题,我们可以假定我们将找到一个最佳方案,用于对整数进行乘法,加法和比较。我们可以将这三个操作中最慢的(最坏的情况)接近线性时间多近?并注意,其他操作的速度有多快? 正式问题陈述 正如EmilJeřábek所提到的,我们想排除一些琐碎的案例,并专注于最坏案例的行为。 因此,我们要求,对于非负整数和∀ ÿ其中0 ≤ X &lt; Ñ和0 ≤ ÿ &lt; Ñ,我们可以找到一个数据结构/算法可以执行加法,乘法,以及与\之间比较X和ÿ在O (n log (n ))时间和O (log 2 (n ))空间中?∀ X∀x\forall x∀ ÿ∀y\forall y0 ≤ X &lt; Ñ0≤x&lt;n0 \le x < n0 ≤ ÿ&lt; n0≤y&lt;n0 \le y < nXxxÿyyØ (ñ 日志(n ))O(nlog⁡(n))O(n …

1
具有线性比较的近似一维TSP?
一维旅行推销员路径问题显然与排序相同,因此可以通过比较时间来精确解决,但它的表达方式既逼近又精确解决方案很有意义。在输入为实数且可以四舍五入为整数的计算模型中,对于任意常数,在时间,都很容易在因子内近似。:找到最小值和最大值,将所有内容四舍五入到其原始值之内的一个数字,然后使用基数排序。但是具有四舍五入的模型的复杂性理论存在问题,这使我想知道,较弱的计算模型又如何呢?O(nlogn)O(nlog⁡n)O(n\log n)1+O(n−c)1+O(n−c)1+O(n^{-c})cccO(n)O(n)O(n)(max−min)n−(c+1)(max−min)n−(c+1)(\max-\min)n^{-(c+1)} 因此,在计算的线性比较树模型中(每个比较节点测试输入值的线性函数的符号),时间复杂度为o(nlogn)o(nlog⁡n)o(n\log n)?相同的舍入方法可以实现n ^ {1-o(1)}形式的任何近似比率n1−o(1)n1−o(1)n^{1-o(1)}(通过使用二进制搜索进行舍入,并进行更粗略的舍入以使其足够快)。但是,对于某些\ epsilon&gt; 0,是否有可能甚至达到O(n ^ {1- \ epsilon})的近似值?O(n1−ϵ)O(n1−ϵ)O(n^{1-\epsilon})ϵ&gt;0ϵ&gt;0\epsilon>0

3
排序列表的近似和
最近,我研究了用于计算已排序的非负数列表的近似和的问题。对于任何固定的,一个ø (日志Ñ )时间近似方案已经导出,使得它提供了一个(1 + ε )的总和-近似。该文件发布在http://arxiv.org/abs/1112.0520上,该文件尚未完成。ϵ&gt;0ϵ&gt;0\epsilon>0O(logn)O(log⁡n)O(\log n)(1+ϵ)(1+ϵ)(1+\epsilon) 我一直在寻找有关此问题的现有作品,但是我只得到了几篇与远程相关的论文,并引用了它们。这个问题以前研究过吗?如果有人知道有关此问题的任何现有研究,请告诉我。我将感谢您的帮助,并相应地更新引文。如果结果较旧,则纸张将被丢入垃圾桶。

5
近似算法的理论应用
最近,我开始研究NP难题的近似算法,并且想知道研究它们的理论原因。(这个问题并不意味着发炎-我只是好奇)。 逼近算法的研究产生了一些真正美丽的理论-PCP定理与逼近硬度之间的联系,UGC猜想,Goeman-Williamson逼近算法等。 我想知道关于旅行商,非对称旅行商和其他变体,机制设计中的各种问题(例如组合拍卖)等问题的近似算法的研究意义。这样的近似算法在理论的其他部分是否有用?过去还是纯粹出于自己的目的而学习? 注意:我没有问过任何实际应用,因为据我所知,在现实世界中,应用的大多是启发式方法,而不是近似算法,并且通过研究针对该算法的近似算法获得的任何见识很少会启发该启发式方法。问题。

2
有效地在稀疏图中找到5个循环。
(来自MathOverflow) 你好 我正在阅读此线程:https : //mathoverflow.net/questions/16393/finding-a-cycle-of-fixed-length 我想在图中找到5个周期。实际上,我真正想要的是长度至少为5的最短奇数周期,但也许这有点离题。出于我的目的,在复杂度分析中我将和视为相同。 米mmñnn 在这种情况下,我们能比彩色编码做得更好吗?让我具体说明我的问题: 使得有 -时间算法来检测长度为5的循环的最小是多少?什么是算法?如果禁止不切实际的方法(例如Coppersmith-Winograd快速矩阵乘法),此是什么?ø (米α)ααα\alphaÔ (米α)O(mα)O(m^\alpha)αα\alpha

3
求解完全单模整数线性程序的速度有多快?
(这是此问题及其答案的后续内容。) 我有以下完全单模(TU)整数线性程序(ILP)。这里 都是正整数输入的一部分。变量的指定子集设置为零,其余的可以取正整数值:X 我Ĵℓ ,m ,n1个,n2,… ,nℓ,ç1个,ç2, … ,c米,wℓ,米,ñ1个,ñ2,…,ñℓ,C1个,C2,…,C米,w\ell,m,n_{1},n_{2},\ldots,n_{\ell},c_{1},c_{2},\ldots,c_{m},wX我ĴX一世Ĵx_{ij} 最小化 ∑米j = 1CĴ∑ℓ我= 1X我Ĵ∑Ĵ=1个米CĴ∑一世=1个ℓX一世Ĵ\sum_{j=1}^{m}c_{j}\sum_{i=1}^{\ell}x_{ij} 受: ∑mj=1xij=ni∀i∑j=1mxij=ni∀i\sum_{j=1}^{m}x_{ij}=n_{i}\,\,\forall i ∑ℓi=1xij≥w∀j∑i=1ℓxij≥w∀j\sum_{i=1}^{\ell}x_{ij}\ge w\,\,\forall j 标准形式的系数矩阵是(2 \ ell + m)\ times \ ellm(2ℓ+m)×ℓm(2ℓ+m)×ℓm(2\ell+m)\times \ell m矩阵,其条目来自−1,0,1−1,0,1{-1,0,1}。 我的问题是: 解决此类ILP的多项式时间算法的运行时间已知的最佳上限是多少?您能指出一些对此的参考吗? 我进行了一些搜索,但是在大多数地方,他们不停地说TU ILP可以使用LP的多项式时间算法在多项式时间内求解。看起来很有希望的一件事是Tardos [1]在1986年发表的一篇论文,她证明了可以通过时间多项式以系数矩阵的形式解决这些问题。但据我所知,该算法的运行时间又取决于求解LP的多项式时间算法的运行时间。 我们是否知道解决这种特殊情况的算法(TU ILP)比解决LP问题的通用算法快得多? 如果不, 哪种LP算法可以最快(从渐近的角度)解决这种ILP? [1]解决组合线性程序的强多项式算法,Eva Tardos,运筹学34(2),1986年

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.