Hoy, día 14 de marzo, es el día de Pi (por la forma de expresar las fechas en Estados Unidos: 3-14), y vamos a celebrarlo presentando uno de los algoritmos más útiles de la actualidad para calcular decimales de Pi: el algoritmo de Chudnovsky.
A lo largo de la historia han sido muchas las formas utilizadas por el ser humano para calcular aproximaciones cada vez más exactas de este número Pi, cociente entre la longitud de una circunferencia cualquiera y el diámetro de la misma: se han usado las áreas de polígonos inscritos y circunscritos a una circunferencia, se han encontrado interesantes aproximaciones numéricas con algunas fracciones sencillas, se han desarrollado series infinitas y productos infinitos de todas las formas que uno pueda imaginar…Vamos, de todo. Pero de entre todos estos métodos hay varios que destacan sobre el resto, y uno de los que más lo hacen es el denominado algoritmo de Chudnovsky.
El algoritmo de Chudnovsky es un algoritmo creado por David Volfovich Chudnovsky y Gregory Volfovich Chudnovsky, hermanos y matemáticos ucranianos nacionalizados estadounidenses, mediante el cual podemos obtener muy buenas aproximaciones del número Pi. Se basa en la siguiente expresión relacionada con el número Pi que encontró Ramanujan:
La expresión del algoritmo de Chudnovsky es la siguiente:
y con ella obtenemos 14 decimales exactos más de Pi con cada término de la misma. ¿Qué significa esto? Muy sencillo. Vamos a partir del valor de Pi hasta su decimal número 50:
Si calculamos el primer término de esa suma, el correspondiente a k=0, la aproximación de Pi obtenida será 1 dividido entre ese resultado, que nos da lo siguiente:
En negrita resalto la parte de ese resultado que coincide con el valor de Pi. Calculemos ahora los dos primeros términos. La aproximación de Pi ahora será 1 dividido entre la suma de los mismos. Obtenemos esto:
Como veis, los decimales que ya eran exactos con el primer término se mantienen con este segundo término, y añadimos 14 más (son los resaltados en negrita). Por hacer otro más, veamos que la tendencia continúa con el término siguiente. Al calcular 1 dividido entre la suma de los tres primeros términos obtenemos la siguiente aproximación de Pi:
Los anteriores se mantienen y se añaden 14 nuevos decimales exactos. Y así sucesivamente.
Es una barbaridad obtener 14 decimales exactos más con cada término, ya que con muy poquitos términos obtenemos una aproximación escandalosamente cercana al valor real. Por eso este algoritmo es tan bueno, y por eso ha servido para obtener varios récords mundiales de cálculo de decimales del número Pi (por ejemplo, para éste de 5 billones de agosto de 2010 y para éste de 10 billones de octubre de 2011). Por eso es uno de los más utilizados en la actualidad para el cálculo de buenas (más bien buenísimas) aproximaciones de esta constante que tanto nos gusta.
Por cierto, para obtener los resultados que aparecen en esta entrada he utilizado Mathematica de la siguiente forma:
- Definimos mediante una función el término general de la serie:
a[k_]:=(12 (-1)^k (6 k)! (13591409+545140134 k))/((3 k)! (k!)^3 640320^(3 k+3/2))
- Ahora, para calcular cada término utilizo el comando
Sum
. Por ejemplo, para calcular el primero usoSum[a[k],{k,0,0}]
pero como lo que quiero es calcular la aproximación de Pi que corresponde con este término hago lo siguiente (como quería 50 decimales le pongo un 51, 51 cifras significativas):
N[1/Sum[a[k],{k,0,0}],51]
- Para ampliar el número de términos simplemente cambiamos el segundo cero de
{k,0,0}
. Por ejemplo, para calcular la aproximación con los dos primeros términosN[1/Sum[a[k],{k,0,1}],51]
y para los tres primeros
N[1/Sum[a[k],{k,0,2}],51]
Si se os ocurre alguna otra manera de realizar estos cálculos con Mathematica os agradecería que nos lo comentarais.
Por cierto, una última curiosidad. Con
N[Pi,51]
Mathematica nos muestra una aproximación del número Pi con 50 decimales. Evidentemente, podemos aumentar el número de decimales para conseguir aproximaciones cada vez más exactas. ¿A que no sabéis que algoritmo utiliza el propio Mathematica para obtener dichas aproximaciones? Efectivamente, el algoritmo de Chudnovsky.
Imagen tomada de aquí, donde podéis encontrar mucha información sobre el cálculo del número Pi.
¿Te ha gustado la entrada? Puedes invitarme a un café, Gauss te lo agradecerá 😉
«¿A que no sabéis que algoritmo utiliza el propio Mathematica para obtener dichas aproximaciones? Efectivamente, el algoritmo de Chudnovsky»
Entonces… ¿en la entrada estás comparando el algoritmo de Chudnovsky contra el algoritmo de Chudnovsky? ¿Y coinciden??
Bromas aparte, es curioso que en la suma de la serie los decimales anteriores se mantengan invariados
No es curioso. Si la serie es convergente los primeros decimales de cada término son ceros por eso dejan idéntica la sumatoria en cada término.
Información Bitacoras.com…
Valora en Bitacoras.com: Hoy, día 14 de marzo, es el día de Pi (por la forma de expresar las fechas en Estados Unidos: 3-14), y vamos a celebrarlo presentando uno de los algoritmos más útiles de la actualidad para calcular decimales de Pi: el alg……
y NO se puede mejorar ?? es decir mejorar los estimados de CHUDNOSKY o RAMANUJAN usando otras tecnicas de manera que puedas encontrar series y series y series sobre
que ocnvergan cada vez mas rapido ?? 😀
[…] Hoy, día 14 de marzo, es el día de Pi (por la forma de expresar las fechas en Estados Unidos: 3-14), y vamos a celebrarlo presentando uno de los algoritmos más útiles de la actualidad para calcular decimales de Pi: el algoritmo de Chudnovsky. […]
[…] El algoritmo de Chudnovsky, o cómo se calculan los decimales de Pi en el siglo XXI […]
Jose javier:
La fórmula de este post es un caso particular de las llamadas series de tipo Ramanujan. Estoy desde un móvil y es un engorro escribir LaTeX aquí, pero solo comento que estas series dependen de un parámetro, y los propios hermanos Chudnovsky probaron que cuando el valor del parámetro es «t = -e^(-pi*sqrt(163))» se obtiene la velocidad de convergencia más rápida, y produce la serie de más arriba.
Por lo que si se quieren buscar mejores series habrá que ir por otro camino 😉
Y si usamos el número Tau (=6,28…) en vez de Pi, ¿el algoritmo de Chudnovsky no se hace más elegante? Pues, si no me equivoco, en vez del 12 veríamos un 6. ¿Qué significan los términos «elegancia» y «belleza» para los matemáticos?
[…] puede interesarte leer El algoritmo de Chudnovsky, o cómo se calculan los decimales de Pi en el siglo XXI, en Gaussianos, para entender mejor que este número no es […]
[…] respecto, puede interesarte leer El algoritmo de Chudnovsky, o cómo se calculan los decimales de Pi en el siglo XXI, en […]
al infinito llegareis , pero un radio si apotema no conseguireis .
[…] El algoritmo de Chudnovsky, o cómo se calculan los decimales de Pi en el siglo XXI […]
en la casio fx-570 con solo el termino k=0 te pone en la pantalla directamente el simbolo de PI, sorprendente!!! muy bueno gracias por compartir.
<<
Revisen en https://www.facebook.com/photo.php?fbid=10156783151199330&set=a.44900154329&type=3&theater como se calculan estos dígitos sin usar Mathematica con la artilleria pesada de C++