Sei sulla pagina 1di 27

Comparación de diferentes Universidad Veracruzana

métodos para el cálculo de π

Comparación de
diferentes métodos
para el cálculo de π

ALAM RAMÍREZ RUIZ


ÁNGEL EMMANUEL PEÑAFLOR ZETINA
EDUARDO CISNEROS RUIZ
JESÚS ALFONSO SEGURA LANDA
UNIVERSIDAD VERACRUZANA
Programación Científica

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π

ÍNDICE

INTRODUCCIÓN ................................................................................................................ 3
MÉTODO DE ARQUÍMEDES PARA EL CÁLCULO DE PI ........................................ 4
MÉTODO PARA OBTENER PI ........................................................................................ 5
FUNDAMENTO DEL PROGRAMA Y RESULTADOS ................................................. 6
CÁLCULO DE PI POR MEDIO DE SERIES INFINITAS ............................................. 8
DEMOSTRACIÓN ............................................................................................................. 9
RESULTADOS EN PYTHON ......................................................................................... 10
MÉTODO PROBABILÍSTICO (EXPLICACIÓN) ........................................................ 13
NÚMEROS PSEUDOALEATORIOS .............................................................................. 13
AGUJA DE BUFFON ......................................................................................................... 14
ANTECEDENTES............................................................................................................ 14
RESULTADO EN PYTHON ........................................................................................... 18
CAPTURAS DE RESULTADOS .................................................................................... 19
CONFIABILIDAD DE RESULTADOS .......................................................................... 22
MÉTODO DE MONTECARLO ....................................................................................... 23
ANTECEDENTES .............................................................................................................. 23
EXPLICACIÓN ................................................................................................................ 23
RESULTADOS ................................................................................................................. 24
CONFIABILIDAD DE RESULTADOS .......................................................................... 25
CONCLUSIÓN.................................................................................................................... 26
BIBLIOGRAFÍA ................................................................................................................. 27

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π
INTRODUCCIÓN
El número Pi es un enigma por sí mismo. Lo usamos en prácticamente todo, y lo podemos
observar en todos los lugares de la naturaleza; el sol, la luna, los planetas, y prácticamente en
dónde se observe un círculo estará presente el número Pi.

Pi forma parte de un subconjunto de los números reales denominado como números irracionales.
Por definición, los números irracionales corresponden a aquellos números que poseen decimales
infinitos y aperiódicos, por lo que es imposible representarlos como el cociente de dos números
(saliendo así de la clasificación de números racionales, pero permaneciendo aún en la de los
números reales). A este conjunto pertenecen otros números relevantes en matemáticas como el
número áureo y el número de Euler, que, junto con Pi, aparecen en distintas ramas de las
matemáticas.

Ya desde la época de la antigua Grecia se intentó dar con el valor exacto de Pi, y con el pasar
de los años, se desarrollaron distintos métodos de todo tipo con el objetivo de hallar dicho
número, algunos más ingeniosos que otros. En este estudio sólo se hará mención de cuatro, y se
ejecutará un programa que realice el cálculo que proponen estos métodos, con el objetivo de
comparar, en un mismo equipo, el tiempo que le toma a la máquina obtener un cierto número
de cifras significativas de Pi usando los distintos métodos.

Debido a que se utilizarán ordenadores comunes, la limitación de cifras significativas estará


presente en todo momento, sin embargo, utilizaremos las suficientes para poder realizar una
comparación certera con datos reales. Además, reiniciaremos el programa en múltiples
ocasiones con el doble objetivo de, en primer lugar, observar la posible existencia de variación
en el rendimiento (y por consiguiente en el tiempo total) del equipo, y en segundo lugar, analizar
la variación existente en el resultado final de Pi que se obtendría con el uso de los métodos
probabilísticos.

Añadido a lo anterior, utilizaremos animaciones que nos ayuden a ejemplificar de manera visual
el concepto general de éstos métodos, para no dejarlo como un simple cálculo que realizará la
computadora, si no para buscar la interacción entre máquina y usuario. Una vez realizado lo
anterior, y con los datos obtenidos, compararemos y seleccionaremos el método que haya
arrojado más cifras significativas correctas de Pi en una cantidad menor de tiempo.

Pi es una constante matemática, originalmente fue definida como la relación que existe entre la
circunferencia de un círculo y su diámetro, actualmente existen definiciones más sofisticadas
del número Pi que no implican círculos y que son utilizadas para estudiar distintas propiedades
de los números.
π = Cd

Pi es un número con propiedades muy interesantes, en 1761 Johann Heinrich Lambert demostró
la irracionalidad de Pi, y en 1882 Ferdinand von Lindemann demostró que π es un número
trascendental.

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π
A lo largo de la historia, desde los antiguos egipcios hasta la actualidad se han desarrollado
métodos para calcular pi, de los más conocidos es la cuadratura del círculo, desarrollado por
Arquímedes en la antigua Grecia, el cálculo de Pi ha presentado un gran reto a lo largo de la
historia siendo que hasta 1874 solamente se habían logrado calcular 527 cifras de Pi, después
de esto se comenzó a calcular Pi utilizando computadoras, actualmente Alexander J. Yee y
Shigeru Kondo han logrado calcular 10 billones de cifras de Pi. Actualmente es muy sencillo
calcular miles de cifras de Pi utilizando una computadora común o incluso un celular.

