Regenerador aleatorio. Generador de números aleatorios de Excel en funciones y análisis de datos

Un generador de números en línea es una herramienta conveniente que le permite obtener cantidad requerida números de una profundidad de bits determinada y el rango más amplio. ¡Nuestro generador de números aleatorios tiene muchos usos! Por ejemplo, puedes realizar un concurso en VKontakte y jugar allí por un osito de peluche en un grupo de ciclistas para una respuesta :)) También nos sentiremos muy halagados si, con su ayuda, decides determinar el número ganador en cualquier lotería o decidir a qué número apostar en un casino. Realmente esperamos que alguien encuentre el suyo. numero de la suerte en línea con nosotros!

Rango de números aleatorios:

Cantidad:

¿Eliminar la repetición?

Generar números

Por favor ayúdanos a desarrollar:¡Cuéntale a tus amigos sobre el generador!

Aleatorio | número aleatorio en línea en 1 clic

Los números nos rodean desde el nacimiento y juegan un papel importante en la vida. Para muchas personas, el trabajo en sí está relacionado con los números; algunos dependen de la suerte, completando números; billetes de lotería, y alguien les da un significado completamente místico. De una forma u otra, a veces no podemos prescindir de utilizar un programa como generador de números aleatorios.

Por ejemplo, necesitas organizar un sorteo de premios entre los suscriptores de tu grupo. Nuestro generador de números aleatorios en línea le ayudará a seleccionar a los ganadores de forma rápida y honesta. Solo necesita, por ejemplo, establecer el número requerido de números aleatorios (según el número de ganadores) y el rango máximo (según el número de participantes, si se les asignan números). El fraude en este caso está completamente excluido.

Este programa también puede servir como generador de números aleatorios para lotería. Por ejemplo, has comprado un billete y quieres confiar totalmente en el azar y la suerte a la hora de elegir los números. Entonces nuestro aleatorizador de números le ayudará a completar su billete de lotería.

Cómo generar un número aleatorio: instrucciones

programa de números aleatorios Funciona de forma muy sencilla. Ni siquiera necesita descargarlo a su computadora; todo se hace en la ventana del navegador donde está abierta esta página. Los números aleatorios se generan de acuerdo con la cantidad especificada de números y su rango, de 0 a 999999999. Para generar un número en línea, debe:

  1. Seleccione el rango en el que desea el resultado. Quizás desee eliminar números hasta 10 o, digamos, 10.000;
  2. Elimina repeticiones: al seleccionar este elemento, forzarás aleatorizador de números ofrecerle sólo combinaciones únicas dentro de un rango determinado;
  3. Seleccione la cantidad de números: del 1 al 99999;
  4. Haga clic en el botón "Generar números".

No importa cuántos números quieras obtener como resultado, el generador numeros primos mostrará el resultado completo a la vez y podrá verlo en esta página desplazándose por el campo con números usando el mouse o el panel táctil.

Ahora puede utilizar los números ya preparados de la forma que necesite. Desde el campo del número podrás copiar el resultado para publicarlo en un grupo o enviarlo por correo. Y para que el resultado no genere dudas, haz una captura de pantalla de esta página, en la que serán claramente visibles los parámetros del aleatorizador de números y los resultados del programa. Es imposible cambiar los números en el campo, por lo que se excluye la posibilidad de manipulación. Esperamos que nuestro sitio web y nuestro generador de números aleatorios le hayan ayudado.

Etc., y lo utilizan los propietarios de cuentas para atraer nuevas audiencias a la comunidad.

El resultado de estos sorteos depende a menudo de la suerte del usuario, ya que el destinatario del premio se determina al azar.

Para tomar esta determinación, los organizadores de loterías casi siempre utilizan un generador de números aleatorios en línea o preinstalado que se distribuye de forma gratuita.

Elección

Muy a menudo, elegir un generador de este tipo puede resultar difícil, ya que su funcionalidad es bastante diferente: para algunos es significativamente limitada, para otros es bastante amplia.

Se está implementando un número bastante grande de estos servicios, pero la dificultad es que difieren en su alcance.

Muchos, por ejemplo, están ligados en su funcionalidad a un determinado red social(por ejemplo, muchas aplicaciones generadoras solo funcionan con enlaces de ésta).

Los generadores más simples simplemente determinan aleatoriamente un número dentro de un rango determinado.

Esto es conveniente porque no asocia el resultado con una publicación específica, lo que significa que puede usarse para sorteos fuera de la red social y en varias otras situaciones.

Básicamente no tienen ningún otro uso.

¡Consejo! Al elegir lo más generador adecuado es importante considerar para qué fines se utilizará.

Presupuesto

Para agilizar el proceso de elección del servicio en línea óptimo para generar números aleatorios, la siguiente tabla muestra las principales características técnicas y la funcionalidad de dichas aplicaciones.

