Ver Mensaje Individual
  #1 (permalink)  
Antiguo 20/08/2007, 09:42
Avatar de derkenuke
derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Seguir iterando con una probabilidad de 0.95. ¿Cuantas iteraciones da?

Hola:

Se me ha ocurrido este código:
Código PHP:
for( var i=Math.random(); i<probi=Math.random() ) {

Como podéis ver, Se producen iteraciones mientras el número generado esté por debajo de prob. Ésto, si no me equivoco, quiere decir que se seguirá iterando con una probabilidad de prob. Es decir, si prob=0.95 se seguirá iterando si un número aleatorio entre 0 y 1 es menor que 0.95, osea, con una probabilidad del 0.95.


Entonces quería ver cuantas iteraciones haría de media una probabilidad del 0.95, hice esta función:
Código PHP:
function iterar(prob) {
    for( var 
i=Math.random(), cont=0i<probi=Math.random() ) {
        
//document.write("Una iteración ("+i+") <br/>");
        
cont++;
    }
    return 
cont;

Y este simple código para llamar a iterar() nIteraciones veces. Almaceno en iteraciones cuántas veces se itera cada vez, y luego hago la media entre todos los elementos de iteraciones.
Código PHP:
var iteraciones = [];
var 
nIteraciones 10000;
var 
prob 0.95;
for(var 
i=0i<nIteracionesi++) {
    
iteraciones.pushiterar(prob) );
}
document.write("Media de iteraciones "+(eval(iteraciones.join("+"))/nIteraciones) + "."); 
La salida para este código es, por ejemplo (variará por ser el número de iteraciones aleatorio):
Cita:
Media de iteraciones 18.8814.

Lo que me llama la atención es que este número siempre suele estar entre 18.5 y 19.3 o así.


No soy muy ducho en las matemáticas. ¿Cómo puedo llegar a esos valores de 18.5 y 19.3 sabida la probabilidad de 0.95? ¿Cómo se puede saber también al revés? Creo que estoy pidiéndo una fórmula matemática...


Dejo una tabla de datos, asombroso cómo crece al final. También es curioso la media de iteraciones con 0.5 de probabilidad: está muy cerca de la unidad:
Cita:
Media de iteraciones con probabilidad 0.00 en 10000 iteraciones = 0.
Media de iteraciones con probabilidad 0.03 en 10000 iteraciones = 0.0304.
Media de iteraciones con probabilidad 0.05 en 10000 iteraciones = 0.0574.
Media de iteraciones con probabilidad 0.08 en 10000 iteraciones = 0.0838.
Media de iteraciones con probabilidad 0.10 en 10000 iteraciones = 0.1149.
Media de iteraciones con probabilidad 0.13 en 10000 iteraciones = 0.1487.
Media de iteraciones con probabilidad 0.15 en 10000 iteraciones = 0.1854.
Media de iteraciones con probabilidad 0.18 en 10000 iteraciones = 0.2166.
Media de iteraciones con probabilidad 0.20 en 10000 iteraciones = 0.2615.
Media de iteraciones con probabilidad 0.22 en 10000 iteraciones = 0.2873.
Media de iteraciones con probabilidad 0.25 en 10000 iteraciones = 0.3318.
Media de iteraciones con probabilidad 0.27 en 10000 iteraciones = 0.3815.
Media de iteraciones con probabilidad 0.30 en 10000 iteraciones = 0.4323.
Media de iteraciones con probabilidad 0.33 en 10000 iteraciones = 0.4995.
Media de iteraciones con probabilidad 0.35 en 10000 iteraciones = 0.5442.
Media de iteraciones con probabilidad 0.38 en 10000 iteraciones = 0.6051.
Media de iteraciones con probabilidad 0.40 en 10000 iteraciones = 0.6778.
Media de iteraciones con probabilidad 0.43 en 10000 iteraciones = 0.7526.
Media de iteraciones con probabilidad 0.45 en 10000 iteraciones = 0.825.
Media de iteraciones con probabilidad 0.48 en 10000 iteraciones = 0.9412.
Media de iteraciones con probabilidad 0.50 en 10000 iteraciones = 1.0025.
Media de iteraciones con probabilidad 0.53 en 10000 iteraciones = 1.1115.
Media de iteraciones con probabilidad 0.55 en 10000 iteraciones = 1.2107.
Media de iteraciones con probabilidad 0.58 en 10000 iteraciones = 1.3876.
Media de iteraciones con probabilidad 0.60 en 10000 iteraciones = 1.5018.
Media de iteraciones con probabilidad 0.63 en 10000 iteraciones = 1.7111.
Media de iteraciones con probabilidad 0.65 en 10000 iteraciones = 1.8557.
Media de iteraciones con probabilidad 0.68 en 10000 iteraciones = 2.095.
Media de iteraciones con probabilidad 0.70 en 10000 iteraciones = 2.3204.
Media de iteraciones con probabilidad 0.73 en 10000 iteraciones = 2.7343.
Media de iteraciones con probabilidad 0.75 en 10000 iteraciones = 3.0131.
Media de iteraciones con probabilidad 0.78 en 10000 iteraciones = 3.4826.
Media de iteraciones con probabilidad 0.80 en 10000 iteraciones = 4.0523.
Media de iteraciones con probabilidad 0.83 en 10000 iteraciones = 4.8373.
Media de iteraciones con probabilidad 0.85 en 10000 iteraciones = 5.6319.
Media de iteraciones con probabilidad 0.88 en 10000 iteraciones = 7.382.
Media de iteraciones con probabilidad 0.90 en 10000 iteraciones = 9.1932.
Media de iteraciones con probabilidad 0.93 en 10000 iteraciones = 13.2168.
Media de iteraciones con probabilidad 0.95 en 10000 iteraciones = 19.2286.
Media de iteraciones con probabilidad 0.98 en 10000 iteraciones = 49.1258.

Un saludo.
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.