MÉTODO DE ARQUÍMEDES PARA EL CÁLCULO DE PI

Este método fue desarrollado por Arquímedes de Siracusa


alrededor del siglo III antes de Cristo. Arquímedes fue un físico,
ingeniero, inventor, astrónomo y matemático griego, al cual se le
atribuyen muchas invenciones y aportes a las matemáticas y física.
Entre sus avances en física se encuentran sus fundamentos de
hidrostática, estática, y la explicación del principio de la palanca.
Además, es considerado uno de los matemáticos más importantes
de la antigüedad y de toda la historia en general. Calculó el área
bajo una parábola, desarrollo la curva que lleva su nombre, y se
aproximó a el valor real de Pi, tema que nos ocupa ahora.

Arquímedes desarrolló muchos de sus trabajos con el llamado


método exhaustivo, el cual tiene bastantes similitudes con el
cálculo moderno, y fue precisamente con éste, con el que dio una
aproximación número Pi.

Su idea consistía en dibujar polígonos regulares inscritos y


circunscritos a una misma circunferencia, de manera que el área de
ésta y su perímetro quedan acotadas por los valores del perímetro
y área de ambos polígonos. Al aumentar el número de lados de las
figuras, Arquímedes conseguía aproximarse con mayor exactitud
al número Pi, dando como resultado final un intervalo de números
donde debía estar Pi. Arquímedes concluyó, en parte limitado a
las técnicas de la época, que Pi debía estar entre 3.14 y 3.15, los
cuales con cifras consistentes con el valor real de Pi. Esto le
permitió desarrollar bastantes piezas de la maquinaria que inventó, pues muchas de éstas se
basaban en el funcionamiento de ruedas y rotaciones.

Actualmente la utilización del número Pi es incuestionable, usado tanto en física aplicada,


matemáticas, informática, y demás ramas del saber.

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π
MÉTODO PARA OBTENER PI

Arquímedes fue un adelantado a su época, indudablemente. Su método resulta bastante


ingenioso y preciso, aún hoy en nuestros días. El fundamento de este es el siguiente:
Inscribamos en una circunferencia polígonos regulares cuyos lados aumentan indefinidamente,
entonces Pi deberá ser igual a la razón del perímetro de las figuras entre el diámetro de la
circunferencia.

Para visualizar lo anterior, tomemos una circunferencia unitaria, es decir, de radio igual a 1
(Independientemente de la unidad que se utilice). Si a este círculo le inscribimos una figura
poligonal regular, por ejemplo, un cuadrado, notaremos que el valor de la medida del lado l del
cuadrado estará expresado como:

𝑙 = √12 + 12 = √2

Que, usando trigonometría, es equivalente a la siguiente


expresión:
𝑙 = 2𝑅(sin 45°)

Pues la mitad del lado del cuadrado es la componente


vertical del vector radial del círculo, el cual, debido a que
es una circunferencia unitaria, nos permite simplificar la
expresión anterior a la siguiente:
𝑙 = 2(sin 45°)