Tabla 1. Características del funcionamiento de aplicaciones en línea para generar un número aleatorio.
Nombre red social Múltiples resultados Seleccionar de una lista de números Widget en línea para el sitio. Seleccionar de un rango Deshabilitar repeticiones
RandStuff No No
Echar suertes Sitio web oficial o VKontakte No No
numero aleatorio Sitio web oficial No No No
aleatorio Sitio web oficial No No No
Números aleatorios Sitio web oficial No No No No

Todas las aplicaciones analizadas en la tabla se describen con más detalle a continuación.

RandStuff

Puede utilizar esta aplicación en línea siguiendo el enlace a su sitio web oficial http://randstuff.ru/number/.

Este es un generador de números aleatorios simple, caracterizado por un funcionamiento rápido y estable.

Se implementa con éxito tanto en el formato de una aplicación independiente en el sitio web oficial como como una aplicación en formato .

La peculiaridad de este servicio es que puede seleccionar un número aleatorio tanto de un rango específico como de una lista específica de números que se pueden especificar en el sitio.

  • Trabajo estable y rápido;
  • Falta de conexión directa a una red social;
  • Puede seleccionar uno o varios números;
  • Sólo puedes elegir entre los números especificados.

Las opiniones de los usuarios sobre esta aplicación son las siguientes: “Determinamos a los ganadores en los grupos de VKontakte a través de este servicio. Gracias”, “Eres el mejor”, “Solo uso este servicio”.

Echar suertes

Esta aplicación es un generador de funciones simple, implementado en el sitio web oficial en forma de aplicación VKontakte.

También hay un widget generador para insertar en su sitio web.

La principal diferencia con la aplicación anterior descrita es que esta te permite desactivar la repetición del resultado.


Tenga en cuenta que, idealmente, la curva de densidad de distribución de números aleatorios se vería como se muestra en la Fig. 22.3. Es decir, lo ideal es que cada intervalo contenga el mismo número de puntos: norte i = norte/k , Dónde norte — número total agujas, k número de intervalos, i= 1, , k .

Arroz. 22.3. Diagrama de frecuencia de números aleatorios.
generado teóricamente por un generador ideal

Cabe recordar que generar un número aleatorio arbitrario consta de dos etapas:

  • generar un número aleatorio normalizado (es decir, distribuido uniformemente de 0 a 1);
  • conversión de números aleatorios normalizada r i a números aleatorios incógnita i, que se distribuyen según la ley de distribución (arbitraria) requerida por el usuario o en el intervalo requerido.

Los generadores de números aleatorios según el método de obtención de números se dividen en:

  • físico;
  • tabular;
  • algorítmico.

RNG físico

Un ejemplo de un RNG físico puede ser: una moneda (“cara” 1, “cruz” 0); dados; un tambor con una flecha dividida en sectores con números; Generador de ruido de hardware (HS), que utiliza un dispositivo térmico ruidoso, por ejemplo, un transistor (Fig. 22.422.5).

Arroz. 22.4. Esquema de un método de hardware para generar números aleatorios.
Arroz. 22.5. Diagrama de obtención de números aleatorios mediante el método de hardware.
Tarea "Generar números aleatorios usando una moneda"

Genere un número aleatorio de tres dígitos, distribuido uniformemente en el rango de 0 a 1, utilizando una moneda. Precisión de tres decimales.

La primera forma de resolver el problema.
Lanza una moneda 9 veces y, si sale cara, escribe "0"; si sale cara, escribe "1". Entonces, digamos que como resultado del experimento obtuvimos la secuencia aleatoria 100110100.

Dibuja un intervalo de 0 a 1. Leyendo los números en secuencia de izquierda a derecha, divide el intervalo por la mitad y cada vez elige una de las partes del siguiente intervalo (si se saca un 0, entonces la izquierda, si se saca un Se despliega 1, luego el derecho). Por lo tanto, puede llegar a cualquier punto del intervalo con la precisión que desee.

Entonces, 1 : el intervalo se divide por la mitad y , se selecciona la mitad derecha, el intervalo se reduce: . siguiente numero 0 : el intervalo se divide por la mitad y , se selecciona la mitad izquierda, el intervalo se reduce: . siguiente numero 0 : el intervalo se divide por la mitad y , se selecciona la mitad izquierda, el intervalo se reduce: . siguiente numero 1 : el intervalo se divide por la mitad y , se selecciona la mitad derecha, el intervalo se reduce: .

Según la condición de precisión del problema, se ha encontrado una solución: es cualquier número del intervalo, por ejemplo, 0,625.

