円周率の 100 兆桁目を求めて
Google は、2019 年に 31 兆 4000 億桁の円周率を計算し、 当時の世界記録を樹立 しました。そして本日、Google の岩尾エマはるかが Google Cloud 上のツールを活用して 100 兆桁の円周率を計算し、世界記録を更新したことを発表します。円周率「 π(パイ)」の小数点以下 100 兆桁目の数字は 0 でした。
数ヶ月前の 3 月のなんでもない火曜日の朝、私は自宅のワーキングスペースで 157 日間にわたって実行されていたプログラムの様子を見ていました。そして、ついにその瞬間が来ました。新たな世界記録となる円周率 100 兆桁の計算が完了し、私はその数字を世界で初めて目撃しました。
円周率の計算 — いかに多くの桁数を得るか — は、数千年もの間世界中の数学者、科学者、エンジニアによって取り組まれてきた壮大なプロジェクトです。一般によく知られる近似値 3.14 は、紀元前 250 年前後にアルキメデスにより発見されたと考えられています。コンピューターサイエンティストのドナルド・クヌースは、著書「The Art of Computer Programming」の中で「人類の計算の進歩は、伝統的に円周率の小数点以下の桁数で測られてきた」と書いています( クヌース博士は前回の記録についてこの本に書いてくれました )。かつて、人々は計算機やコンピュータも使用せずに手作業で円周率の桁数を求めていました。今日ではコンピュータを用いて円周率を計算しており、それによりコンピュータがどの程度高速化したのかを知ることができます。これは電子計算機の登場以前も含めた数百年間で、技術がどれだけ進歩しているのかを測る数少ない方法の一つです。
Google Cloud のデベロッパー アドボケイトとしての業務の一つに、開発者の方々が Google Cloud をどのように活用できるかを実演するデモや実験の制作があり、Google Cloud を使った円周率の計算もその一環です。円周率計算の世界記録を樹立することは私の子どものころからの夢で、数年前に Google Cloud を使った円周率計算をすることを決意しました。そして、2019 年に円周率 31 兆 4000 億桁の 当時の世界記録を発表 し、私は女性として史上 3 人目の記録保持者になりました。
しかし、円周率に終わりは無いので、もう一度記録更新に挑戦することにしました。そして本日、小数点以下 100 兆桁の新記録を発表することができました。この桁数の伸びはコンピュータの性能向上を表しています。さらに、2019 年の 31 兆 4000 億桁の計算には 121 日を要しましたが、今回の 100 兆桁の計算は 157 日間で完了しています。前回に比べ 2 倍以上の高速化を実現しました。
私の 2019 年の世界記録以前の歴史を振り返ると、電子計算機を使用した初の円周率計算の世界記録は 1949 年の 2,037 桁でした。つまり、人類が円周率の計算を始めてから 2,000 桁に到達するまでに数千年の年月を要しましたが、それからわずか 73 年で 100 兆桁に到達しました。新記録達成までの期間が短縮され、記録が次々と塗り替えられているだけでなく、桁数も大幅に増加しています。
今回私が使用したツールと技術は 2019 年と変わっていません(技術的な詳細については Google Cloud の ブログ で解説しています)が、 Google Cloud のコンピューティング、ストレージ、ネットワーク インフラストラクチャの新機能により、前回よりも多い桁数をより高速に計算することができました。コンピュータ サイエンスの特筆すべき点の一つは、個々の進歩は小さいように見えても、組み合わせることによって飛躍的な高速化が実現されるところだと思います。この飛躍的な計算速度向上のおかげで、今日では 気候科学 や 天文学 を含む幅広い分野で、コンピュータを使った研究が可能になりました。
私が 2019 年に世界記録を達成した時から「今後はどうなるの?」という質問をよくされました。世界中の科学者が今後も桁数を伸ばし続けていくと今は自信を持って言えます。無理数(有限個の多項式として表せない数)である円周率に終わりはありません。さらに、コンピュータも進化しつづけています。1940 年代の電子計算機の登場、1960 年から 80 年代のより高速なアルゴリズムの発見のような根本的な変化をもたらす発見が今後なされ、指数関数的な桁数の伸びがさらに加速するかもしれません。
今後のコンピュータ技術の発展とともに、私自身も新しい挑戦を続けていきたいです。 Posted by Developer Advocate、岩尾エマはるか