Random number generation

Mula sa Wikipediang Tagalog, ang malayang ensiklopedya
Tumalon sa: nabigasyon, hanapin

Ang Random Number Generation ay isinasagawa bilang bahagi ng Simulasyon. Layunin ng random number generation ang makalikha ng mga random na numero na may uniform continuous distribution mula 0 hanggang 1.

Pseudo-random Numbers[baguhin | baguhin ang batayan]

Ang simpleng katotohanan na may metodong sinusunod sa paglikha ng random numbers ay nagaalis ng totoong potensiyal para sa randomness. Kung ang metodo ay nauulit para lumikha ng random numbers, ay hindi nga matatawag na tunay na random ang numbers na ito.

Pamamaraan ng Paglikha ng Random Numbers[baguhin | baguhin ang batayan]

Linear Congruential Method[baguhin | baguhin ang batayan]

Mixed Congruential Method[baguhin | baguhin ang batayan]

Upang makalikha ng random numbers, gagamiting ang sumusunod na pormula:
X{i + 1} = ([a * X{i}] + c) mod m
Kung saan,

X{0} = binhi o seed
X{i} = ika-{i} na random number na nalilkha
a = hindi nagbabagong multiplier
c = dagdag o increment
m = modulus

Ang pagpili ng X{0}, a, c, at m ay may malaking epekto sa estatistikong katangian ng mga random numbers na malilikha at sa haba ng isang cycle. Ang haba ng isang cycle ay ang dami ng iba-ibang random numbers na malilikha bago ito umulit.

Multiplicative Congruential Method[baguhin | baguhin ang batayan]

Sa metodong ito, gagamitin naman ang susunod na pormula,
X{i + 1} = (a * X{i}) mod m
Kung saan,

X{0} = binhi o seed
X{i} = ika-{i} na random number na nalilkha
a = hindi nagbabagong multiplier
m = modulus

Midsquare Method[baguhin | baguhin ang batayan]

Ang metodong ito ay nakalilikha ng random numbers na may even na bilang ng digits. Ang mga hakbang sa pagsasagawa ng midsquare method ay ang mga sumusunod:
1. Italaga ang k bilang dami ng digits ng random numbers na nais malilikha.

Ang k ay dapat isang even na bilang.

2. Magtakda ng isang value ng binhi o seed na X{0}.

Ang value na ito ay dapat may k na bilang ng digits.

3. Magtalaga ng isang variable na i = 0.
4. Kalkulahin ang X{i}^2.
5. Kung ang bilang ng digits sa nakuha sa ikaapat na hakbang ay 2k, gawin ang ikapitong hakbang. Kung hindi, gawin ang ikaanim na hakbang.
6. Magdagdag ng mga zero sa unahan ng numerong nakuha sa ikatlong bilang upang ang maging bilang ng digits nito ay 2k.
7. Dagdagan ng isa ang i.
8. Kunin ang nasa gitnang k na digits mula sa nakuha sa ikatlo o ikaanim na hakbang na may 2k na digits.

Ito ang magiging X{i}

9. Kung hindi pa sapat ang bilang na nalikhang random numbers, bumalik sa ikaapat na hakbang.