En principio, si adoptamos un enfoque estricto, entonces la división de intervalos debe continuar hasta que los límites izquierdo y derecho del intervalo encontrado COINCIDRAN con una precisión del tercer decimal. Es decir, desde el punto de vista de la precisión, el número generado ya no será distinguible de ningún número del intervalo en el que se encuentre.

La segunda forma de resolver el problema.
Dividamos la secuencia binaria resultante 100110100 en tríadas: 100, 110, 100. Después de convertir estos números binarios en números decimales, obtenemos: 4, 6, 4. Sustituyendo "0" al frente, obtenemos: 0,464. Este método sólo puede producir números del 0,000 al 0,777 (ya que el máximo que se puede "exprimir" de tres dígitos binarios es 111 2 = 7 8), es decir, de hecho, estos números están representados en el sistema numérico octal. Para traducción octal números en decimal realicemos la representación:
0,464 8 = 4 8 1 + 6 8 2 + 4 8 3 = 0,6015625 10 = 0,602 10.
Entonces, el número requerido es: 0,602.

RNG tabular

Los RNG tabulares utilizan tablas especialmente compiladas que contienen números verificados no correlacionados, es decir, que no dependen entre sí, como fuente de números aleatorios. en la mesa La figura 22.1 muestra un pequeño fragmento de dicha tabla. Al recorrer la tabla de izquierda a derecha, de arriba a abajo, puede obtener números aleatorios distribuidos uniformemente de 0 a 1 con el número requerido de decimales (en nuestro ejemplo, usamos tres decimales para cada número). Dado que los números de la tabla no dependen unos de otros, la tabla se puede recorrer de diferentes maneras, por ejemplo, de arriba a abajo, o de derecha a izquierda, o, digamos, puede seleccionar números que estén en posiciones pares.

Tabla 22.1.
Números aleatorios. Igualmente
números aleatorios distribuidos del 0 al 1
Números aleatorios Distribuido uniformemente
0 a 1 números aleatorios
9 2 9 2 0 4 2 6 0.929
9 5 7 3 4 9 0 3 0.204
5 9 1 6 6 5 7 6 0.269
… …

La ventaja de este método es que produce números verdaderamente aleatorios, ya que la tabla contiene números verificados no correlacionados. Desventajas del método: para almacenamiento. gran cantidad los números requieren mucha memoria; Existen grandes dificultades para generar y comprobar este tipo de tablas cuando el uso de una tabla ya no garantiza la aleatoriedad; secuencia numérica, y por tanto la fiabilidad del resultado.

Hay una tabla que contiene 500 números verificados absolutamente aleatorios (tomado del libro de I. G. Venetsky, V. I. Venetskaya "Conceptos y fórmulas matemáticos y estadísticos básicos en el análisis económico").

RNG algorítmico

Los números generados por estos RNG son siempre pseudoaleatorios (o cuasialeatorios), es decir, cada número posterior generado depende del anterior:

r i + 1 = F(r i) .

Las secuencias formadas por tales números forman bucles, es decir, necesariamente hay un ciclo que se repite un número infinito de veces. Los ciclos que se repiten se llaman períodos.

La ventaja de estos RNG es su velocidad; Los generadores prácticamente no requieren recursos de memoria y son compactos. Desventajas: los números no se pueden llamar completamente aleatorios, ya que existe una dependencia entre ellos, así como la presencia de puntos en la secuencia de números cuasi aleatorios.

Consideremos varios métodos algorítmicos para obtener RNG:

  • método de cuadrados medianos;
  • método de productos intermedios;
  • método de agitación;
  • método lineal congruente.

método del cuadrado medio

Hay un número de cuatro dígitos. R 0. Este número se eleva al cuadrado y se ingresa en R 1. Siguiente de R 1 toma el nuevo número aleatorio del medio (cuatro dígitos del medio) y lo escribe en R 0. Luego se repite el procedimiento (ver Fig. 22.6). Tenga en cuenta que, de hecho, como número aleatorio no debe tomarse ghij, A 0.ghij con un cero y un punto decimal añadidos a la izquierda. Este hecho se refleja como en la Fig. 22.6, y en figuras similares posteriores.

Arroz. 22.6. Esquema del método de los cuadrados medios.

Desventajas del método: 1) si en alguna iteración el número R 0 se vuelve igual a cero, entonces el generador degenera, por lo que la elección correcta del valor inicial es importante R 0; 2) el generador repetirá la secuencia hasta METRO norte pasos (en mejor escenario), Dónde norte dígito numérico R 0 , METRO base del sistema numérico.

Por ejemplo en la Fig. 22.6: si el número R El 0 se representará en el sistema numérico binario, luego la secuencia de números pseudoaleatorios se repetirá en 2 4 = 16 pasos. Tenga en cuenta que la repetición de la secuencia puede ocurrir antes si el número inicial se elige mal.

