Calculando Pi con gotas de lluvia

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:

\frac{Gotas_{circulo}}{Gotas_{cartulina}} \approx\frac{Area_{circulo}}{Area_{cartulina}}
Recordando las fórmulas del área del círculo y del cuadrilátero, tenemos:

\frac{Gotas_{circulo}}{Gotas_{cartulina}} \approx\frac{\pi r^2}{4r^2} = \frac{\pi}{4}
Y por último, podemos despejar π como:

\pi \approx 4 \frac{Gotas_{circulo}}{Gotas_{cartulina}}
En el dibujo anterior, han caído 2000 gotas sobre la cartulina, de las cuales 1565 están dentro del círculo. Tenemos pues:

\pi \approx 4 \frac{1565}{2000} = 3.13
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:

\pi \approx 4 \frac{78539}{100000} = 3.14156
Que es evidentemente una mucho mejor aproximación.

27 Comentarios

Participa Suscríbete

RenaissanceRenaissance

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.

Juan José SalvadorJuan José Salvador

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?

Ahskar

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 :)

AlbertAlbert

El área del cuadrado es (2·r)^2 que es igual a 4·r^2
Creo que está bien.

BufffBufff

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

jaimejaime

Dios mío! con este ejercicio aprobé -con nota- un examen de cálculo numérico. Qué recuerdos.

Francis

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.

Ontureño

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 😀

Fooly_Cooly

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.

Alb

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.

M. Montes

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.

krollspellkrollspell

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

Helena GómezHelena Gómez

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.

CarlesCarles

Joder, dos párrafos y super interesante, quiero más cosillas así!

MiguelMiguel

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.

saidsaid

no manches, habia oido de la campana de gauss que todas la gotas se acumulan en el centro, pero esto esta fuera de lugar

javierjavier

El sistema es interesante pero le veo un grandísimo fallo de base: para calcular la fórmula de pi = 4 x (puntoscirculo / puntostotales) has usado la fórmula que ya incluye pi.
Llegar a la conclusión de la división es relativamente sencillo usando la premisa de la probabilidad de las gotas pero lo de multiplicar el resultado por cuatro, pues no se yo…

javierjavier

Me contesto a mi mismo, no se si voy a decir algo que tu has dicho de otro modo o no.
Yo he hecho un experimento donde he puesto una cuadrícula de puntos mas o menos equidistantes ocupando todo el cuadrado y el círculo.
Si tengo 98 puntos en total, dentro del círculo me caen 79, el cuadrado tiene 1 metro de lado, por tanto tiene 4 metros de longitud. A partir de ahí hago regla de tres.

98 puntos es a 4 metros
como 79 puntos es a x

por tanto x = 79 x 4 / 98 = 3,22

Está claro que mi distribución de puntos no era muy buena (lo he hecho con el paint en un momento) pero se aproxima bastante y no necesito conocer la fórmula del área de la circunferencia.

Un saludo y corregidme si digo muchas chorradas…
😉

CarlaCarla

Quisiera saber como se obtuvo el valor de las gotitas que cayeron en el circulo o es solamente un numero al azar? Por ejemplo so quisiera aplicarlo con 4000 gotitas, seria un numero al azar y se dividiria entre los 4000?

elizaeliza

amigo cres que me puedas ayudar , a darme un buen ejemplo y facil de montecarlo es que tengo que exponerlo y la verdad no le entiendo gracias

DianaDiana

y cómo hago para que un programa (por ejemplo Raptor) cuente los puntitos que tiene dentro y fuera el círculo?

5 Trackbacks

Información Bitacoras.com…

Valora en Bitacoras.com: 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 ej……

Deja un comentario

Tu email nunca será mostrado o compartido. No olvides rellenar los campos obligatorios.

Obligatorio
Obligatorio

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>