研究概要 |
本研究は、従来からの代数的な手法とは異なる方法により、擬似乱数を非再帰的に生成する研究である。現在よく使われているFSR法、MT法などの擬似乱数生成法は、単一計算機で直列的に乱数を生成するアルゴリズムを用いているため、最近の計算機(特に並列計算機)の特性を十分に生かし切れているとは言い難い。本研究の対象であるSSR法(Simplified Shift-Real method)は、カオス写像Φ_x, x∈[1,2),を利用して、k番目の乱数を直接生成するアルゴリズムであり、特に並列計算に向いた手法である。 本研究期間前までの研究では、浮動小数点計算Φ_x^<24>(1)を用いて乱数を長周期で生成する方法は確立されていたが、乱数特性の改良および乱数桁数の長桁化の研究については準備的段階であった。 本研究期間前半においては、広島工業大学の久保泉氏との共同研究によりΦ_xの理論的な解析が進み、Φ_x、(1),x∈[1,2),の確率分布H(t)を導く方法が分かった。これにより、w_0,v_0を適切に選んで、Φ_x^<24>(1)の代わりにΦ_x^<24>(w_0)-Φ_x^<24>(v_0)を使えば、その分布がΦ_xのカオス的性質によりH(t)のたたみ込みとなって、乱数特性が著しく改善されるという成果を得た。 本研究期間後半においては、SSRのアルゴリズムを全整数演算化する研究を行った。SSR法は浮動小数点演算を用いているので、生成される乱数が計算機システムにより微妙に異なることがあるため、それを改良する研究である。その研究成果として、SSRアルゴリズムを64ビット整数の乗算とシフトにより高速に実現する方法SSI32を考案した。SSI32に対して、米国のNISTが提供する乱数の検定を行った結果では、他乱数と同等の値を得た。これらの成果は国際会議MCQMC2006で発表された。また、SSIアルゴリズムは、生成される乱数長に依存しないため、非常に長い桁数をもつ乱数の生成が可能である。その準備的な研究として、160ビットの乱数長をもつハッシュ関数SSI160を構築した。これら応用研究は今後も続けられる予定である。
|