El método descrito anteriormente fue propuesto por John von Neumann y se remonta a 1946. Como este método resultó poco fiable, fue rápidamente abandonado.

Método del producto medio

Número R 0 multiplicado por R 1, del resultado obtenido R 2 se extrae el medio R 2 * (este es otro número aleatorio) y multiplicado por R 1. Todos los números aleatorios posteriores se calculan utilizando este esquema (ver Fig. 22.7).

Arroz. 22.7. Esquema del método de productos medianos.

Método de agitación

El método aleatorio utiliza operaciones para desplazar cíclicamente el contenido de una celda hacia la izquierda y hacia la derecha. La idea del método es la siguiente. Deja que la celda almacene el número inicial. R 0. Desplazando cíclicamente el contenido de la celda hacia la izquierda en 1/4 de la longitud de la celda, obtenemos un nuevo número R 0*. De la misma manera, ciclar el contenido de la celda. R 0 a la derecha por 1/4 de la longitud de la celda, obtenemos el segundo número R 0**. suma de numeros R 0* y R 0** da un nuevo número aleatorio R 1. Próximo R 1 se ingresa en R 0, y se repite toda la secuencia de operaciones (ver Fig. 22.8).


Arroz. 22.8. Diagrama del método de mezcla

Tenga en cuenta que el número resultante de la suma R 0* y R 0 **, puede que no quepa completamente en la celda R 1. En este caso, los dígitos sobrantes deben descartarse del número resultante. Expliquemos esto en la Fig. 22.8, donde todas las celdas están representadas por ocho dígitos binarios. Dejar R 0 * = 10010001 2 = 145 10 , R 0 ** = 10100001 2 = 161 10 , Entonces R 0 * + R 0 ** = 100110010 2 = 306 10 . Como puede ver, el número 306 ocupa 9 dígitos (en el sistema numérico binario) y la celda R 1 (igual que R 0) puede contener un máximo de 8 bits. Por lo tanto, antes de ingresar el valor en R 1, es necesario eliminar un bit "extra" situado más a la izquierda del número 306, lo que da como resultado R 1 ya no irá al 306, sino al 00110010 2 = 50 10 . También tenga en cuenta que en lenguajes como Pascal, el "recorte" de bits adicionales cuando una celda se desborda se realiza automáticamente de acuerdo con el tipo especificado de variable.

Método lineal congruente

El método de la congruencia lineal es uno de los procedimientos más simples y más utilizados actualmente para simular números aleatorios. Este método utiliza el mod( incógnita, y), que devuelve el resto cuando el primer argumento se divide por el segundo. Cada número aleatorio posterior se calcula en función del número aleatorio anterior mediante la siguiente fórmula:

r i+ 1 = mod( k · r i + b, METRO) .

La secuencia de números aleatorios obtenida usando esta fórmula se llama secuencia lineal congruente. Muchos autores llaman secuencia lineal congruente cuando b = 0 método multiplicativo congruente, y cuando b ≠ 0 — método mixto congruente.

Para un generador de alta calidad, es necesario seleccionar coeficientes adecuados. Es necesario que el número METRO fue bastante grande, ya que el período no puede tener más METRO elementos. Por otro lado, la división utilizada en este método es una operación bastante lenta, por lo que para una computadora binaria la elección lógica sería METRO = 2 norte, ya que en este caso encontrar el resto de la división se reduce dentro de la computadora a la operación lógica binaria “Y”. Elegir el número primo más grande también es común METRO, menos de 2 norte: en la literatura especializada se demuestra que en este caso los dígitos de orden inferior del número aleatorio resultante r i+ 1 se comporta tan aleatoriamente como los más antiguos, lo que tiene un efecto positivo en toda la secuencia de números aleatorios en su conjunto. Como ejemplo, uno de los Números de Mersenne, igual a 2 31 1, y por tanto, METRO= 2 31 1 .

Uno de los requisitos para las secuencias lineales congruentes es que la duración del período sea lo más larga posible. La duración del período depende de los valores. METRO , k Y b. El teorema que presentamos a continuación nos permite determinar si es posible alcanzar un período de duración máxima para valores específicos. METRO , k Y b .

Teorema. Secuencia lineal congruente definida por números. METRO , k , b Y r 0, tiene un período de longitud METRO si y sólo si:

  • números b Y METRO relativamente simple;
  • k 1 veces pag para cada primo pag, que es un divisor METRO ;
  • k 1 es múltiplo de 4, si METRO múltiplo de 4.

Finalmente, concluyamos con un par de ejemplos del uso del método de congruencia lineal para generar números aleatorios.

