หากคุณ จำกัด ตัวเองให้ครบวงจร LCG PRNG s แล้วคำตอบคือง่ายโดยความหมายก็เพียงเมตรm
ในการหาช่วงเวลาของวัฏจักรที่ไม่ครบวงจร LCG PRNG สำหรับเมล็ดที่กำหนดคุณเพียงแค่ต้องนับจำนวนการวนซ้ำของ PRNG จนกว่าจะสร้างค่าเมล็ดอีกครั้ง
จากหน้าวิกิพีเดียอ้างอิง:
ระยะเวลา
mc
cma
ในอดีตตัวเลือกที่ไม่ดีได้นำไปสู่การใช้งานที่ไม่ได้ผลของ LCGs ตัวอย่างที่เป็นตัวอย่างโดยเฉพาะของเรื่องนี้คือRANDUซึ่งใช้กันอย่างแพร่หลายในต้นปี 1970 และนำไปสู่ผลลัพธ์มากมายที่กำลังถูกสอบสวนเนื่องจากการใช้ LCG ที่ไม่ดีนี้
ทำไมคุณต้องการใช้เครื่องกำเนิดรอบเต็ม
หากคุณไม่ได้บังคับตัวเองให้ทำวงจร LCG PRNG อย่างเต็มที่แสดงว่าคุณกำลังมีความเสี่ยงสูง
หากคุณไม่ทราบว่า LCG ที่กำหนดนั้นเป็นวัฏจักรเต็มแล้วคุณสามารถลงท้ายด้วยตัวกำเนิดที่มีลำดับที่แตกต่างกันโดยพลการบางอันอาจมีขนาดเล็กน่าอายและมีการสุ่มที่น่าตกใจยิ่งกว่าเครื่องกำเนิดRANDU ที่น่าอับอาย.
คุณไม่ต้องการตรวจสอบทุกค่าที่เป็นไปได้เพื่อให้แน่ใจว่ามันสร้างลำดับที่ยาวพอสำหรับแอปพลิเคชันของคุณ
อ่านเพิ่มเติม
สำหรับไพรเมอร์ที่ยอดเยี่ยมเกี่ยวกับเครื่องกำเนิดเลขสุ่มหลอกฉันขอแนะนำให้คุณอ่านบทสูตรตัวเลขในตัวเลขสุ่ม