午後のひとときに、数学関連のニュースを紹介します。
以前、
こんな記事を書いたので、私の書いた記事を読んで欲しい。
ループ回数を基準にして、ガウス=ルジャンドルのアルゴリズムが最速だとしましたね。
もし、ガウス=ルジャンドルのアルゴリズム、つまり算術幾何平均、もっと親しみのある言い方ならば相加相乗平均で、62兆8000億桁を求めるとなると、何回反復計算すればよいのだろうか。
バイバインだとしても、たった47周です。
ガウスル=ジャンドルの方法も、最初は3倍近いが、すこしずつ減少していって、2倍に近くなっていっているので、2倍に漸近的に近づくのか、もしかするとバイバインに抜かれる可能性もあることは考えられるが、62兆8000億桁程度では抜かれないだろうから、こちらも47周としてみる。
何回折れば、月に行けるかというのと同じ計算ですね。
月は43回でしたので、月よりも4回多く折るので、16倍遠いのかな。
相加相乗平均のコンピュータによる計算のネックは、おそらく開平法だろう。
ループのたびに、平方根を計算する必要があり、平方根の精度を、最初から求めたい円周率の精度と同じにしておく必要があります。
つまり、62兆8000億桁の円周率を求めたいという目標があるならば、平方根は最初から62兆8000億桁求める必要があるということです。
計算には108日と9時間掛かったとニュースソースにはあるので、2601時間。
これを47周で割ってみると、約55.34日、つまり1周平均で約3日と8時間といったところだろうか。
ただ、ニュースソースにはどんなアルゴリズムで解いたとかが書いてないので、なんとも言えない。
ただ、先の記事を書いたときに感じていたものがあって、コンピュータの性能を計るのに円周率の計算で、こんな桁数を何時間で計算したぜ~って自慢されても、なかなかそのコンピュータやそれを取り巻くハード環境や計算アルゴリズムの凄さって伝わりにくいんですよ。
なぜ、伝わりにくいかというと、一つも統一されたものが無いから、他と比べにくいんです。
ものを比べるというのは、何かしらの統一された基準が必要なんです。
例えば、AとBを比べるのに、同じ時間を費やしたところ、Aは何桁、Bは何桁求めることが出来ました。
これならば、AとBの差は、コンピュータの性能差なのか、クラウドなどのネットワーク環境差なのか、アルゴリズムの性能差なのか、と疑問は残るが、一般人からしたらそれらは一括に考えてしまってもある意味解りやすい。
例えば、AとBを比べるのに、同じアルゴリズムを使って同じ桁数を求めさせたところ、Aは何時間、Bは何時間で求めることが出来ました。
これならば、AとBの差は、コンピュータの性能差なのか、クラウドなどネットワーク環境差なのか、とどこに差があるのかが先よりも絞られている。
といったように、いくつかのものを同じ土俵にする必要があることが解るだろう。
108日と9時間で、62兆8000億桁求めることが出来ました。
Aよりも2倍、Bよりも3.5倍、計算速度が速いと言われても、私のような人間にはう~んとなってしまうのです。
Aが同じ62兆8000億桁を求めると、2倍の216日と18時間掛かるのだろうか?
Bが同じ62兆8000億桁を求めると、3.5倍の379日と7.5時間掛かるのだろうか?
ということなのです。
これは計算としては正しくないと思うんです。
アルゴリズムが第二レースに登場したようなものであれば、グラフからも解る通り、等速直線運動ですから、単純に傾きで速度の違いは示せる。
しかし、昨今の高速と言われるアルゴリズムは、ガウスル=ジャンドルのアルゴリズムか、それを超えていくものだろうから、等速ではなく、確実に加速するタイプのものなのです。
つまり、速度が2倍やら、3.5倍やら言われても、ピンと来ないというのは、そういうところにあります。
せめて、どんなアルゴリズムで求めたのかくらいは書いてあれば、そのアルゴリズムがどんなものなのか、他のアルゴリズムとの差を見いだせたかと思う。
この記事だと、コンピュータやそれを取り巻くハード環境の性能差が上がったから、ギネス記録となったと取られてしまうと、ハードウェアの進化は今後も続くだろうから、この記録はすぐにでも塗り替えられてしまうということでもあるわけです。
マスコミさんにも、数学に詳しい方、昨今の円周率計算アルゴリズムに詳しい方、といった人材が居ないと伝えられない、伝わりにくい記事になってしまうということなのでしょうね。
まぁ、私の記事も他人のことを言えるものでもないのですけれどもね。
ではでは