Se descubrió que una serie de números pseudoaleatorios generados en base a los datos del ejemplo 1 se repetirían cada METRO/4 números. Número q se establece arbitrariamente antes del inicio de los cálculos, sin embargo, debe tenerse en cuenta que la serie da la impresión de ser aleatoria en general k(y por lo tanto q). El resultado se puede mejorar algo si b extraño y k= 1 + 4 · q en este caso la fila se repetirá cada METRO números. Después de una larga búsqueda k los investigadores se decidieron por valores de 69069 y 71365.

Un generador de números aleatorios que utilice los datos del ejemplo 2 producirá números aleatorios no repetidos con un período de 7 millones.

El método multiplicativo para generar números pseudoaleatorios fue propuesto por D. H. Lehmer en 1949.

Comprobando la calidad del generador.

La calidad de todo el sistema y la precisión de los resultados dependen de la calidad del RNG. Por tanto, la secuencia aleatoria generada por el RNG debe satisfacer una serie de criterios.

Los controles realizados son de dos tipos:

  • controles de uniformidad de distribución;
  • Pruebas de independencia estadística.

Comprobaciones de uniformidad de distribución.

1) El RNG debería producir cerca de siguientes valores Parámetros estadísticos característicos de una ley aleatoria uniforme:

2) prueba de frecuencia

Una prueba de frecuencia le permite saber cuántos números caen dentro de un intervalo (metro r – σ r ; metro r + σ r) , es decir (0,5 0,2887; 0,5 + 0,2887) o, en última instancia, (0,2113; 0,7887). Dado que 0,7887 0,2113 = 0,5774, concluimos que en un buen RNG, aproximadamente el 57,7% de todos los números aleatorios extraídos deberían caer en este intervalo (ver figura 22.9).

Arroz. 22.9. Diagrama de frecuencia de un RNG ideal.
en caso de comprobarlo para prueba de frecuencia

También es necesario tener en cuenta que el número de números que caen en el intervalo (0; 0,5) debe ser aproximadamente igual al número de números que caen en el intervalo (0,5; 1).

3) prueba de chi-cuadrado

La prueba de chi-cuadrado (prueba de χ 2) es una de las pruebas estadísticas más conocidas; es el método principal utilizado en combinación con otros criterios. La prueba de chi-cuadrado fue propuesta en 1900 por Karl Pearson. Su notable trabajo se considera la base de la estadística matemática moderna.

Para nuestro caso, comprobar mediante el criterio de chi-cuadrado nos permitirá saber cuánto real El RNG está cerca del punto de referencia del RNG, es decir, si satisface o no el requisito de distribución uniforme.

Diagrama de frecuencia referencia El RNG se muestra en la Fig. 22.10. Dado que la ley de distribución del RNG de referencia es uniforme, entonces la probabilidad (teórica) pag i meter números en iésimo intervalo (todos estos intervalos k) es igual a pag i = 1/k . Y así, en cada uno de k los intervalos alcanzarán liso Por pag i · norte números ( norte número total de números generados).

Arroz. 22.10. Diagrama de frecuencia del RNG de referencia.

Un RNG real producirá números distribuidos (¡y no necesariamente uniformemente!) k intervalos y cada intervalo contendrá norte i números (en total norte 1 + norte 2 + + norte k = norte ). ¿Cómo podemos determinar qué tan bueno es el RNG que se está probando y qué tan cerca está del de referencia? Es bastante lógico considerar las diferencias al cuadrado entre el número resultante de números. norte i y "referencia" pag i · norte . Los sumamos y el resultado es:

χ 2 exp. = ( norte 1 pag 1 · norte) 2 + (norte 2 pag 2 · norte) 2 + + ( norte k – pag k · norte) 2 .

De esta fórmula se deduce que cuanto menor sea la diferencia en cada uno de los términos (y por tanto la menos valorχ 2 exp. ), cuanto más fuerte tiende a ser uniforme la ley de distribución de números aleatorios generados por un RNG real.

En la expresión anterior a cada uno de los términos se le asigna el mismo peso (igual a 1), lo que en realidad puede no ser cierto; por lo tanto, para las estadísticas de chi-cuadrado, es necesario normalizar cada iésimo término, dividiéndolo por pag i · norte :

Finalmente, escribamos la expresión resultante de manera más compacta y simplifiquémosla:

Obtuvimos el valor de la prueba de chi-cuadrado para experimental datos.

en la mesa se dan 22.2 teorético valores de chi-cuadrado (χ 2 teórico), donde ν = norte 1 es el número de grados de libertad, pag este es un nivel de confianza especificado por el usuario que indica en qué medida el RNG debe satisfacer los requisitos de una distribución uniforme, o pag — es la probabilidad de que el valor experimental de χ 2 exp..

