Computing Atlas

How Computing Was Built
Sign In
Text size
100%
Theme
Concept

Randomized Algorithms

Technique

Randomized algorithms are algorithms that employ a degree of randomness as part of their logic or procedure. They typically use uniformly random bits as an auxiliary input to guide their behavior, in the hope of achieving good performance in the average case over all possible random choices, so that the running time, the output or both are random variables. A distinction is drawn between Las Vegas algorithms, which always terminate with the correct answer but have a finite expected running time, with Quicksort as an example, and Monte Carlo algorithms, which have a chance of producing an incorrect result or of failing to produce a result. Algorithms recorded in this atlas are grouped here when their design technique is randomization.

Facts
Core Principle
Make random or pseudorandom choices during computation. 1
Connections

In Field

Technique Used By

Bogosort, Algorithms
Source Wikipedia: Boltzmann sampler
Source Dixon's factorization method (Wikipedia)
Source Fermat primality test (Wikipedia)
Source Library sort (Wikipedia)
Source Metropolis-Hastings algorithm (Wikipedia)
Source Monte Carlo method (source article)
Source Wikipedia: Multiplicative weight update method
Source Path tracing (Wikipedia)
Source Wikipedia: Polynomial identity testing
Source Wikipedia: Schwartz-Zippel lemma
Source Wikipedia: Swendsen-Wang algorithm
Source Thompson sampling (Wikipedia)
Sources
1. NIST DADS: randomized algorithm
Definition
Quote, Definition
An algorithm that makes random (or pseudorandom) choices.
View the Source
Wikipedia: Randomized algorithm
  • Wikipedia, lead section
    A randomized algorithm is an algorithm that employs a degree of randomness as part of its logic or procedure.
  • In Group: Algorithm Design Strategies, Lead
    A randomized algorithm is an algorithm that employs a degree of randomness as part of its logic or procedure.
View the Source
Metropolis-Hastings algorithm (Wikipedia)
Technique Used By: Metropolis-Hastings Algorithm, Lead
Quote, Technique Used By: Metropolis-Hastings Algorithm, Lead
In statistics and statistical physics, the Metropolis-Hastings algorithm is a Markov chain Monte Carlo (MCMC) method for obtaining a sequence of random samples from a probability distribution from which direct sampling is difficult.
View the Source
Library sort (Wikipedia)
Technique Used By: Library Sort, Lead
Quote, Technique Used By: Library Sort, Lead
In order to warrant the high-probability time bounds, it must randomly permute the input, which changes the relative order of equal elements and shuffles any presorted input.
View the Source
Wikipedia: Multiplicative weight update method
Technique Used By: Multiplicative weight update method, Article body
Quote, Technique Used By: Multiplicative weight update method, Article body
In this randomized algorithm, α β → 1 {\displaystyle \alpha _{\beta }\rightarrow 1} if β → 1 {\displaystyle \beta \rightarrow 1} .
View the Source
Wikipedia: Polynomial identity testing
Technique Used By: Polynomial Identity Testing, Article body
Quote, Technique Used By: Polynomial Identity Testing, Article body
The Schwartz-Zippel algorithm provides a practical probabilistic solution, by simply randomly testing inputs and checking whether the output is zero.
View the Source
Wikipedia: Boltzmann sampler
Technique Used By: Boltzmann Sampler, Lead
Quote, Technique Used By: Boltzmann Sampler, Lead
A Boltzmann sampler is an algorithm intended for random sampling of combinatorial structures.
View the Source
Wikipedia: Swendsen-Wang algorithm
Technique Used By: Swendsen-Wang Algorithm, Lead
Quote, Technique Used By: Swendsen-Wang Algorithm, Lead
The Swendsen-Wang algorithm is the first non-local or cluster algorithm for Monte Carlo simulation for large systems near criticality.
View the Source
Wikipedia: Schwartz-Zippel lemma
Technique Used By: Schwartz-Zippel Lemma, Lead
Quote, Technique Used By: Schwartz-Zippel Lemma, Lead
The lemma states that evaluating a nonzero polynomial on inputs chosen randomly from a large-enough set is likely to find an input that produces a nonzero output. it was discovered independently by Jack Schwartz, Richard Zippel, and Richard DeMillo and Richard J.
View the Source
Thompson sampling (Wikipedia)
Technique Used By: Thompson sampling, Lead paragraph [design-technique-used]
Quote, Technique Used By: Thompson sampling, Lead paragraph [design-technique-used]
with respect to a randomly drawn belief
View the Source
Dixon's factorization method (Wikipedia)
Technique Used By: Dixon's factorization method, Lead
Quote, Technique Used By: Dixon's factorization method, Lead
Dixon's random squares method
View the Source
Path tracing (Wikipedia)
Technique Used By: Path tracing, Lead, second paragraph
Quote, Technique Used By: Path tracing, Lead, second paragraph
The technique uses the Monte Carlo method to compute estimates of global illumination
View the Source
Fermat primality test (Wikipedia)
Technique Used By: Fermat primality test, Concept
Quote, Technique Used By: Fermat primality test, Concept
we can pick random integers a not divisible by p and see whether the congruence holds
View the Source
Monte Carlo method (source article)
Technique Used By: Monte Carlo method, Lead
Quote, Technique Used By: Monte Carlo method, Lead
are a broad class of computational algorithms based on repeated random sampling for obtaining numerical results
View the Source
Comments (0)
No comments yet. Be the first to share a thought.
Reader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.