Esto se basa en this question. Se propusieron varias respuestas que generan distribuciones no uniformes y comencé a preguntarme cómo cuantificar la falta de uniformidad del producto. No estoy buscando problemas de diseño, solo aspectos de valor único.¿Cómo se cuantifica la calidad de un generador de números pseudoaleatorios?
¿Cuáles son los procedimientos aceptados?
Mi pensamiento actual es que la computadora de la media Shannon entropy por llamada mediante el cálculo de la entropía de cada valor y tomando un promedio ponderado. Esto puede ser comparado al valor esperado.
Mis preocupaciones son
- Es esto correcto?
- ¿Cómo calcular estos valores sin perder precisión?
Para # 1 Me pregunto si lo tengo correcto.
Para el n. ° 2, la preocupación es que estaría procesando números con magnitudes como 1/7 +/- 1e-18 y me preocupa que los errores de coma flotante me maten por cualquier problema que no sea el más pequeño. La forma exacta del cálculo podría dar lugar a algunas diferencias importantes aquí y me parece recordar que hay algunas opciones de ASM para algunos casos de registro especiales, pero parece que no puedo encontrar los documentos sobre esto.
En este caso el uso es tomar un "buen" PRNG para la gama [1,n]
y generar una SRNG para la gama [1,m]
. La pregunta es: ¿cuánto peor son los resultados que la entrada?
Lo que tengo son las tasas de aparición esperadas para cada valor de salida.
no cuantificable y si obtengo 0.25000000001 por ciento en un cubo, el ojo nunca lo verá. – BCS