será menor que la teoría tabulada (teórica) χ 2.
o igual a él
Tabla 22.2. Algunos puntos porcentuales de la distribución χ 2 pag = 1% pag = 5% pag = 25% pag = 50% p = 75%
ν = 1 0.00016 0.00393 0.1015 0.4549 1.323 3.841 6.635
ν = 2 0.02010 0.1026 0.5754 1.386 2.773 5.991 9.210
ν = 3 0.1148 0.3518 1.213 2.366 4.108 7.815 11.34
ν = 4 0.2971 0.7107 1.923 3.357 5.385 9.488 13.28
ν = 5 0.5543 1.1455 2.675 4.351 6.626 11.07 15.09
ν = 6 0.8721 1.635 3.455 5.348 7.841 12.59 16.81
ν = 7 1.239 2.167 4.255 6.346 9.037 14.07 18.48
ν = 8 1.646 2.733 5.071 7.344 10.22 15.51 20.09
ν = 9 2.088 3.325 5.899 8.343 11.39 16.92 21.67
ν = 10 2.558 3.940 6.737 9.342 12.55 18.31 23.21
ν = 11 3.053 4.575 7.584 10.34 13.70 19.68 24.72
ν = 12 3.571 5.226 8.438 11.34 14.85 21.03 26.22
ν = 15 5.229 7.261 11.04 14.34 18.25 25.00 30.58
ν = 20 8.260 10.85 15.45 19.34 23.83 31.41 37.57
ν = 30 14.95 18.49 24.48 29.34 34.80 43.77 50.89
ν = 50 29.71 34.76 42.94 49.33 56.33 67.50 76.15
ν > 30 ν p = 95% ν ) · incógnita pag p = 99% incógnita 2 pag+ raíz cuadrada (2 + 2/3 · 2/3 + ν ))
incógnita pag = oh (1/sqrt( 2.33 0.00 0.674 1.64 2.33

1,64 pag 0,674.

considerado aceptable pag del 10% al 90% Si χ 2 exp. mucho más que la teoría de χ 2. norte i(eso es pag i · norte es grande), entonces el generador

Incluso D. Knuth en su libro “El arte de programar” señaló que tener χ 2 exp.

para los pequeños, en general, tampoco es bueno, aunque, a primera vista, parece maravilloso desde el punto de vista de la uniformidad. De hecho, tome una serie de números 0,1, 0,2, 0,3, 0,4, 0,5, 0,6, 0,7, 0,8, 0,9, 0,1, 0,2, 0,3, 0,4, 0,5, 0,6, son ideales desde el punto de vista de la uniformidad, y χ 2 exp. pag serán prácticamente cero, pero es poco probable que los reconozcas como aleatorios. Si χ 2 exp. Si χ 2 exp. norte i mucho menos que la teoría χ 2. pag i · norte (eso es

pequeño), entonces el generador pag el requisito de una distribución aleatoria uniforme, ya que los valores observados pag demasiado cerca de lo teórico

y no puede considerarse aleatorio. pag i · norte Pero si χ 2 exp.

se encuentra en un cierto rango entre dos valores de la teoría χ 2. , que corresponden, por ejemplo,

= 25% y

= 50%, entonces podemos asumir que los valores de números aleatorios generados por el sensor son completamente aleatorios.

Además, hay que tener en cuenta que todos los valores

debe ser lo suficientemente grande, por ejemplo más de 5 (encontrado empíricamente). Sólo entonces (con una muestra estadística suficientemente grande) las condiciones experimentales podrán considerarse satisfactorias. pag i Entonces, el procedimiento de verificación es el siguiente. i Pruebas de independencia estadística

1) Verificar la frecuencia de aparición de números en la secuencia

Veamos un ejemplo. El número aleatorio 0.2463389991 consta de los dígitos 2463389991, y el número 0.5467766618 consta de los dígitos 5467766618. Conectando las secuencias de dígitos, tenemos: 24633899915467766618. norte Está claro que la probabilidad teórica pérdida Está claro que la probabilidad teórica El décimo dígito (del 0 al 9) es igual a 0,1. Está claro que la probabilidad teórica 2) Comprobar la apariencia de series de números idénticos metro Denotemos por metro l

número de series de dígitos idénticos en una fila de longitud norte. Hay que comprobar todo norte 3 = 2 .

de 1 a Está claro que la probabilidad teórica, Dónde pag Está claro que la probabilidad teórica este es un número especificado por el usuario: el número máximo de dígitos idénticos que ocurren en una serie. Está claro que la probabilidad teórica En el ejemplo “24633899915467766618” se encontraron 2 series de longitud 2 (33 y 77), es decir pag 2 = 2 y 2 series de longitud 3 (999 y 666), es decir pag La probabilidad de ocurrencia de una serie de longitud. pag es igual a:

