■n次元の立方体と直角三角錐(その133)
石井源久先生から計算手順について説明していただいた.計算手順は以下のようになっているが,驚いたことに2^n+2n胞体に特化したものではなかった.コンピュータを用いた総当たり的な手法で求めたものであるが,石井先生の才能を感じさせてくれる.
===================================
[0] (1,1,1,...,1)の要素数を求め,
[1] 各形状の頂点位置を計算してから,各要素について volume(線分では長さ,ポリゴンでは面積,...)のないものを除き,
[2] 最後に,重なっている要素を1つと数える.
これにより,2^n+2n胞体の指定の形状のみならず,全ての (1or0, .... )で表される形状の要素数データが算出可能になりました.例えば,(1,0,0,0,0,0) や (0,0,0,0,0,1) のデータは正多胞体なので既知ですが,これらも上記の手順を踏んで求めたところ,合致しています.
全ての形状について要素数を計算すると,現状,計算に7時間ぐらいかかるのですが,一応高速化のアイデアがありますので,それを試します.高速化した後でも同じ結果が出たら,全体のデータに対する信憑性がわずかながら向上します. (石井源久)
===================================
翌日,メールがあり・・・.
最終結果については,前回のものと違いがありませんでした.高速化に際しては,ほんの少しアルゴリズムを変えていましたので,前回と同じ結果が出たことで,ほんの少しだけデータの信頼性が上がりました.
一方,高速化については,(1or0, .... ) の 1の数が少ない場合については効果を発揮したのですが,1 の数が多い場合についてはあまり効果がなく,結局,63種類すべての計算に7時間かかっていたのが5時間ぐらいになった程度の時間短縮にとどまりました.
さらなる高速化のアイデアはあるので,余裕があればやっておきますが,アルゴリズム自体には変更が加わらないので,それで同じ結果が出たとしても,今回のようにデータの信頼性が上がる効果はありません.
今回の作業は,かなり重い仕事であったこともあり,着手自体に時間がかかってしまいましたことをお詫びいたします.何度も投げ出そうと思いましたが,佐藤先生よりあきらめずに督促をいただいたことに感謝いたします.
時間はかかってしまいましたが,結果が一致したことから,少なくとも今回の課題であった立体については,信頼性の高いものが出来たようであり,ようやく,当初のお約束は果たせたのではないかと思います. (石井源久)
===================================