随机性在计算中的应用
Uses of randomness in computation
摘要:
随机数发生器在实际算法中有着广泛的应用。示例包括模拟、数论(素性测试和整数因子分解)、容错、路由、密码学、模拟退火优化和完美散列。复杂性理论通常考虑确定性算法的最坏情况行为,但如果假设输入数据是从给定分布中随机抽取的,它也可以考虑平均情况行为。拉宾推广了“概率”算法的思想,在这种算法中,随机性被纳入算法中,而不是在输入数据中假设。Yao指出,概率算法的复杂性和确定性算法的平均情况复杂性之间有着密切的联系。我们给出了随机性在计算中的应用的例子,讨论了拉宾、姚明等人的贡献,并提到了一些悬而未决的问题。这是1994年4月22日在悉尼新南威尔士大学举行的“理论日”特邀演讲的文本。
英文摘要:
Random number generators are widely used in practical algorithms. Examples include simulation, number theory (primality testing and integer factorization), fault tolerance, routing, cryptography, optimization by simulated annealing, and perfect hashing. Complexity theory usually considers the worst-case behaviour of deterministic algorithms, but it can also consider average-case behaviour if it is assumed that the input data is drawn randomly from a given distribution. Rabin popularised the idea of "probabilistic" algorithms, where randomness is incorporated into the algorithm instead of being assumed in the input data. Yao showed that there is a close connection between the complexity of probabilistic algorithms and the average-case complexity of deterministic algorithms. We give examples of the uses of randomness in computation, discuss the contributions of Rabin, Yao and others, and mention some open questions. This is the text of an invited talk presented at "Theory Day", University of NSW, Sydney, 22 April 1994.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。