= 9 10 pag Está claro que la probabilidad teórica= 0,9, ya que sólo puede haber un símbolo entre 10, y hay 9 símbolos en total (el cero no cuenta). Y la probabilidad de que aparezcan dos símbolos “XX” idénticos seguidos es 0.1 · 0.1 · 9, es decir, la probabilidad de 0.1 de que aparezca el símbolo “X” en la primera posición se multiplica por la probabilidad de 0.1 de que el símbolo “X” aparezca en la primera posición. El mismo símbolo aparecerá en la segunda posición “X” y multiplicado por el número de dichas combinaciones 9.

La frecuencia de aparición de series se calcula usando la fórmula chi-cuadrado que discutimos anteriormente usando los valores pag Está claro que la probabilidad teórica .

Nota: El generador se puede probar varias veces, pero las pruebas no están completas y no garantizan que el generador produzca números aleatorios. Por ejemplo, un generador que produce la secuencia 12345678912345 se considerará ideal durante las pruebas, lo que obviamente no es del todo cierto.

En conclusión, observamos que el tercer capítulo de El arte de la programación (Volumen 2) de Donald E. Knuth está enteramente dedicado al estudio de los números aleatorios. Examina varios métodos para generar números aleatorios, pruebas estadísticas de aleatoriedad y la conversión de números aleatorios distribuidos uniformemente en otros tipos de variables aleatorias. Más de doscientas páginas están dedicadas a la presentación de este material.

Tenemos una secuencia de números formada por elementos prácticamente independientes que obedecen a una distribución determinada. Como regla general, distribución uniforme.

Puedes generar números aleatorios en Excel de diferentes maneras y maneras. Consideremos solo los mejores de ellos.

Función de números aleatorios en Excel

  1. La función ALEATORIO devuelve un número real aleatorio distribuido uniformemente. Será menor que 1, mayor o igual a 0.
  2. La función RANDBETWEEN devuelve un número entero aleatorio.

Veamos su uso con ejemplos.

Muestreo de números aleatorios usando RAND

Esta función no requiere argumentos (RAND()).

Para generar un número real aleatorio en el rango de 1 a 5, por ejemplo, utilice la siguiente fórmula: =ALEATORIO()*(5-1)+1.

El número aleatorio devuelto se distribuye uniformemente en el intervalo.

Cada vez que se calcula la hoja de trabajo o cambia el valor de cualquier celda de la hoja de trabajo, se devuelve un nuevo número aleatorio. Si desea guardar la población generada, puede reemplazar la fórmula con su valor.

  1. Haga clic en la celda con un número aleatorio.
  2. En la barra de fórmulas, seleccione la fórmula.
  3. Presione F9. Y ENTRAR.

Comprobemos la uniformidad de la distribución de números aleatorios de la primera muestra utilizando un histograma de distribución.


El rango de valores verticales es la frecuencia. Horizontal - "bolsillos".



Función ALEATORIA ENTRE

La sintaxis de la función RANDBETWEEN es (límite inferior; límite superior). El primer argumento debe ser menor que el segundo. De lo contrario, la función arrojará un error. Se supone que los límites son números enteros. La fórmula descarta la parte fraccionaria.

Ejemplo de uso de la función:

Números aleatorios con precisión 0,1 y 0,01:

Cómo hacer un generador de números aleatorios en Excel

Hagamos un generador de números aleatorios que genere un valor de un rango determinado. Usamos una fórmula como: =ÍNDICE(A1:A10,INTEGER(RAND()*10)+1).

Hagamos un generador de números aleatorios en el rango de 0 a 100 en pasos de 10.

Debe seleccionar 2 al azar de la lista de valores de texto. Usando la función RAND, comparamos valores de texto en el rango A1:A7 con números aleatorios.

Usemos la función ÍNDICE para seleccionar dos valores de texto aleatorios de la lista original.

Para seleccionar un valor aleatorio de la lista, utilice la siguiente fórmula: =INDEX(A1:A7,RANDBETWEEN(1,COUNT(A1:A7))).

Generador de números aleatorios de distribución normal

Las funciones RAND y RANDBETWEEN producen números aleatorios con una distribución uniforme. Cualquier valor con la misma probabilidad puede caer tanto en el límite inferior del rango solicitado como en el superior. Esto da como resultado una enorme diferencia con respecto al valor objetivo.

Una distribución normal implica que la mayoría de los números generados están cerca del número objetivo. Ajustemos la fórmula RANDBETWEEN y creemos una matriz de datos con una distribución normal.

El costo del producto X es de 100 rublos. Todo el lote producido sigue una distribución normal. Una variable aleatoria también sigue una distribución de probabilidad normal.

En tales condiciones, el valor medio del surtido es de 100 rublos. Generemos una matriz y construyamos un gráfico con una distribución normal con una desviación estándar de 1,5 rublos.

Usamos la función: =NORMINV(RAND();100;1.5).

