Para qué se usan de verdad los números aleatorios
Seis categorías cubren casi cualquier petición real, y cada una necesita un tipo distinto de aleatoriedad.
Las seis categorías
| Uso | Rango típico | Con o sin repetición |
|---|---|---|
| Sorteo o rifa | 1 al número de participantes | Sin |
| Muestreo para revisión | 1 al número de registros | Sin |
| Mecánica de juego | Dados, d20, cartas | Según el dado |
| Datos de prueba | Cualquier rango o longitud | Cualquiera, normalmente con |
| Reparto de tareas o asientos | 1 al número de personas | Sin |
| Decisiones y desempates | 1 al número de opciones | No aplica |
El error habitual es el «sin repetición»
Extraer ganadores de uno en uno y repetir si sale un duplicado es el método manual, y tiene dos problemas: gasta intentos y hace que el proceso parezca arbitrario aunque sea justo. El muestreo sin reemplazo —una barajado parcial— es correcto y además fácil de explicar.
La distinción también cambia las cuentas. Con reemplazo, cada extracción tiene la misma probabilidad. Sin reemplazo, la población se encoge y las probabilidades se mueven en cada extracción.
Dónde no conviene usar aleatoriedad
En todo lo que deba ser reproducible: datos de prueba que tienen que coincidir entre ejecuciones, una asignación A/B que debe mantenerse estable para un usuario o una simulación determinista. Ahí quieres un generador con semilla, no uno aleatorio: la misma semilla reproduce la misma secuencia.
Y todo lo relacionado con seguridad debe usar una fuente criptográfica, no una página de conveniencia. Un número para una rifa y un número para un token se parecen mucho y tienen requisitos opuestos.
Preguntas frecuentes
¿Qué diferencia hay entre un sorteo y una elección?
Un sorteo implica orden y ausencia de repeticiones; una elección implica una decisión independiente. Para varios ganadores quieres el comportamiento de sorteo.
¿Puedo usar un generador para un sorteo con premios?
Para uno informal, sí. Si tiene consecuencias legales, documenta el método y la lista de participantes antes de extraer y conserva el resultado ordenado.
¿Los datos de prueba deben ser aleatorios o con semilla?
Con semilla si las pruebas dependen de ellos. Valores que cambian en cada ejecución hacen que un fallo sea difícil de reproducir.