{"id":4936,"date":"2016-09-21T10:00:58","date_gmt":"2016-09-21T08:00:58","guid":{"rendered":"http:\/\/pimedios.es\/?p=4936"},"modified":"2016-09-21T10:00:58","modified_gmt":"2016-09-21T08:00:58","slug":"calculamos-pi","status":"publish","type":"post","link":"https:\/\/pimedios.jesussoto.es\/?p=4936","title":{"rendered":"\u00bfCalculamos $\\pi$?"},"content":{"rendered":"<p>Desde la antig\u00fcedad la fascinaci\u00f3n por calcular las cifras decimales de $\\pi$ motiv\u00f3 a los matem\u00e1ticos. Arqu\u00edmedes, Ptolomeo, Liu Hui, Zu Chongzhi, al-Kashi, Vi\u00e8te, Leibniz, Newton, &#8230; y un largo etc\u00e9tera pusieron su empe\u00f1o en encontrar procedimientos que abreviasen el c\u00f3mputo de $\\pi$, o los obtuviesen con mayor precisi\u00f3n. La f\u00f3rmula m\u00e1s precisa que se consigui\u00f3 antes de la eclosi\u00f3n de los computadores, la descubri\u00f3 el genio indio Srinivasa Ramanujan(<a href=\"http:\/\/www.investigacionyciencia.es\/revistas\/investigacion-y-ciencia\/numero\/139\/ramanujan-y-el-nmero-pi-7199\" target=\"_blank\">Ramanujan y el n\u00famero pi<\/a>):<br \/>\n$${\\frac {1}{\\pi }}={\\frac {2{\\sqrt {2}}}{9801}}\\sum _{k=0}^{\\infty }{\\frac {(4k)!(1103+26390k)}{(k!)^{4}396^{4k}}}$$<\/p>\n<p>que obtiene 8 decimales exactos de $\\pi$ en cada iteraci\u00f3n. Pero estamos en la era de los computadores, \u00bfc\u00f3mo lo hacemos ahora?<\/p>\n<p>En 1984, los hermanos <a title=\"Jonathan Borwein\" href=\"https:\/\/en.wikipedia.org\/wiki\/Jonathan_Borwein\">Jonathan<\/a> y <a title=\"Peter Borwein\" href=\"https:\/\/en.wikipedia.org\/wiki\/Peter_Borwein\">Peter Borwein<\/a>\u00a0\u00a0 publican una iteraci\u00f3n de convergencia de orden\u00a0 4: dados<\/p>\n<p>$${\\begin{aligned}a_{0}&amp;=2{\\big (}{\\sqrt {2}}-1{\\big )}^{2}\\\\y_{0}&amp;={\\sqrt {2}}-1\\end{aligned}}$$<\/p>\n<p>entonces,<\/p>\n<p>$${\\begin{aligned}y_{k+1}&amp;={\\frac {1-(1-y_{k}^{4})^{1\/4}}{1+(1-y_{k}^{4})^{1\/4}}}\\\\a_{k+1}&amp;=a_{k}(1+y_{k+1})^{4}-2^{2k+3}y_{k+1}(1+y_{k+1}+y_{k+1}^{2})\\end{aligned}}$$<\/p>\n<p>La sucesi\u00f3n $a_k$ converge a $1\/\\pi$. Los dos hermanos hab\u00edan encontrado alguna m\u00e1s, con orden de convergencia mayores. En 1986, David Harold Bailey utiliz\u00f3 una de ellas para desarrollar un programa de c\u00e1lculo de $\\pi$, escrito para la NASA, como test para detectar problemas en la Cray-2[<a href=\"http:\/\/phys.org\/news\/2011-04-supercomputers-sixty-trillionth-binary-digit-pi-squared.html\" target=\"_blank\">1<\/a>].<\/p>\n<p>En 1995 Peter Borwein y Simon Plouffe encuentran una forma de calcular d\u00edgitos en binario del logaritmo de 2, empezando en una cifra arbitraria. Plouffe se da cuenta que tiene un fil\u00f3n y produce la f\u00f3rmula:<br \/>\n$$\\pi =\\sum _{k=0}^{\\infty }\\left[{\\frac {1}{16^{k}}}\\left({\\frac {4}{8k+1}}-{\\frac {2}{8k+4}}-{\\frac {1}{8k+5}}-{\\frac {1}{8k+6}}\\right)\\right]$$<br \/>\nEl estudio de esta f\u00f3rmula y su aplicaci\u00f3n para calcular $\\pi$ lo publican <a title=\"David H. Bailey\" href=\"https:\/\/en.wikipedia.org\/wiki\/David_H._Bailey\">David H. Bailey<\/a>, <a title=\"Peter Borwein\" href=\"https:\/\/en.wikipedia.org\/wiki\/Peter_Borwein\">Peter Borwein<\/a>, and <a title=\"Simon Plouffe\" href=\"https:\/\/en.wikipedia.org\/wiki\/Simon_Plouffe\">Simon Plouffe<\/a> en 1997 <span class=\"reference-text\"><cite class=\"citation web\"> <a class=\"external text\" href=\"http:\/\/www.experimentalmath.info\/bbp-codes\/bbp-alg.pdf\" rel=\"nofollow\">\u00abThe BBP Algorithm for Pi\u00bb<\/a> (PDF)<span class=\"reference-accessdate\">.<\/span><\/cite><\/span><\/p>\n<p>Con esta f\u00f3rmula, uno puede derivar un algoritmo que compute d\u00edgitos de $\\pi$ en una posici\u00f3n arbitraria y, adem\u00e1s, en base hexadecimal. En 1997, Frabrice\u00a0 Bellard de INRIA, calcul\u00f3 152 d\u00edgitos binarios de $\\pi$ empezando en la billon\u00e9sima posici\u00f3n digital binaria. E<span id=\"result_box\" class=\"\" lang=\"es\">l c\u00e1lculo tard\u00f3 12 d\u00edas <span class=\"\">en 20<\/span> estaciones de trabajo que trabajan en paralelo <span class=\"\">a trav\u00e9s de Internet. Repetir\u00eda la proeza en \u00faltimo d\u00eda del a\u00f1o 2009, con 9 Desktop PCs,\u00a0 Core i7 CPU a 2.93\u00a0GHz, durante 131 d\u00edas, para obtener m\u00e1s de $2\\times 10^{12}$ decimales.<br \/>\n<\/span><\/span><\/p>\n<p>En los a\u00f1os 80 del pasado siglo, <a title=\"Yasumasa Kanada\" href=\"https:\/\/en.wikipedia.org\/wiki\/Yasumasa_Kanada\">Yasumasa Kanada<\/a> tambi\u00e9n trabajaba en el c\u00e1lculo de decimales de $\\pi$, utilizando HITAC S-820\/80, con procesador vectorial, llegando a obtener 1.073.740.799 decimales. Pero los hermanos Chudnovsky no le iban a la zaga, utilizando un IBM 3090, y la f\u00f3rmula:<\/p>\n<p>$${\\frac {1}{\\pi }}=12\\sum _{k=0}^{\\infty }{\\frac {(-1)^{k}(6k)!(545140134k+13591409)}{(3k)!(k!)^{3}(640320^{3})^{k+1\/2}}}.\\!<br \/>\n$$<\/p>\n<p>El algoritmo dado por los hermanos Chudnovsky se us\u00f3 en diciembre de 2013 para alcanzar los 12.1 billiones de d\u00edgitos[<a href=\"http:\/\/www.numberworld.org\/misc_runs\/pi-12t\/\" target=\"_blank\">2<\/a>].<\/p>\n<figure style=\"width: 370px\" class=\"wp-caption alignleft\"><a href=\"https:\/\/en.wikipedia.org\/wiki\/File:Super_PI_Mod1.5_XS.png#\/media\/File:Super_PI_Mod1.5_XS.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/upload.wikimedia.org\/wikipedia\/en\/6\/63\/Super_PI_Mod1.5_XS.png\" alt=\"Super PI Mod1.5 XS.png\" width=\"370\" height=\"440\" \/><\/a><figcaption class=\"wp-caption-text\"><span style=\"font-size: smaller;\"> <a title=\"Attribution-ShareAlike 3.0\" href=\"https:\/\/creativecommons.org\/licenses\/by-sa\/3.0\/\">CC BY-SA 3.0<\/a>, <a href=\"https:\/\/en.wikipedia.org\/w\/index.php?curid=14397305\">https:\/\/en.wikipedia.org\/w\/index.php?curid=14397305<\/a><\/span><\/figcaption><\/figure>\n<p>As\u00ed que Kanada, viendo como estaban los competidores, se escurri\u00f3 el cerebelo y desarroll\u00f3 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Super_PI\" target=\"_blank\">Super PI<\/a>, un programa (ejecutable en Windows) que permit\u00eda calcular un n\u00famero determinado de decimales a partir de uno dado; es decir, el mismo sistema que se le ocurri\u00f3 a Plouffe. <em>Super PI<\/em> utiliza el algoritmo de <a href=\"https:\/\/en.wikipedia.org\/wiki\/Gauss%E2%80%93Legendre_algorithm\" target=\"_blank\">Gauss-Legendre<\/a>:<\/p>\n<p>Primero inicializamos: $a_{0}=1\\qquad b_{0}={\\frac\u00a0 {1}{{\\sqrt\u00a0 {2}}}}\\qquad t_{0}={\\frac\u00a0 {1}{4}}\\qquad p_{0}=1.$<\/p>\n<p>Segundo, iteramos hasta que la diferencia de $a_n$ y $b_n$ sea de la precisi\u00f3n deseada:<\/p>\n<p>$${\\begin{aligned}a_{{n+1}}&amp;={\\frac {a_{n}+b_{n}}{2}},\\\\b_{{n+1}}&amp;={\\sqrt {a_{n}b_{n}}},\\\\t_{{n+1}}&amp;=t_{n}-p_{n}(a_{{n}}-a_{{n+1}})^{2},\\\\p_{{n+1}}&amp;=2p_{n}.\\end{aligned}}$$<\/p>\n<p>Por \u00faltimo aproximamos<\/p>\n<p>$$\\pi \\approx {\\frac\u00a0 {(a_{{n+1}}+b_{{n+1}})^{2}}{4t_{{n+1}}}}.$$<\/p>\n<p>Con este algoritmo Kanada batir\u00eda el r\u00e9cord en 2002, 1.241.100.000.000 d\u00edgitos[<a href=\"http:\/\/www.super-computing.org\/pi_current.html.en\" target=\"_blank\">3<\/a>]<\/p>\n<p><em>Super Pi<\/em> se vio pronto superado por el programa <b><span class=\"texhtml\"><i>y<\/i><\/span>-cruncher<\/b> de <a href=\"http:\/\/www.numberworld.org\/about\/ayee\/\" target=\"_blank\">Alexander Yee<\/a>, con el que Shigeru Kondo comenz\u00f3 a desbordar r\u00e9cord, desde agosto de 2010, hasta alcanzar los <a href=\"http:\/\/www.numberworld.org\/misc_runs\/pi-12t\/\">12.1 billones de digitos &#8211; Diciembre de 2013<\/a>. En la actualidad <b><span class=\"texhtml\"><i>y<\/i><\/span>-cruncher<\/b> mantiene el r\u00e9cord, obtenido en octubre de 2014, con 13.3 billones de d\u00edgitos. El programa utiliza la f\u00f3rmula de los hermanos Chudnovsky. El \u00faltimo r\u00e9cord se consigui\u00f3 con 2 x Xeon E5-4650L @ 2.6\u00a0GHz, 192 GB DDR3 @ 1333\u00a0MHz y 24 x 4 TB + 30 x 3 TB.<\/p>\n<p>Como veis, utilizando una f\u00f3rmula y paralelizando sus desarrollos podemos encontrar las cifras de $\\pi$ que deseemos, s\u00f3lo es cuesti\u00f3n de tiempo. Por ejemplo, en <a href=\"http:\/\/www.appentra.com\/parallel-computation-pi\/\" target=\"_blank\">A very simple simulation program: Parallel computation of PI<\/a>, encontr\u00e1is un programa sencillo que se basa en una aproximaci\u00f3n por Simpson de la integral<\/p>\n<p>$$\\int_0^1\\frac{4}{1+x^2}dx. $$<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Los esfuerzos en el c\u00e1lculo de d\u00edgitos de pi.<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6,9],"tags":[701,702,704,700,703],"class_list":["post-4936","post","type-post","status-publish","format-standard","hentry","category-historia","category-personajes","tag-alexander-yee","tag-chudnovsky","tag-super-pi","tag-y-cruncher","tag-yasumasa-kanada","entry"],"_links":{"self":[{"href":"https:\/\/pimedios.jesussoto.es\/index.php?rest_route=\/wp\/v2\/posts\/4936","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pimedios.jesussoto.es\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/pimedios.jesussoto.es\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/pimedios.jesussoto.es\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/pimedios.jesussoto.es\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4936"}],"version-history":[{"count":9,"href":"https:\/\/pimedios.jesussoto.es\/index.php?rest_route=\/wp\/v2\/posts\/4936\/revisions"}],"predecessor-version":[{"id":4945,"href":"https:\/\/pimedios.jesussoto.es\/index.php?rest_route=\/wp\/v2\/posts\/4936\/revisions\/4945"}],"wp:attachment":[{"href":"https:\/\/pimedios.jesussoto.es\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4936"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/pimedios.jesussoto.es\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4936"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/pimedios.jesussoto.es\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4936"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}