ในโลกของการคำนวณ ตัวเลขสุ่มมีสองประเภท: ตัวเลขสุ่มอย่างแท้จริงและตัวเลขสุ่มเกือบ
คอมพิวเตอร์ได้ตัวเลขเหล่านี้จากที่ใด
ตัวเลขสุ่มอย่างแท้จริงนั้นถูกจับจากปรากฏการณ์ทางธรรมชาติบาคาร่า คุณจะไม่พบเครื่องสล็อตแมชชีนหรือเครื่องเกมการ์ดอย่างวิดีโอโป๊กเกอร์ที่ใช้ตัวเลขสุ่มเหล่านี้
จำนวนสุ่มอย่างแท้จริงคำนวณจากสิ่งที่แปลกใหม่เช่นอัตราการสลายของธาตุ
กัมมันตภาพรังสีหนัก อุปกรณ์สุ่มตัวเลขแบบทดลองบางตัวได้รับการสร้างขึ้นจากการวัดอนุภาค (หรือคน) ที่เข้าสู่เขตสังเกตการณ์
บางทีสักวันหนึ่งคาสิโนบนบกจะสามารถตรวจสอบกิจกรรมตามธรรมชาติภายในสถานที่ของพวกเขา และใช้กิจกรรมนั้นเพื่อคำนวณค่าสุ่มอย่างแท้จริง สำหรับตอนนี้พวกเขาต้องพึ่งพาตัวเลขสุ่มเกือบทั้งหมดที่สร้างโดยชิปคอมพิวเตอร์
1 – คอมพิวเตอร์รุ่นเก่าใช้ตารางตัวเลขสุ่ม
มีสองวิธีที่ตัวสร้างตัวเลขสุ่มได้รับตัวเลข ชิปรุ่นเก่าถูกเข้ารหัสด้วยตารางตัวเลขสุ่มพิเศษ แนวทางปฏิบัตินี้จำเป็นเนื่องจากการคำนวณตัวเลขสุ่มนั้นเข้มข้นเกินไปสำหรับกำลังในการคำนวณที่มีอยู่
ตารางตัวเลขสุ่มเริ่มไม่เป็นที่นิยมในช่วงปลายทศวรรษ 1980 และต้นทศวรรษ 1990 เนื่องจากการประมวลผลด้วยคอมพิวเตอร์มีราคาถูกลงและมีประสิทธิภาพมากขึ้น สมาร์ทโฟนของคุณมี CPU ที่มีพลังมากกว่าคอมพิวเตอร์ที่ส่งภารกิจไปยังดวงจันทร์ในช่วงปลายทศวรรษ 1960 และต้นปี 1970
ตารางตัวเลขสุ่มแรกสุดคำนวณด้วยมือ
นักคณิตศาสตร์ได้พัฒนาตารางตัวเลขสุ่มมานานก่อนที่คอมพิวเตอร์อิเล็กทรอนิกส์ดิจิทัลจะถูกประดิษฐ์ขึ้น ตารางถูกคัดลอกลงในหน่วยความจำคอมพิวเตอร์
กระบวนการนี้ใช้เวลานานและมีราคาแพง เนื่องจากโต๊ะต้องมีขนาดใหญ่มากจึงจะมีประโยชน์ เมื่อโปรแกรมต้องการหมายเลขสุ่ม รูทีนพิเศษบนกระดานจะย้ายตัวชี้แบบลอจิคัลผ่านตารางตัวเลขสุ่ม
สิ่งนี้ถือว่าดีพอในช่วงแรกๆ แต่เมื่อการคำนวณกลายเป็นเรื่องธรรมดาและซับซ้อนมากขึ้น ตารางตัวเลขสุ่มแบบเก่าก็คาดเดาได้ยากเกินไป
2 – จำนวนเมล็ดพันธุ์เข้ามาเล่นในช่วงต้น
นักวิทยาศาสตร์คอมพิวเตอร์ใช้เวลาไม่นานในการเล่นเกมด้วยตารางตัวเลขสุ่ม พวกเขาเริ่มใช้ตัวเลข “เมล็ด” เพื่อย้ายตัวชี้ในตารางตัวเลขสุ่มไปรอบๆ
หมายเลขเมล็ดพันธุ์ทั่วไปขึ้นอยู่กับนาฬิกาภายในของคอมพิวเตอร์ แต่ผู้ใช้อาจได้รับแจ้งให้ป้อนตัวเลข โดยปกติระหว่าง 1 ถึง 65,536 (2 ยกกำลัง 16) นี่เป็นจำนวนเต็มที่ใหญ่ที่สุดที่สามารถผ่านการลงทะเบียน 16 บิต ซึ่งเป็นแผ่นหน่วยความจำชั่วคราวใน CPU
ตารางตัวเลขสุ่ม
อัลกอริธึมการสร้างตัวเลขสุ่มแทนที่ตารางที่เก่ากว่า
เนื่องจากชิปคอมพิวเตอร์มีประสิทธิภาพมากขึ้นและราคาถูกลง วิศวกรจึงเริ่มเข้ารหัสอัลกอริธึมการสร้างตัวเลขสุ่มลงในซอฟต์แวร์ออนบอร์ด
ชิปสร้างตัวเลขสุ่มตัวแรกปรากฏขึ้นในปี 1970 และกลางทศวรรษ 1980 ชิปเหล่านี้พบเห็นได้ทั่วไปในระบบคอมพิวเตอร์ทางวิทยาศาสตร์และธุรกิจจำนวนมาก
วิศวกรคอมพิวเตอร์หันมาใช้เลขคณิตแบบโมดูโลสำหรับอัลกอริธึมอย่างง่าย Modulo arithmetic ใช้เลขจำนวนเต็มและการหารซึ่งส่งผลให้เหลือเศษ โมดูลัสคือเศษที่เหลือในการดำเนินการหารระหว่างจำนวนเต็มสองจำนวน
อัลกอริธึมที่เก่าแก่ที่สุดในบันทึกเรียกว่าตัวสร้างคอนกรูเชียลเชิงเส้น อัลกอริทึมนี้จัดอยู่ในกลุ่มของอัลกอริทึมที่เรียกว่า PRNGs หรือ Pseudo Random Number Generators
ผลลัพธ์ของ PRNG ไม่ใช่การสุ่มอย่างแท้จริง แต่ถือว่าสุ่มเพียงพอสำหรับการใช้งานส่วนใหญ่
อัลกอริทึมจำเป็นต้องใช้หมายเลขเฉพาะและวิศวกรต้องการใช้ตระกูลของหมายเลขเฉพาะที่เรียกว่า Mersenne Primes
4 – อัลกอริธึม PRNG ยังคงต้องการหมายเลขเมล็ดพันธุ์บาคาร่า