Existe un modo curioso de calcular el valor aproximado de π, ideal para tardes lluviosas y aburridas. Para ello, debemos dibujar un cuadrilátero, y dentro de él un círculo, de la siguiente manera:
Una vez dibujado, por ejemplo, en una cartulina, lo colocamos bajo la lluvia de modo que le caiga una buena cantidad de gotas. Como hoy hace un día soleado, simularemos las gotas con ayuda del ordenador, obteniendo algo así:
Como las gotas de lluvia se reparten al azar sobre la superficie de la cartulina, es de esperar que la probabilidad de que una gota caiga dentro del círculo sea proporcional al área del mismo, y que la probabilidad de que caiga en la cartulina sea, también, proporcional al área del a cartulina. Es decir:
Recordando las fórmulas del área del círculo y del cuadrilátero, tenemos:
Y por último, podemos despejar π como:
En el dibujo anterior, han caído 2000 gotas sobre la cartulina, de las cuales 1565 están dentro del círculo. Tenemos pues:
En la siguiente gráfica podemos ver cómo el valor aproximado de Pi, calculado de éste modo, se aproxima al valor real cuando el número de gotas se hace grande:
Éste tipo de métodos se utilizan muy a menudo en cálculo numérico, pero en lugar de incómodas gotas de lluvia se usan puntos al azar generados por un ordenador. Se conocen como métodos de Montecarlo, en honor a sus famosos casinos (por aquello del azar).
Como al ordenador no le da pereza ponerse a contar puntitos, voy a pedirle que simule la friolera de 100000 gotitas. El resultado obtenido en un caso como ese es:
Que es evidentemente una mucho mejor aproximación.









20 comentarios | Responde | Suscríbete
Muy buena analogía del método de Montecarlo.
Este forma de calcular pi se describe en el libro “El cisne negro” de Nassim Nicholas Taleb (aunque ya no me acuerdo si era el cisne negro o su otro libro “existe la suerte?” que también es muuy bueno). Aunque él, en vez de gotas de lluvia, esparce granos de arena lo explica cn granos de arena.
Llevo un rato dándole vueltas y veo un error de bulto (puede que esté equivocado): el área del cuadrado el 2r al cuadrado (el cuadrado del lado) no 4r cuadrado, como pone en la fórmula, lo que da por tierra con toda la demostración. ¿Estoy confundido?
Si estás confundido. Te explico: 2r es el tamaño de un lado. Su cuadrado será por tanto: (2r)²=2²r²=4r²
Vamos, que el 2 también hay que elevarlo al cuadrado
Me temo que sí estás confundido. Si el cuadrado tiene un lado de 2r, el lado al cuadrado será (2r) · (2r), es decir, 4r^2.
El área del cuadrado es (2·r)^2 que es igual a 4·r^2
Creo que está bien.
Si te sirve de consuelo yo he caído en la misma trampa, me he pasado unos minutos si verlo hasta que he leido los comentarios.
Gracias
Dios mío! con este ejercicio aprobé -con nota- un examen de cálculo numérico. Qué recuerdos.
Hay una cosa (muy importante) que hecho en falta. La estimación del error en el resultado (¿cuántas gotas son necesarias para tener un error dado en pi?). En métodos de Montecarlo tan sencillos como éste es muy fácil y hubiera dado una entrada redonda.
También hecho en falta una mención a los padres (modernos) de los métodos de Montecarlo: von Neumann, Ulam y Metropolis. Tampoco habría venido mencionar el problema de la agujas de Buffon para calcular pi que ya tiene muchos siglos.
Y para rizar el rizo, solo si el autor es experto en Montecarlo, yo hubiera aprovechado para introducir las técnicas de reducción de la varianza que aprovechan que la ecuación del cuadrado y la del círculo son conocidas. Son poco conocidas por los que no practican los métodos de Montecarlo, pero los que los practicamos las usamos siempre.
Hombre, yo por echar echo muchas cosas en falta. Tampoco hubiera estado mal disertar sobre cómo generar números pseudo aleatorios de calidad. Pero yo no creo que sea necesario para que el artículo esté completo.
Es un artículo relativamente sencillo, mucha gente conocerá el problema, pero para muchos otros será nuevo, y como intro para éstos es más que suficiente. Se podría haber extendido mucho más, pero el público al que hubiese ido dirigido se habría ido haciendo más limitado. Eso no es malo, simplemente hubiera sido un post diferente. Sería mejorable si hubiese fallos o claras omisiones, pero creo que no los hay. Las que tú mencionas no hubieran hecho al artículo “mejor”, sino para otro público, más especializado.
Dicho esto, a mí precisamente me hubiera gustado mucho más el artículo que tú propones, sobre todo el tema de calcular el error (¿por el teorema del límite central y luego propagación de errores?), pero hasta ahora Amazings permite lecturas a diferentes niveles, y creo que así debe seguir siendo. Te animo a que retomes el tema en tu blog y completes los aspectos que mencionas, que por lo menos a mí me interesan mucho
No estoy de acuerdo. Sí es verdad que una mención al problema de Buffon sería adecuada, pero el resto de puntos que planteas son quizás demasiado técnicos para lo que este artículo pretende.
A veces hay que saber dónde parar y no excederse aunque haya que sacrificar profundidad para permitir a la gente acercarse a algún tema.
Simular la lluvia con un ordenador no tienen ninguna gracia.
Lo bueno es hacerlo de manera analógica con lluvia real.
Para ello, hay que construir un pluviómetro, con dos recipientes, uno circular y otro cuadrado… y luego comparar las masas o los volúmenes de agua recogidos en cada uno de ellos.
Buena idea, eso evita tener que contar las gotas una a una.
No se me había ocurrido.
Los que vivan en lugares en los que no llueva mucho, que no se preocupen. También pueden calcular el valor de pi recortando dos cartulinas (o tablas de marquetería), una con el círculo y otra con el cuadrado de la figura, pesarlas en una balanza de mucha precisión, y, conociendo el area del cuadrado, calcular la del círculo, de ahí, y con la fórmula para el área del círculo, calcular pi.
No es que tenga mucho que ver, pero al leer el artículo me he acordado de este método primitivo de calcular el área bajo una curva arbitraria.
Implementado en Matlab u Octave el método, con un millón de gotas, es tan sencillo como:
n=1e6; 4*sum(sum(rand(2,n).^2)<1)/n
Buenas!
Acabo de publicar en mi blog una entrada en la que os enlazo por partida doble:
http://elmundoderafalillo.blogspot.com/2012/03/no-es-mio-pero-es-interesante-xliii.html
Espero que os guste
En realidad puedes calcular el valor de pi a partir de cualquier colección de números aleatorios, tomados en pares. Tomas pares de números aleatorios, entre 0 y 1. Sumas sus cuadrados y obtienes la raiz cuadrada de la suma. Cuentas cuantos pares dan menos de 1. La razón entre estre número y el total de pares de valores, debería ser pi. En realidad hemos aplicado la ecuación de la circunferencia: x2 + y2 = 1.
Joder, dos párrafos y super interesante, quiero más cosillas así!
Lo interesante, la sencillez. El error puede ser importante dependiendo para qué necesitemos el valor de pi. Pero como curiosidad para gente que sabe muy poco o nada está bien.
no manches, habia oido de la campana de gauss que todas la gotas se acumulan en el centro, pero esto esta fuera de lugar