Pseudorandom Number Generator
Pseudorandom number generator generates a sequence of values depend on an initial seed.
It is a common technique used in simulation (such as Monte Carlo methods), game dev (such as procedural generation), randomized algorithms, and cryptography.
There are a tradeoff between quality and speed, and no PRNG can fit the requirement of all application. That being said, there are some research on which PRNGs1 to pick.