谁引入了不确定性计算?


20

我有两个历史问题:

谁首先描述了不确定性计算?

我知道库克描述了NP完全问题,爱德蒙兹提出了P算法是“有效”或“良好”算法。

我搜索了这篇 Wikipedia文章,并略读了“关于算法的计算复杂性”,但找不到关于非确定性计算第一次讨论的参考。

第一次提到NP类是什么?是库克(Cook)的1971年论文吗?


5
NP也是由Levin在铁幕的另一侧同时发明的。除了埃德蒙兹之外,拉宾和科汉姆(分别)分别“介绍了” P,尽管埃德蒙兹在证明P观点“有效”方面最有效。
2015年

1972年的Karps论文被认为是Cooks论文的主要对策,表明许多问题都是NP完整的。从某种意义上说,库克仅表明SAT是NP完整的,在那篇论文之后,如何包含这个概念还不明显。
vzn

(进一步的简短思考),因此,库克/卡普的两篇论文在TCS社区/集体理解上像是“ 1-2拳”。同样,在诸如此类的历史问题上,有时概念有时是“悬而未决”的,没有一个唯一的/确定的答案,但有几个几乎同样可行的答案。另一个值得一看的地方是Turings 1936年关于TM的论文,从未见过有人分析/解构得出结论,即长篇论文中没有什么与非确定论相近。
vzn

另一个角度(关于这个复杂/多维主题):并行性与不确定性有很多相似之处。
vzn

有趣的是,Godel认识到了复杂性的重要性,并可能将P视为“有效”算法。 rjlipton.wordpress.com/the-gdel-letter
evanb

Answers:



11

这是Odifreddi在这个问题上说的:

“我们的图灵机模型是确定性的,在某种意义上说,指令必须是一致的(在给定的情况下,最多只能使用其中的一条指令。)香农[1948]和De Leeuw,Moore,Shannon和Shapiro [1956]基本上有两种模型:不确定性的图灵机在模棱两可的情况下(可能适用有冲突的指令)通过随机选择其中之一来表现:它们的计算能力至少为0,一值函数(集合)不超过确定性函数的能力。概率机器与非确定性机器的不同之处在于下一状态具有概率,因此冲突的指令被机器选择的机会不同。”
[P. Odifreddi,古典递归理论,第 1,第50页]

请注意,可计算性理论中早就存在复杂性理论(例如Kleene的范式算术层次结构)中的“存在+验证者”意义上的不确定性概念。其他计算模型,例如 Post规范系统(至少自1943年以来为人所知)和语法,也是不确定的。我认为甚至可以将这个概念推到希尔伯特的ε演算和选择算子时代。


关于NP,我问史蒂夫·库克。理查德·卡普(Richard Karp)在其1972年的著名论文中引入了用于不确定性多项式时间可计算问题的类的名称NP。库克在其1971年的著名论文中提到了多项式时间不确定的Turing机可计算问题的类别,该论文定义了多项式时间约简,并表明存在完整的问题,但未给此类命名。

在他的论文之前,对不确定性图灵机在多项式时间内可计算的问题的兴趣不大,只有在卡普的论文之后,才发现NP中存在许多自然问题。库克的论文发表后,一些人开始感兴趣,尤其是早在卡尔普的论文发表之前就对此感兴趣的两个人是迈克尔·拉宾Michael Rabin)艾伦·鲍罗丁Allan Borodin)

卡普(Karp)在1972年发表的论文中,通过证明普遍存在的NP完全性是自然问题之一,使人们感到惊讶。


在这种情况下使用术语“随机”是危险的,它在统计意义上并不是指随机性,而只是选择留空的事实。
reinierpost

@reinierpost,是的,令人困惑的是,他说不确定性机器随机选择下一个状态(但是无论如何,不​​确定性机器本身就是混乱的,这就是为什么人们通常更喜欢NP的验证定义)。
卡夫

我从来没有发现它令人困惑。也许我是如此的困惑,我没有意识到。
reinierpost

7

RabinScott于1959年4月在IBM期刊上发表了他们的研究论文,介绍了非确定性有限自动机。他们在论文中提到:

我们通过消除复杂的输出函数并使我们的机器简单地给出“是”或“否”的答案,采用了更简单的定义形式。Myhill也使用此方法,但是我们对“不确定性”,“双向”和“多带式”机器的概括似乎是新的

全文可在此处查看:http : //www.cse.chalmers.se/~coquand/AUTOMATA/rs.pdf

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.