มีการใช้อัลกอริทึมใดในเครื่องกำเนิดเลขสุ่มที่ทันสมัยและมีคุณภาพดี?
มีการใช้อัลกอริทึมใดในเครื่องกำเนิดเลขสุ่มที่ทันสมัยและมีคุณภาพดี?
คำตอบ:
ใน R การตั้งค่าเริ่มต้นสำหรับการสร้างหมายเลขสุ่มคือ:
คุณสามารถตรวจสอบเรื่องนี้ได้อย่างง่ายดาย ได้แก่
> RNGkind()
[1] "Mersenne-Twister" "Inversion"
สามารถเปลี่ยนเครื่องกำเนิดเริ่มต้นเป็น PRNG อื่น ๆ เช่น Super-Duper, Wichmann-Hill, Marsaglia-Multicarry หรือแม้แต่ PRNG ที่ผู้ใช้จัดหา ดูที่? RNGkind สำหรับรายละเอียดเพิ่มเติม ฉันไม่จำเป็นต้องเปลี่ยนค่าเริ่มต้นของ PRNG
C GSLห้องสมุดยังใช้Mersenne-Twisterโดยค่าเริ่มต้น
Mersenne Twisterเป็นหนึ่งผมเคยเจอและใช้ก่อนหน้านี้
Xorshift PNG ออกแบบโดย George Marsaglia ระยะเวลา (2 ^ 128-1) นั้นสั้นกว่า Mersenne-Twister มาก แต่อัลกอริทึมนั้นง่ายมากที่จะนำไปใช้ ทำงานได้ดีกับสถาปัตยกรรมแบบหลายคอร์เช่นชิป DSP และ Tesla ของ Nvidia
ที่http://prng.di.unimi.it/คุณสามารถหาจุดกำเนิดของเครื่องกำเนิดตัวเลขสุ่มหลายตัวที่ทดสอบโดยใช้ TestU01 ชุดทดสอบที่ทันสมัยสำหรับเครื่องกำเนิดตัวเลขเทียมเทียมที่ใช้แทนที่เครื่องมิจฉาทิฐิ คุณสามารถเลือกและเลือก