Excel calculó qué valores estaban dentro del rango de probabilidad. Dado que la probabilidad de producir un producto con un costo de 100 rublos es máxima, la fórmula muestra valores cercanos a 100 con más frecuencia que otros.

Pasemos a trazar el gráfico. Primero necesitas crear una tabla con categorías. Para ello, dividimos la matriz en períodos:

A partir de los datos obtenidos podemos generar un diagrama con una distribución normal. El eje de valores es el número de variables en el intervalo, el eje de categorías son los períodos.

Los números nos acompañan a todas partes: números de casas y apartamentos, números de teléfono, coches, pasaportes, tarjetas de plástico, fechas, contraseñas de correo electrónico. Nosotros mismos elegimos algunas combinaciones de números, pero la mayoría las obtenemos por casualidad. Sin darnos cuenta, utilizamos números generados aleatoriamente todos los días. Si se nos ocurren códigos PIN, entonces crédito único o tarjeta de salario son generados por sistemas confiables que excluyen el acceso a contraseñas. Los generadores de números aleatorios brindan seguridad en áreas que requieren velocidad de procesamiento, seguridad e independencia de los datos.

El proceso de generación de números pseudoaleatorios está sujeto a determinadas leyes y se utiliza desde hace mucho tiempo, por ejemplo, en las loterías. En el pasado reciente, los sorteos se realizaban mediante máquinas de lotería o lotes. Ahora en muchos países números ganadores. loterías estatales están determinados precisamente por el conjunto de números aleatorios generados.

Ventajas del método

Entonces, un generador de números aleatorios es un mecanismo moderno independiente para determinar aleatoriamente combinaciones de números. La singularidad y perfección de este método radica en la imposibilidad de intervención externa en el proceso. El generador es un conjunto de programas construidos, por ejemplo, sobre diodos de ruido. El dispositivo genera una corriente de ruido aleatorio, cuyos valores actuales se convierten en números y forman combinaciones.

Generar números proporciona resultados instantáneos: se necesitan unos segundos para crear una combinación. Si hablamos de loterías, los participantes pueden saber inmediatamente si el número del billete coincide con el ganador. Esto permite que los sorteos se realicen con la frecuencia que los participantes deseen. Pero la principal ventaja del método es su imprevisibilidad y la imposibilidad de calcular el algoritmo para seleccionar números.

Cómo se generan los números pseudoaleatorios

De hecho, los números aleatorios no son aleatorios: la serie comienza a partir de un número determinado y se genera mediante un algoritmo. Un generador de números pseudoaleatorios (PRNG o PRNG - generador de números pseudoaleatorios) es un algoritmo que genera una secuencia de números aparentemente no relacionados, generalmente sujetos a una distribución uniforme. En informática, los números pseudoaleatorios se utilizan en muchas aplicaciones: criptografía, modelado de simulación, método de Monte Carlo, etc. La calidad del resultado depende de las propiedades del PRNG.

La fuente de generación puede ser ruido físico, desde radiación cósmica hasta ruido en una resistencia, pero estos dispositivos casi nunca se utilizan en aplicaciones de seguridad de redes. Las aplicaciones criptográficas utilizan algoritmos especiales que generan secuencias que no pueden ser estadísticamente aleatorias. Sin embargo, un algoritmo elegido adecuadamente puede producir series de números que pasan la mayoría de las pruebas de aleatoriedad. El período de repetición en tales secuencias es mayor que el intervalo de trabajo del que se toman los números.

Muchos procesadores modernos contienen un PRNG, como RdRand. Como alternativa, se crean y publican conjuntos de números aleatorios en un cuaderno de un solo uso (diccionario). La fuente de números en este caso es limitada y no proporciona una seguridad de red completa.

Historia del PRNG

Se puede considerar un prototipo de generador de números aleatorios. juego de mesa Senet, común en Antiguo Egipto en 3500 a.C. Según las condiciones, participaron dos jugadores, los movimientos se determinaron lanzando cuatro palos planos en blanco y negro; eran una especie de PRNG de esa época. Se lanzaron los palos al mismo tiempo y se contaron los puntos: si uno caía por el lado blanco, 1 punto y un movimiento extra, dos blancos, dos puntos, y así sucesivamente. Resultado máximo El jugador que arrojó cuatro palos con el lado negro recibió cinco puntos.

Hoy en día, el generador ERNIE se utiliza desde hace muchos años en el Reino Unido para sorteos de lotería. Hay dos métodos principales de generación. numeros ganadores: congruente lineal y congruente aditiva. Estos y otros métodos se basan en el principio de selección aleatoria y son proporcionados por un software que produce infinitamente números cuya secuencia es imposible de adivinar.

El PRNG opera continuamente, por ejemplo, en maquinas tragamonedas. Según la ley estadounidense, esto requisito previo, que todos los proveedores de software deben cumplir.