Y el perímetro de la figura es simplemente la expresión anterior multiplicada por cuatro (que


es el número de lados de la figura). Siguiendo el fundamento de Arquímedes, Pi debería estar
expresado como la razón del perímetro de la figura y el diámetro del círculo, es decir:
4[2(sin 45°) 8(sin 45°)
𝜋= = = 4(sin 45°) ≈ 2.8284
2 2

La expresión anterior dista bastante del valor real de Pi. Sin embargo, el método es eficaz
cuando aumentamos considerablemente el número de lados de la figura. Por ejemplo,
supongamos un polígono de n lados. Siguiendo el desarrollo anterior, obtendremos que la
medida del lado de este polígono debería estar expresada como:

360
𝑙 = 2 sin
2𝑛

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π
Y su perímetro como:

360
𝑃 = 𝑛[2 (sin )]
2𝑛

Dividiendo el perímetro entre el diámetro de la circunferencia:

360 1
𝑛 (2 sin )
2𝑛 2

La cual sería finalmente la expresión que define a Pi. Sin embargo, debemos notar que a medida
que n aumenta, la expresión se acerca más a el valor real de Pi, por lo que debemos realizar
una última modificación:
360
𝜋 = lim [𝑛 (sin )]
𝑛→∞ 2𝑛

Este método es capaz de acercarse a el valor real de Pi a medida que el número de lados en los
polígonos tienden al infinito.

FUNDAMENTO DEL PROGRAMA Y RESULTADOS

El programa que fue escrito para calcular pi usando el método de Arquímedes consta de dos
partes esenciales y diferenciables. En primer lugar, se realizó un pseudo código en Python que
en el cual se definieron las variables y la función que se necesitaba, con el objetivo de correr el
programa en múltiples ocasiones, y observar de forma preliminar los resultados obtenidos. A
continuación, se adjunta una captura que muestra el código escrito en el programa:

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π
Una vez escrito, decidimos correrlo y detenerlo en veinte ocasiones (entre cada una, el
programa era reiniciado) justo cuando se cumplieran diez minutos desde el inicio del programa.
Se obtuvo los siguientes datos:

Cifra de Pi Frecuencia Donde podemos observar que las cifras varían apenas
en el último decimal. La moda de los datos fue
3.141592653589791 1 3.141592653589793.

3.141592653589792 3 Posteriormente, añadimos los efectos visuales que se


querían mostrar, con el objetivo de que el programa
3.141592653589793 16 fuera un poco más didáctico y comprensible con el
usuario. Se usó una lista de vectores con el objetivo de
representar a las figuras inscritas de n lados dentro del círculo, con ayuda de la librería gráfica
de VPython; del mismo modo, se añadió una gráfica en la que se representaba el valor de Pi
como una constante, junto con el valor que el programa iba asignando, notando cómo este
último se acercaba al valor real de pi de manera asintótica.

Ahora ya con el añadido visual, el programa era considerablemente más lento, al punto de
calcular casi diez veces menos iteraciones por segundo, que su contraparte sin animación. Esto
puede verse ejemplificado con el error de memoria que arrojó el equipo justo cuando el número
de lados de la figura llegaba a 2800, después de 390 segundos de iniciado el programa. Debido
a esto, la parte estadística de los resultados, y por ende, la comparación final decidimos
realizarla únicamente con el fragmento del programa que calcula el valor de Pi, sin
animaciones, dejando a éstas únicamente como una representación visual de lo que ocurría en
un contexto general.

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π
Los datos gráficos fueron los siguientes. Se ejecutó el programa hasta el máximo de tiempo que
la memoria permitiera en dos ocasiones.

Donde en amarillo se puede observar el valor que el programa arroja de Pi, acercándose
asintóticamente al valor real de Pi, conforme el numero n de lados del polígono inscrito
aumenta, mismo que puede verse en la animación aledaña.

En conclusión, el programa era considerablmenete más lento con los añadidos visuales, aunque
si eliminabamos éstos, el equipo era muchisimo más capaz de realizar más cálculos por unidad
de tiempo. El valor aprócimado de Pi tras 600 segundos fue de 3.141592653589793

CÁLCULO DE PI POR MEDIO DE SERIES INFINITAS


Para realizar una aproximación por medio de series necesitamos utilizar una serie que tenga
convergencia a alguna proporción de π, para esto utilizaremos el problema de Basilea.
Antecedentes históricos:
El problema de Basilea (ciudad natal de Leonard Euler) originalmente fue publicado
originalmente por Pietro Mengoli en 1644, el problema era encontrar si la serie


1 1 1 1
∑ 2
= 2 + 2 + 2 +. ..
𝑛 1 2 3
𝑛=1
Tiene convergencia a algún valor y si lo hacía, a qué valor converge.

En 1689 Jakob Bernoulli logró demostrar que la suma es convergente pero no logró determinar
a qué valor convergía. No fue sino hasta 1734 cuando Leonard Euler logró demostrar que la
suma era convergente a π2/6.

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π
Este problema ha sido demostrado en diversas áreas de las matemáticas como lo son el cálculo,
el análisis complejo, la teoría de los espacios de Hilbert o la probabilidad.

El resultado y la manera de demostrar este tipo de convergencias han tenido una gran
importancia, el resultado de la suma ha sido generalizado en la función Zeta de Riemann. ∞
Se ha probado que esta función es convergente que para cualquier valor de s con una parte real
mayor a 1. Actualmente esta función es muy estudiada en a teoría de números y en el análisis
complejo en donde se busca encontrar diversas propiedades de los números como el orden de
los números primos.

1
𝜁(𝑠) = ∑
2𝑠
1

DEMOSTRACIÓN

Para esta demostración primero consideraremos la función seno en su forma de series de


Taylor.
𝑥3 𝑥5 𝑥7
𝑠𝑖𝑛(𝑥) = 𝑥 − + − +. ..
3! 5! 7!
Después, tenemos que sin(x) = 0 ⇔ x = nπ, n ∈ Z, después, el polinomio lo podemos factorizar
como

𝑥3 𝑥5 𝑥7
𝑠𝑖𝑛(𝑥) = 𝑥 − + − +. . . = 𝐶𝑥(𝑥 − 𝜋)(𝑥 + 𝜋)(𝑥 − 𝜋 2 )(𝑥 + 𝜋 2 ). ..
3! 5! 7!
donde Cx es una constante. Podemos notar que los productos son diferencias de cuadrados, por
lo tanto, tenemos que
𝑥3 𝑥5 𝑥7
𝑠𝑖𝑛(𝑥) = 𝑥 − + − +. . . = 𝐶𝑥(𝑥 2 − 𝜋 2 )(𝑥 2 − 4𝜋 2 )(𝑥 2 − 9𝜋 2 ). ..
3! 5! 7!

Dividiendo todo entre x tenemos que


𝑥2 𝑥4 𝑥6
1 − + − +. . . = 𝐶(𝑥 2 − 𝜋 2 )(𝑥 2 − 4𝜋 2 )(𝑥 2 − 9𝜋 2 ). ..
3! 5! 7!
Haciendo a x = 0 ahora
1 = 𝐶(−𝜋 2 )(−4𝜋 2 )(−9𝜋 2 ). ..
Ahora podemos dividir el polinomio entre 1
𝑥2 𝑥4 𝑥6 𝐶 (𝑥 2 − 𝜋 2 ) (𝑥 2 − 4𝜋 2 ) (𝑥 2 − 9𝜋 2 )
1 − + − +. . . = . ..
3! 5! 7! 𝐶 (−𝜋 2 ) (−4𝜋 2 ) −9𝜋 2

Esto es igual a
𝑥2 𝑥4 𝑥6 𝑥2 𝑥2 𝑥2
1− + − +. . . = (1 − )(1 − )(1 − ). ..
3! 5! 7! −𝜋 2 −4𝜋 2 −9𝜋 2
Dado que tenemos una igualdad entre polinomios, los coeficientes tienen que ser los mismos,
por lo tanto, podemos comparar los coeficientes de 𝑥 2

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π
𝑥2 𝑥2 𝑥2 𝑥2
− = (− )(− )(− )−. ..
3! −𝜋 2 −4𝜋 2 −9𝜋 2
Eliminando las 𝑥 tenemos
1 1 1 1
− =− 2
− 2
− −. ..
3! −𝜋 −4𝜋 −9𝜋 2
Finalmente, multiplicando por −𝜋 2 tenemos que
𝜋2 1 1 1
= 1 + + + +. ..
6 4 9 16
Qué es lo mismo que:

1
𝜁(2) = ∑
𝑛2
1

RESULTADOS EN PYTHON

El programa inicia sin un valor para pi, este


se va obteniendo a partir de la suma de otros
valores, el programa calcula el inverso del
cuadrado de un número, después guarda ese
valor en la variable b, el primer número
aumentan en uno y se calcula en inverso del
cuadrado de este nuevo número, después el
valor se suma al valor de la variable b.
Para poder conocer el tiempo transcurrido se
define el tiempo de inicio del programa y un
nuevo tiempo cada vez que se ejecuta la
función while, el tiempo transcurrido es igual
a la diferencia del tiempo tomado – el tiempo
inicial; estos datos se guardan en una lista.

La lista contiene el valor aproximado de pi, el número de iteración del programa y el tiempo
transcurrido desde el inicio del mismo.

El programa fue corrido varias veces por 10 minutos tomando en cuenta que el programa puede
tener pequeñas variaciones entre una ejecución y otra.

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π
MÉTODO PROBABILÍSTICO (EXPLICACIÓN)

El muestreo probabilístico es una técnica de muestreo en virtud de la cual las muestras son
recogidas en un proceso que brinda a todos los individuos de la población las mismas
oportunidades de ser seleccionados.

En esta técnica de muestreo, el investigador debe garantizar que cada individuo tenga las
mismas oportunidades de ser seleccionado y esto se puede lograr si el investigador utiliza la
aleatorización.

La ventaja de utilizar una muestra aleatoria es la ausencia de sesgos de muestreo y sistemáticos.


Si la selección aleatoria se hace correctamente, la muestra será representativa de toda la
población.

El efecto de esto es un sesgo sistemático ausente o mínimo que es la diferencia entre los
resultados de la muestra y los resultados de la población. El sesgo de muestreo también se
elimina ya que los sujetos son elegidos al azar.

NÚMEROS PSEUDOALEATORIOS

Los números pseudoaleatorios son números generados por medio de una función (determinista,
no aleatoria) y que aparentan ser aleatorios. Estos se generan a partir de un valor inicial
aplicando iterativamente la función. La sucesión de números pseudoaleatorios es sometida a
diversas pruebas para medir hasta qué punto se asemeja a una sucesión aleatoria.
Fundamentalmente se recurren a estos números porque las sucesiones de números
pseudoaleatorios son más rápidas de generar que las de números aleatorios. Si las personas
tenemos dificultad en generar números aleatorios, mucho más la tiene un ordenador, la
dificultad está en que un ordenador es tan "torpe" que no sabe generarlos. Por eso usan números
pseudoaleatorios, que para nuestro fin es lo mismo, pues nadie los puede predecir.

Los ordenadores necesitan números aleatorios para realizar todo tipo de tareas: simulaciones,
juegos, criptografía, entre otros. Pero la forma de generarlos es puramente matemática, lo cual
es un problema más que una ventaja: al cabo de un tiempo lo que parece aleatorio no es tan
aleatorio. Se puede utilizar una combinación con procesos físicos más o menos aleatorios
(desde los movimientos del ratón sobre la mesa a la radioactividad), pero en base a matemáticas
puras lo mejor que se puede ofrecer son números pseudoaleatorios. Son algo bastante cercano
al puro azar, pero en cierto modo también limitados en cuanto a su aleatoriedad.

El número que se utiliza como entrada de la función se llama semilla y el proceso es básicamente
repetitivo. Si la función es buena el resultado producirá un valor que al usar de nuevo como
semilla dará otro distinto, luego otro y así sucesivamente hasta que se hayan cubierto tantos
como sea posible (no necesariamente todos). Es lo que se conoce como generador lineal
congruente y cuanto más grande sea su periodo y la distribución de los bits que se eligen como
resultado, mejor.

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π
AGUJA DE BUFFON

ANTECEDENTES

El origen de las leyes de la teoría de la probabilidad se remonta a mucho tiempo atrás, y si bien
en la actualidad éstas son científicamente aceptadas, hasta hace sólo cincuenta años eran
invocadas casi que de manera apologética. La probabilidad empieza a involucrarse en el terreno
de las matemáticas desde el siglo XVI, gracias a la coincidencia de diversos factores de tipo
social y económico que motivaron un incremento considerable en los juegos de oportunidad y
actividades de apuestas, principalmente en el área del Mediterráneo. El arranque definitivo en
general se sitúa con el trabajo conjunto de Blas PascaI y Pierre de Fermat a mediados del Siglo
XVII, posteriormente al cual diversas personalidades como los hermanos Bernoulli, De
Moivre, Euler, D'Alembert, Laplace, Condorcet, Gauss, entre muchos otros, inscribieron su
nombre en el desarrollo de la moderna teoría de probabilidad.

Contemporánea con algunos de los personajes mencionados, está la figura del francés George
Luis Leclerc, posteriormente conocido como Conde de Buffon. Ignorado por muchos autores
en textos de probabilidad, tal vez por su multidisciplinariedad (es ampliamente reconocido por
su brillante trabajo de naturalista, además de otras no menos destacadas incursiones en terrenos
de la astronomía y la filosofía), Buffon hizo algunas contribuciones en términos de
planteamiento y solución de diversos juegos de azar, uno de los cuales, el célebre problema de
las agujas, sirvió para ilustrar su teoría de la estricta relación entre la probabilidad y la
geometría, y para que posteriormente Laplace diera la primera luz sobre el actualmente llamado
Método de Montecarlo de amplia utilización en aplicaciones que van desde la economía hasta
la física nuclear.

En el año 1733 Buffon comunicó a la Academia de Ciencias en París las soluciones de algunos
problemas relacionados con diversos juegos de azar. Estas fueron posteriormente publicadas
en 1777 en su "Essai d"Arithmétique Morale", en cuya sección 23, "Memoire sur le jeu de franc
carreau", se encuentra el famoso problema de la aguja.

Al inicio de la mencionada sección, Buffon se refiere a que hasta el momento en que él escribe
su trabajo, la aritmética ha sido el único instrumento utilizado para la estimación de
probabilidades, y se propone mostrar a través de una serie de ejemplos cómo se hace también
necesaria la ayuda de la geometría en el estudio y análisis de la ciencia del azar. En efecto,
inicialmente él supone una gran área plana dividida en figuras
regulares iguales, tales como cuadrados, triángulos equiláteros o
hexágonos; entonces se arroja una moneda redonda al azar y se
requiere estimar la probabilidad de que ella caiga sin tocar
ninguna de las líneas límite de la figura, o caiga en una de ellas,
o tocando dos de ellas y así sucesivamente. En seguida Buffon
menciona que, si la moneda es reemplazada por una pieza no
redonda, la solución requerirá de más geometría y es aquí donde
aparece el problema de las agujas. (Figura 1)

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π
A continuación, se presentará el planteamiento y solución original del problema, tal como fue
establecido por Buffon. Si bien es evidente hay complicaciones para interpretar el texto, debido
probablemente al estilo de redacción de la época y a la confusa nomenclatura utilizada, la cita
resulta apropiada e interesante porque permite ilustrar sobre la técnica particular de análisis del
autor, diferente de la actual. El texto, respetando en su totalidad las abreviaturas y la simbología
original, es el siguiente:

"Supongo que, en un cuarto, en el cual el piso está simplemente dividido por unas líneas rectas
paralelas, uno lanza al aire una varilla y que uno de los jugadores apuesta a que la varilla no
cruzará ninguna de las paralelas del piso y que el otro por el contrario apuesta que la varilla
si cruzará alguna de estas paralelas; se pregunta la suerte de estos dos jugadores. Uno puede
jugar este juego sobre un tablero con una aguja de coser o un alfiler sin cabeza.

Para hallar la respuesta, yo trazo primeramente


entre las dos paralelas AB y CD del piso, otras dos
líneas paralelas ab y cd (figura 2), separadas de
las primeras en la mitad de la longitud de la varilla
EF y veo evidentemente que en tanto el medio de
la varilla esté entre estas dos segundas paralelas,
jamás ella podrá cruzar las primeras en cualquier
situación EF, ef, en que ella pueda encontrarse. Y
como todas aquellas que pueden localizarse por
encima de ab lo hacen igualmente por debajo de cd, no es necesario determinar entre una u
otra: para aquello noto que todas las situaciones de la varilla pueden ser representadas por
el cuarto de la circunferencia del círculo cuyo diámetro es la longitud de la varilla: llamando
pues 2a la distancia CA entre las líneas del piso, C el cuarto de la circunferencia del círculo
para el cual la longitud de la varilla es el diámetro; llamando 2b a la longitud de la varilla y
̅̅̅̅)C para la expresión que representa la probabilidad
f a la longitud de las líneas, yo tendré f(a-b
de no cruzar la línea del piso, o lo que es la misma cosa, para la expresión de todos los casos
en los cuales el centro de la varilla cae por debajo de la línea ab y por encima de la línea cd.

Pero cuando el centro de la varilla cae fuera del espacio abdc, comprendido entre las segundas
paralelas, ella puede, según su situación, cruzar o no cruzar la línea; de suerte que el centro
de la varilla estando, por ejemplo, en ε, el arco φG representará todas las situaciones en donde
ella cruzará la línea, y el arco GH todas aquellas en donde no lo hará, y como así mismo se
tendrá para todos los puntos de la línea εφ, yo llamo dx a las pequeñas partes de esta línea y
y a los arcos del círculo φG, tengo f(sydx) para la expresión de todos los casos en los cuales
̅̅̅̅̅̅̅̅̅̅) para aquellos casos en los cuales no cruzará; yo añado esta
la varilla cruzará y f(bc-sydx
última expresión a aquella hallada aquí arriba f(a-b̅̅̅̅)C, a fin de tener la totalidad de los casos
en los cuales la varilla no cruzará, y desde entonces veo que la suerte del primer jugador es a
la del segundo, como ac-sydx: sydx.

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π
Si uno quiere ver que el juego sea parejo, éste se tendrá si:

sydx
aC=2sydx o a=(1/2)C

es decir con el área de una parte del cicloide cuyo círculo generador tenga por diámetro 2b,
la longitud de la varilla; ahora bien, uno sabe que esta área del cicloide es igual al cuadrado
del radio, luego:

𝒃𝒃
a=(1/2)C

es decir que la longitud de la varilla debe ser un poco más de tres cuartos de la distancia entre
las líneas del piso".

La conclusión de Buffon en términos actuales indica que para que la probabilidad de que la
varilla (o aguja) se intercepte con una de las líneas sea exactamente de 1/2, o en otras palabras
para que ambos apostadores tengan igual oportunidad, el juego debe diseñarse de tal manera
que la distancia entre las líneas dibujadas sea 4/π veces mayor que la longitud del elemento de
lanzamiento. Dado que π no presenta un valor exacto, por sus características particulares de
número irracional y trascendental, la probabilidad de 1/2 no puede conseguirse de manera
absoluta.

Si bien el procedimiento de análisis de Buffon resulta confuso, su solución es correcta y resulta


en esencia la única que pudo lograr. El intentó posteriormente continuar su análisis para una
situación que según sus propias palabras parecía más difícil; adicionó al plano previamente
rayado otro juego de líneas paralelas equidistantes, perpendiculares a las primeras y separadas
por la misma distancia. Buffon intentó nuevamente determinar la probabilidad de intersección
de la varilla o aguja con una o varias de las líneas, pero el resultado que reportó es incorrecto.

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π
DEMOSTRACIÓN DEL MÉTODO

Haciendo un análisis general del problema. La probabilidad de intersección de la aguja con una
de las líneas paralelas puede ser determinada de manera más sencilla e inmediata que la
sugerida por Buffon, al considerar la herramienta del cálculo analítico.

Modificando por simplicidad la nomenclatura de Buffon, se designan como L y D la longitud


de la aguja y la distancia entre paralelas respectivamente.

Si se desea averiguar si la aguja toca una de las paralelas, es preciso "localizarla" en el plano,
en términos de fijar en él su posición. Se designa entonces a Y como la distancia entre el punto
medio de la aguja y la paralela más próxima, y θ como el ángulo agudo formado entre la aguja,
o su prolongación dicha paralela. Estos nuevos parámetros están obviamente acotados así:

0 ≤ 𝑌 ≤ 𝐷/2 0 ≤ θ ≤ 𝛑

Una vez determinados Y, θ, la aguja queda


perfectamente posicionada en el plano (figura 3).

El rectángulo, con los lados de longitud π y D/2,


representa el conjunto de las coordenadas de los
puntos correspondientes a todas las posiciones
posibles de la aguja. Así mismo, es evidente que
una condición necesaria y suficiente para que se
produzca la intersección entre la aguja y una
paralela es que:

𝐿
𝑌 < sin 𝜃
2

Es decir, si el punto P (Y, S) se sitúa en la zona


sombreada de la figura 4.

De esta manera, la probabilidad requerida está dada


por el cociente del área sombreada al área del
rectángulo.

𝜋𝐿
∫0 2 sin 𝜃 𝑑𝜃 2𝐿
𝑝= =
𝐷 𝜋𝐷
( 2 ) (𝜋)

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π
RESULTADO EN PYTHON

Antes de comenzar, aquí también se explicará todo el procedimiento que se sigue en el


programa de Python, explicando su código, las operaciones que realiza y las opciones que se
tienen en el programa tales como hacer una lista o una gráfica de qué tanto se está acercando
al valor de π junto con los limitantes de tomar estas opciones.

A continuación, se pondrá una captura del código del programa y se explicará cómo es que
funciona:

El programa tiene tres modalidades, las cuales se intercambian editando el código a fin de que
no haga unas acciones, pero siga haciendo otras. La primera modalidad es la de valor, la cual
no imprime ningún valor dentro del proceso excepto el valor estimado final, la segunda
modalidad es lista la cual registra el valor estimado dentro de cada iteración y la tercera
modalidad es la gráfica la cual ejecuta otra ventana con un plano cartesiano trazando dos
curvas, una que es la constante π y otra que registra los valores estimados de todo el proceso.

Ahora, con mero fin ilustrativo, se adjuntarán una tabla con los límites del programa, cuanto
tarda en correr el programa y el intervalo de error junto con capturas de los resultados de los
programas en las tres modalidades.

Modalidad del Número límite de Tiempo promedio


Intervalo de error medio
programa intentos transcurrido

Valor 1000000000 tiros 750 seg. (12.5 min.) 𝝅 ± .00009

Lista 1000000 tiros 3300 seg. (55 min.) 𝝅 ± .009

Gráfica 4095 tiros 180 seg. (3 min.) 𝝅 ± .09

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π
CAPTURAS DE RESULTADOS

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π
CONFIABILIDAD DE RESULTADOS

Para poder establecer una confiabilidad en los resultados se


tiene que sacar un valor medio para nuestro valor calculado
y para ello se corrió el programa en su modo valor 20 veces
para así establecer una media arimetica y una desviación
estándar.

Con estos datos presentes se realizó el proceso necesario


para poder realizar una campana de Gauss para hacer mas
ilustrativa la tendencia del valor brindado por el programa
con π.

Ciertamente este método al ser probabilístico y no


determinista realmente no puede dar un valor exacto de π,
al menos con los datos obtenidos en este experimento, las
limitaciones de equipo son notorias (sobre todo en el
método gráfico). Sin embargo, la tendencia de este evento
hacia el número π sigue siendo un evento bastante
interesante y que sin duda con un numero de agujas
teniendo a infinito se puede ir acercando cada vez mas al
valor verdadero de π sin embargo no es un método muy
fiable para la computadora dado que otros presentados en
el reporte presente tienen aproximaciones más exactas y de
tipo determinista.

x̅ -3σ x̅ -2σ x̅ -σ x̅ x̅ +σ x̅ +2σ x̅ +3σ

3.14104532 3.14124924 3.14145317 3.14165709 3.14186101 3.14206493 3.14226886

Aguja de Buffon
100.000%
90.000%
80.000%
70.000%
60.000%
50.000%
40.000%
30.000%
20.000%
10.000%
0.000%
3.1408 3.141 3.1412 3.1414 3.1416 3.1418 3.142 3.1422 3.1424

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π
MÉTODO DE MONTECARLO

ANTECEDENTES

“Enrico Fermi, en los años 30, realizaba una investigación sobre neutrones y sus noches de
insomnio las dedicaba a intentar predecir el resultado de los próximos experimentos para
sorprender a sus colegas. Para ello utilizaba dos herramientas: muestreo estadístico y un
pequeño dispositivo mecánico para realizar sumas. En esa época, el muestreo estadístico era
una técnica poco usada por el incordio que suponía la multitud de cálculos a realizar, pero
Enrico tenía poco sueño y mucha curiosidad. No sabía que estaba usando lo que en un futuro
se denominaría un método Monte Carlo.”

El método se llamó así en referencia al Casino de Montecarlo (Mónaco) por ser “la capital del
juego de azar”, al ser la ruleta un generador simple de números aleatorios. El nombre y el
desarrollo sistemático de los métodos de Montecarlo datan aproximadamente de 1944 y se
mejoraron enormemente con el desarrollo de la computadora.
EXPLICACIÓN

Imaginemos que tenemos una circunferencia inscrita en un


cuadrado y tenemos una forma de marcar puntos en el
cuadrado aleatoriamente. Unos puntos quedarán fuera del
círculo y otros quedarán dentro. Pues bien, si generamos el
número suficiente de puntos, podremos calcular el número π
de la siguiente forma:

Suponemos que el cuadrado tiene un lado de tamaño 2r y


por tanto la circunferencia inscrita tiene un radio r. El área
del cuadrado será

𝐴𝑐𝑢𝑎𝑑𝑟𝑎𝑑𝑜 = (2𝑟)2 = 4𝑟 2

y el área del círculo será

𝐴𝑐𝑖𝑟𝑐𝑢𝑙𝑜 = 𝜋𝑟 2

Si dividimos el área del círculo por el área del cuadrado tendremos:

𝐴𝑐𝑖𝑟𝑐𝑢𝑙𝑜 𝜋𝑟 2 𝜋
= 2=
𝐴𝑐𝑢𝑎𝑑𝑟𝑎𝑑𝑜 4𝑟 4

Si realizamos la división del número total de puntos que tenemos dentro del círculo respecto al
número total de puntos que se han señalado en toda la área del cuadrado, tendremos una
aproximación del valor de π

𝑝𝑢𝑛𝑡𝑜𝑠 𝑑𝑒𝑙 𝑐𝑖𝑟𝑐𝑢𝑙𝑜 𝜋



𝑝𝑢𝑛𝑡𝑜𝑠 𝑡𝑜𝑡𝑎𝑙𝑒𝑠 4

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π
Para el programa que programamos, se usaron números aleatorios en un rango de 0 a 1, en
coordenadas x y y, y para saber si están dentro de la sección del círculo, usamos la distancia al
origen, calculada con ayuda del teorema de Pitágoras.

Esto, nos da una cuarta parte del círculo antes mencionado, pero el resultado es análogo, ya
que también se trata de una cuarta parte del cuadrado
RESULTADOS

Primero, importamos la librería visual, para generar la parte visual en VPython, además random
de la librería random, para generar números aleatorios en un rango de cero a uno, de la librería
math, la raíz cuadrada, que usaremos más adelante y time para que calcule el tiempo que se
tarda.

Definimos un par de variables iguales a cero, una para el número total de tiros y otra para los
que caen dentro del círculo.

Definimos que el contador inicie a la hora actual de la computadora y empezamos el contador

Ahora, ponemos un while hasta que el número de tiros sea el de iteraciones que queremos.

Definimos las coordenadas "x" y "y" a través de random, para generar un punto aleatorio y
una variable más, para la distancia del punto con el centro del gráfico, al ya tener las
coordenadas, podemos usar para esto el teorema de Pitágoras.

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π
Agregamos un if; si la distancia del punto es menor o igual a uno, el punto está dentro del
círculo, por lo que aumentamos en uno el contador de los puntos dentro del círculo y hacemos
que aparezca una esfera de radio 0.01 y color azul en esa posición; en caso contrario, hacemos
que la esfera sea blanca.

Al final del while, aumentamos el contador de los tiros totales en uno.

Para terminar, paramos el contador del tiempo, definimos que el valor de pi sea igual a los
puntos dentro del círculo entre los totales y esto por cuatro, como ya se explicó, imprimimos
pi y el tiempo transcurrido.
CONFIABILIDAD DE RESULTADOS

La confiabilidad, es la consistencia en los resultados obtenidos, esto


es, que los resultados converjan a cierto valor, en este caso a π.

Éste método nos da resultados basados en números aleatorios, por


lo cual, cada vez que se corre el programa, nos dará un resultado
ligeramente diferente, sin embargo, se puede obtener un resultado
más o menos confiable, dependiendo del número de iteraciones
usadas cada vez, volviéndose más exacto mientras más iteraciones
usemos.

Para este proyecto, nos propusimos que se acercara nuestro


resultado a 4 dígitos de π, lo cual, se logró en alrededor de mil
millones de iteraciones, y casi 30 minutos.

Paralelamente, se corrió el programa 20 veces, con 10000


iteraciones cada vez (los resultados se muestran en la taba lateral),
de esto, se sacó un promedio y una gráfica de distribución de
resultados, acercándonos bastante al valor exacto de pi.

120.000%
Método de Montecarlo
100.000%

80.000%

60.000%

40.000%

20.000%

0.000%
3.1413 3.1414 3.1415 3.1416 3.1417 3.1418 3.1419

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π
Para la parte gráfica de los programas, estos mismos fueron modificados para ajustarse a las
limitaciones de memoria RAM del equipo donde fueron ejecutados, además de que, la parte
visual no refleja el desempeño que se esperaba calcular.

CONCLUSIÓN
Con este trabajo se logró determinar que de los métodos utilizados, el método de exhaución de
Pitágoras fue el más rápido de todos, siendo que en un tiempo de 10 minutos se logran obtener
en promedio 15 cifras correctas de pi cuando en la mayor parte de las ocasiones, los demás
programas lograban calcular, en promedio 5 cifras correctas de pi.

Aunque ambos métodos probabilísticos dan resultados similares, es destacable mencionar que
el Método de Montecarlo logra aproximarse a pi en un mayor número de ocasiones, siendo que
la desviación estándar es menor que en el método de la aguja de Buffon.

En la siguiente tabla se presenta el número de veces que se obtuvo el mayor número de cifras
correctas. Todos los programas fueron ejecutados en la misma computadora, por 10 minutos
en 20 ocasiones.

Método Número de cifras correctas Frecuencia


Método de Exhaución 15 16
Método por Series Infinitas 5 15
Método de la Aguja de Buffon 5 10
Método de Montecarlo 5 6

Además de esto, se puede observar con los métodos deterministas que inicialmente se creía no
tendrían variación, son afectados por factores externos que afectan el rendimiento de los
programas, siendo que varían, aunque por pocos decimales los valores que se calculan no son
iguales.

Programación Científica
Comparación de diferentes Universidad Veracruzana
métodos para el cálculo de π
BIBLIOGRAFÍA

ACHERMAN, S.; “El Problema de las Agujas de Buffon. Historia de un caso de estudio en
teoría de probabilidad”, Universidad del Valle, Colombia. (2004)

SANCHEZ, W. y CONDE, G.; "Trabajo de investigación de operaciones sobre el problema de


Buffon", Universidad del Valle. (1990)

GRIDGEMAN, N. T.; "Geometric probability and the number π”, Scripta Math. (1960).

THUMM, W.; "Buffon's needle: stochastic determinations of π”, Math. Teacher. (1965).

http://mathworld.wolfram.com/Pi.html.

https://en.wikipedia.org/wiki/Pi.

https://www.angio.net/pi/whypi.html

http://math.cmu.edu/~bwsulliv/basel-problem.pdf

http://lucaszanella.com/en/articles/math/basel

https://www.youtube.com/watch?v=yPl64xi_ZZA

https://en.wikipedia.org/wiki/Riemann_zeta_function

https://es.wikipedia.org/wiki/M%C3%A9todo_de_Montecarlo

https://cuantozombi.com/2012/11/17/monte-carlo/

http://www.estadisticaparatodos.es/taller/buffon/buffon.html.

http://www.math.leidenuniv.nl/~hfinkeln/seminarium/stelling_van_Buffon.pdf.

http://www.estadisticaparatodos.es/taller/aleatorios/aleatorios.html#4.

https://explorable.com/es/muestreo-probabilistico.

Programación Científica

Potrebbero piacerti anche