JP3205276U - 一様独立乱数の乗算合同法高精度生成方法 - Google Patents
一様独立乱数の乗算合同法高精度生成方法 Download PDFInfo
- Publication number
- JP3205276U JP3205276U JP2016000958U JP2016000958U JP3205276U JP 3205276 U JP3205276 U JP 3205276U JP 2016000958 U JP2016000958 U JP 2016000958U JP 2016000958 U JP2016000958 U JP 2016000958U JP 3205276 U JP3205276 U JP 3205276U
- Authority
- JP
- Japan
- Prior art keywords
- spectrum test
- order
- modulus
- multipliers
- prime
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】コンピュータ上での乗算合同法による大周期で統計的に正確な一様独立乱数の生成装置を提供する。【解決手段】コンピュータ上の一様独立乱数列{r1、r2、・・・}として、1≦i≦6飛びに取られた対(rk、rk+i)、k=1、2、・・・が独立な対であるという統計的仮説を最も弱く否定する2次スペクトル検定結果を持ち、かつ既存技術の誤りを正して求められた3−6次のスペクトル検定を既存技術と同じ高精度内で満たす様な、法d、乗数zの乗算合同法生成機構(d、z)で現時点現社会のシミュレーションの目的に適う倍精度と250以上の長い使用可能周期を持つものを検定によって製造開発し、使用者、研究者、技術者、一般消費者が公正明確な性能把握を可能にする表示を求めた。【選択図】図11
Description
確率過程として正確な一様独立性を持つ乱数列を{u1、u2、u3、・・・}と記すと、実数ukとuk+jとはj=1、2、3、・・・のどれに対しても互いに独立に区間(0、1)の値を取る。この様な確率論、確率過程論的な定義に対して、コンピュータ上では強く認識すべきいくつかの状況の違いがある。第1に、コンピュータ上の実数は有限の桁しか持てず、乱数列{v1、v2、v3、・・・}は必ず有理数、区間(0、1)の倍精度実数なら小数点以下約15桁程度、からなる。第2に、コンピュータの取り得る状態の総数は有限だから、前出力から次出力を生成せざるを得ない乱数列はコンピュータ上では必ず有限の周期Tを持って始めの状態が再現し、vk=vk+Tとならざるを得ない。コンピュータ上の乱数の最も重要な用途は、ゲーム等も含めて種々のシミュレーションであり、工学技術はまず、通常のシミュレーションで求められる乱数の数量では使い切られる事がない十分に大きい乱数周期Tを実現する事を求められる。そして通常の科学技術的シミュレーションは必ず倍精度で行われるから、乱数も倍精度を持たねばならない;乱数はでたらめな数だから単精度でよかろう、と言う楽観は、一様独立乱数に基づく、或は一様独立乱数から高精度の関数変換で得られる他の任意の確率分布を持つ乱数に基づく、シミュレーションに対して理論考察を不可能にし、理論解析の立脚点、何をシミュレーションで導出すべきかの目標、を失わせるからである。具体的に古典乱数、例えばMersenne素数の法d=231−1とその原始根zによる乱数について言えば、T=d−1=231−2≒231であり、得られる乱数は単精度に限られ、現在のパソコン上では56秒程ですべて生成されてしまう。周期にはさらに精密な考察が求められる。奇素数dの原始根の位数はT=d−1、それはzT≡1(mod d)が始めて再現する正の整数である。Tは必ず偶数となり、zT/2≡−1(mod d)が成立する。故に周期の後半{−z、−z2、・・・}は本質的に前半の繰り返しで独立ではない。この場合独立乱数としての実用(になる)周期はT’=T/2≒d/2≒230である。現在の速い卓上型コンピュータ(intel core i7−4770@3.40GHz)を生成専一に動かすとT’は約28秒で使い切られる。しかしもしT’=250程度であれば、パソコン上実用周期を使い切るには28秒×220≒339.82日かかる。勿論T’≒d/2を230から250に増大させるには法dを増大させなければならず、4倍精度整数計算が困難な現在のパソコンでは倍精度計算の範疇で収める工夫のためにも、使い切る時間はこれよりは増大する。T’≒250なら、1000並列計算可能な大きな計算機上のシミュレーションでの1時間程度の使用にも十分に耐えるだろう。現在緊要な技術目標は、実用周期T’≧250と倍精度、そして何よりも優れた統計性、特に独立性、を体現する一様独立乱数見本列の生成法の考案、としてよい。それは考案と言うよりは、極端に稀少な優れた大きい整数の組{d、z}の、全く予断を許さない総当り探索以外に方法のない、困難極まる発掘作業と言うべきである。しかし優秀な(d、z)が特定されば、その優れた性能のコンピュータ上確認は容易のはずで、その実際利用は最も簡明な整数演算の組み合わせであり、倍精度或いは4倍精度制限に忠実な算術プログラムの作成という平易な問題に帰着する。ここに提出するのは、高い精度の表現の明確な表示を持つ未だ知られていなかった8組の(d、z)である。いくつかの一般的な理解の確認から始める。
数多くの乱数生成方法の中で、乗算合同法は最も簡単なものでありながら、他のあらゆる生成方法を包摂する最も一般の乱数生成方法である。この理解は中澤と中澤(2008)に初めて与えられた事実、コンピュータ上の一様乱数のどんな見本列も必ず、無視できる一様誤差1/d≒1/Tの範囲で、ある(d、z、n)乗算合同法列で近似される、という認識に発する。乗算合同法はあらゆる生成方式の中で最も計算負荷が少なく、しかも最も容易に強力なスペクトル検定が可能な方法だから、これは数の構造(正確には整数の除法の算術)が我々に与えた恩恵である。この理解はコンピュータ上の乱数生成について、そもそもdeterministicな漸化式で乱数を生成できるのか、などの形而上学的難問を取り去り、統計的にある数列が一様独立列であるとする仮説を最も弱く否定するものを生成するには、という身近な実際技術の問題に引き戻す。その立場で見れば全問題は、d≧2T’≧251という制限を受ける非常に大きい整数の組(d、z)で仮説を最も弱く否定するものをどの様に発見するか、である。現在の技術ではその解答はスペクトル検定で優れた成績を持つものを選ぶ事である。法dが大きいと、スペクトル検定にはよく知られた計算不可能性の問題が生じる。この大困難は現在既に多く存在するcombined generatorの諸アイデアに次の構造を与えた。例えばL’EcuyerとTezuka(1991)、SakamotoとMorito(1995)、或いは解説Wang他(2011)を参照されたい。要約すると、まず小さい法を持つ複数の優れた乗算合同法(d1、z1)、(d2、z2)、・・・をスペクトル検定で選ぶ;部分法d1、d2、・・・は互いに素とする。次にそれらをcombineして、大きな最小公倍数周期を持つ乗算合同法(d、z)を構成する。典型的で有用なのは(d=d1d2、z)の形である。これは例えば、互いに素な法d1、d2、・・・に関する連立合同式
で孫子の定理によって法dで一意に定まるzを乗数に選べばよい。しかしながら、prior artsは例外なくいくつかのexperimental testsの組によって検定を行い、大きな法dでのスペクトル検定結果は提出されていない。乱数の使用者、消費者の側に立てば、これでは推挙されたcombined generatorの正確な性能を知る事ができない、という困難が残存する事になる。
中澤と中澤(2008)/ 中澤 宏、中澤直也:長周期で高精度の一様独立乱数の設計、2008年3月9日−7月4日にURL http://www10.plala.or.jp/h−nkzw/pastreports.htmlにファイル名309704j.pdfでアップロード;関係する記述はその4−8ページ。
L’EcuyerとTezuka(1991)/P.L’Ecuyer and S.Tezuka:Structural Properties for two classes of combined random number generators,Mathematics of Computation,Vol.57(1991),pp.735−746.
SakamotoとMorito(1995)/M.Sakamoto and S.Moroto:Combination of multiplicative congruential random number generators with safe prime modulus,Proceedings of the 1995 Winter Simulation Conference,edited by C.Alexopoulos et al.
Wang他(2011)/M.Wang et al.,Combined random number generators:A review,978−1−61284−486−2/11/IEEE(2011),pp.443−447.
コンピュータ上の一様独立乱数を用いなければならない消費者の中で、現在最も大きな困難に直面するのは、シミュレーションを行う研究者、技術者であろう。現在の乱数は周期は当然明示されているが、統計的性能は抽象的なempirical testsの合否のみに留まっている。必要なのは、一般の商品と同じく、保証された定量的性能であり、その表示である。一様独立乱数の最も信頼性が高い性能表示はそのスペクトル検定から得られる。従ってすべての高精度一様独立乱数列の生成機構は、公正な商取引のためにも、商品のスペクトル検定諸評価を明記すべきであろう。それ以外の新規発見も含めて現考案は、
(イ)combined generatorにも含めスペクトル検定を行って選び性 能表示とし、
(ロ)(d、z)乗算合同法はさらに(d、z^i)で2≦i≦6の次数での2次スペ クトル検定合格も旧来のi=1と共に同じ合格基準で求め、
(ハ)(d、z、n)の3次以上のスペクトル検定は、正L単体形の単位胞を持つ格子 を基準として合格を考える、
の3点を遂行する。この意味で現考案は先行技術とは明確に異なる。(イ)は第一義的には、empirical testsでは判定の採用基準が十分精密かどうか、見落としがないか、十分信頼できるか、の不安があって、スペクトル検定での客観定量的な表現が必要だと考えるからである。検定全体を見通した視野から理解される重大な理由は、スペクトル検定の成功例について考えてより明確に理解されるので下の諸段落に記す。(ロ)の必要は特願2013−206948での発見、そして中澤と中澤(2014a)での議論に基づく。(d、z)が乱数列S:={v1、v2、v3、・・・}を作るとする。乗算合同法(d、z^i)はそのi飛びに取った部分列、例えばvkから始まるSk:={vk、vk+i、vK+2i、・・・}を記述する。仮説「列Sが一様独立である」が真ならSkも同じ性質を持つ:その仮説の最も弱い否定を与えるためには(d、z^i)の2次スペクトル検定も高成績でなければならないから、である。この殆ど自明な条件は今まで認識から除外された存在であったが、この条件自体が(d、z)の優秀性の否定のための決定的な役割を持ち得る強力なものであり、また(ロ)が優れた(d、z)の組を(イ)や(ハ)によって発見する大きな計算時間を決定的に削減するためにも極めて重大な役割を果たす事が特願2014−206947以降認識された。現考案のスペクトル検定計算の成功を見れば、(イ)−(ハ)はすべて、鍵となる重要な役割を担う手続である事が再認識されるだろう。
(イ)combined generatorにも含めスペクトル検定を行って選び性 能表示とし、
(ロ)(d、z)乗算合同法はさらに(d、z^i)で2≦i≦6の次数での2次スペ クトル検定合格も旧来のi=1と共に同じ合格基準で求め、
(ハ)(d、z、n)の3次以上のスペクトル検定は、正L単体形の単位胞を持つ格子 を基準として合格を考える、
の3点を遂行する。この意味で現考案は先行技術とは明確に異なる。(イ)は第一義的には、empirical testsでは判定の採用基準が十分精密かどうか、見落としがないか、十分信頼できるか、の不安があって、スペクトル検定での客観定量的な表現が必要だと考えるからである。検定全体を見通した視野から理解される重大な理由は、スペクトル検定の成功例について考えてより明確に理解されるので下の諸段落に記す。(ロ)の必要は特願2013−206948での発見、そして中澤と中澤(2014a)での議論に基づく。(d、z)が乱数列S:={v1、v2、v3、・・・}を作るとする。乗算合同法(d、z^i)はそのi飛びに取った部分列、例えばvkから始まるSk:={vk、vk+i、vK+2i、・・・}を記述する。仮説「列Sが一様独立である」が真ならSkも同じ性質を持つ:その仮説の最も弱い否定を与えるためには(d、z^i)の2次スペクトル検定も高成績でなければならないから、である。この殆ど自明な条件は今まで認識から除外された存在であったが、この条件自体が(d、z)の優秀性の否定のための決定的な役割を持ち得る強力なものであり、また(ロ)が優れた(d、z)の組を(イ)や(ハ)によって発見する大きな計算時間を決定的に削減するためにも極めて重大な役割を果たす事が特願2014−206947以降認識された。現考案のスペクトル検定計算の成功を見れば、(イ)−(ハ)はすべて、鍵となる重要な役割を担う手続である事が再認識されるだろう。
条件(ハ)を詳述する。これは特願2013−273814で認識記述され、中澤と中澤(2014b)でも言及された。基礎となるのはL≧3に対して乱数の相続くL連がL次元ユークリッド空間で載る格子GLが正L単体、即ち2次元平面の正3角形や3次元空間の正4面体のようにその頂点のすべての対の距離が等しい条件で定まる単体、を張る様な基ベクトルの組を持つ事が相続くL連が一様独立と見えるという仮説を最も弱く否定する、というこれも明白な認識に基づいて提出された。この認識はさらに、従来技術のL次元スペクトル検定で理想とした格子のL単体が正L単体とは異なるという事実が後に理解された事で補強された。後者の事情は解説、中澤と中澤(2015a)が平易で詳しい。格子GLのL個の一般の格子点は、それらを含む(L−1)次元の(超)格子平面を定める。GL格子が理想形に近いかどうかは、これら(L−1)次元超格子平面の中で平行で隣り合うものの最大間隔、それは法d、乗数z、そして次元Lで定まるのでλL(d、z)と記す、が理想格子の場合の最大値ML(d)に近いかどうか、しかも「上から近いかどうか」で判定される(特願2013−273814)。「下から近い」ものは形としては理想格子からは遠いと考えられ、計算結果もそれを支持し、スペクトル検定としては良い評価点を与えられない理由も含めて、詳細は再び中澤と中澤(2015a)に見られる。この理想値ML(d)は数の幾何学が与えるあらゆる格子での「真の最大値AL(d)」、それは歴史的なFishmanとMoore(1986)以来ずっと用いられて来たものであるが、とはL≧3では異なる。具体的には次の通りである:
従って、乗算合同法(d、z)が生成する乱数が十分一様独立列に近いとして許容する現在の評価基準は、
の成立である。μL(d、z)=1は整数d、zで定まる乱数のL連の格子ではあり得ない。また特願2013−273814で論じ、そして中澤と中澤(2015b)が具体例で示した様に、L≧3でμL(d、z)が1に下から近い場合は、正L単体を張る基ベクトルを持つ格子からはむしろ遠いと考えられる理由があり、我々はそれを採用しない。
中澤と中澤(2014b)/N.Nakazawa and H.Nakazawa:Method of spectral tests of multiplicative congruential random number generators,uploaded on June 5−July 30,2014 with the filename invention2k.pdf in the URL http://nakazawa−patents.jp.
中澤と中澤(2015a)/N.Nakazawa and H.Nakazawa:The geometry of spectral tests,uploaded with the filename sptest15june7naorev.pdf.on April 10−June 7.2015 in the URL http://nakazawa−patents.jp.
中澤と中澤(2015b)/N.Nakazawa and H.Nakazawa:Revisit to the Mersenne prime modulus of Fishman and Moore,uploaded with the filename fishmanmoorenaorevl.pdf.on September 13−29,2015 in the URL http://nakazawa−patents.jp.
乗算合同法の設計のためのスペクトル検定は、技術としてFishmanとMoore(1986)の研究で基本的理解を我々に与えた。それは乗算合同法に関して一様独立乱数として優れたものはスペクトル検定でよい成績を挙げるべきであり、同じ周期を与えるすべての乗数(例えば奇素数の法dに対するすべての原始根乗数z)に関して、これが良かろうといった先入観なしにすべてを尽くした(exhaustiveな)スペクトル検定での選択による他ない、それ以外の選定方法で優れた生成機構(d、z)を得る事はできない、という認識である。あらゆる一様乱数列見本は乗算合同法乱数列と思ってよいから、どのような一様独立乱数見本列であろうと、原理的に近似乗算合同法列を用いてスペクトル検定が可能である。勿論、一般の一様乱数列から近似する(d、z)の法dと乗数zを特定する事は容易ではない。実際的な可能性は乗算合同法として始めから設計されたものに限られる。換言すれば我々はコンピュータ上の乱数生成機構は工学技術的に専ら乗算合同法とすべきだ、と強く主張する事を許される。(d、z)のスペクトル検定は法dと乗数zのみに基づくもので、出力乱数列全体に渡る統計的検定を行う事なくgenericな性能評価を与えるものとして抜きん出た利点をと結論の信頼度を誇る。検定の基礎は、乗算合同法乱数出力の相続くL連をL次元ユークリッド空間ELの点と考えると、それらがdとzで定まる格子、それを前述の通りGL=GL(d、z)と記す、の格子点となる、という事実である。そして漸く中澤と中澤(2014b)で獲得された知識では、この格子GL(d、z)には一様独立乱数が載るべき理想の格子形がある。格子GL(d、z)=GLはL個の基ベクトルの整数係数一次結合で表される格子点の全体である。1つの格子の基ベクトルの組としては互いにユニモジュラー変換で結ばれた無数のものが存在する。それら基ベクトルの組の中に正L単体という一意な幾何学形状を与えるものが存在するもの、それが一様独立乱数の相続くL連がELで載るべき理想の格子形状である;L=2次元ではそれは正3角形を張る基ベクトルを持つ3角格子、L=3次元ではそれは正4面体を張る基ベクトルを持つ面心立方格子である。この間の事情は解説、中澤と中澤(2015a)に平易に詳しく与えられている。格子GLのL個の一般の格子点は、それらを含む(L−1)次元の(超)格子平面を定める。GL格子がこの理想形に近いかどうかは、これら(L−1)次元超格子平面の中で平行で隣り合うものの最大間隔、それは法d、乗数z、そして次元Lで定まるものなのでλL(d、z)と記す、が理想格子における平行隣接格子間隔の最大値ML(d)に「上から近いかどうか」で判定される(特願2013−273814)。「下から近い」ものが形としては理想格子からは遠いと考えられスペクトル検定としては良い評価点を与えられない理由も含めて、詳細は再び中澤と中澤(2015a)に見られる。
スペクトル検定に関しては、今まで気付かれなかった、しかし重要で大きな効果を持つ今ひとつの条件が、優れた(d、z)一様独立乱数列{r1、r2、・・・}が満たすべきものとして提唱され(特願2013−206947)、優れた(d、z)の組を発見するそのためにも、極めて重要強力である事の実証が現考案の実施でも強く理解された。少し2次元格子とスペクトル検定値について説明する。2次元平面だから理想格子は簡明に正3角形を張る基ベクトルを持つ3角格子である。(d、z)乱数列の2連が載る格子は様々だが、図1と図2にそれらの具体例を素数の法dとその原始根乗数zの諸例で示す。この各格子で2つの格子点を結ぶ線が格子線である。格子線の間隔は格子によって色々だが、隣接格子間隔、つまり2つの平行格子線で間に他の格子線が存在しないものの間隔、にはその格子(d、z)で定まる最大の間隔λ2(d、z)がある。そして(d、z)からの2連の載るGL(d、z)格子に関しては最大格子間隔λ2(d、z)が理想形の3角格子の場合に最小値Λ2(d)=M2(d)を取る。具体的なその値は[数5]の通りであり、この導出は中渾と中渾(2015a)を参照して頂きたい。(d、z)乱数が一様独立列ならば、図1や図2から見える通り、乱数の相続く2連が載る格子は3角格子に近いはずである。i飛びに取られた乱数の2連の載る格子GL(d、zi)でこの近さを評価するのがμ2(d、zi):=λ2(d、zi)/M2(d)≧1である。但し値1は(d、z)或いは(d、zi)乱数列では生じない;整数乱数列{r1、r2、r3、・・・}あるいはそのi飛びの列は整数座標の格子点しか作れないが、3角格子は無理数座標を要するからである。だから図1及び図2の(d、z)格子の中でμ2(d、zi)が1に上から近いものがよい独立性を持つ(d、z)乗算合同法だ、という事になる。この直感印象はFishmanとMoore(1986)の強力な検定条件にならって
の成立で確認する事ができる。もとの(d、z)乱数が独立列であるかどうかを判定するのに(d、z^i)に対する[数7]が不可欠な検定基準である事は特願2013−236947、中澤と中澤(2014a)で始めて認識提唱された。これは今までの乱数についての考え方の盲点であった。現考案の導出の様に、実際に検定を行って見ると、[数7]の判定は独立性に相応しくない振る舞いの非常に鋭敏で計算負荷の小さい検出方法を与えている。さらにそれは3次以上のスペクトル検定に対する強力な支援もを与える。言い換えると、見かけ上乱数の3連、4連、・・・が夫々の次数の検定で十分合格と見えても、実際には相応しくない場合を発見する強力な手段である。
上に述べた現在の諸理解に基づき一様独立乱数生成乗算合同法(d、z)として望まれる法d、乗数zの設計要件をまとめると、
(A)実用周期T’≧250を与え、
(B)[数6]を満たし、
(C)且つ(d、z^i)の2次スペクトル検定が[数7]を少なくとも2≦i≦6 で、既に行われているi=1でのスペクトル検定と共に満たす、
その様な整数の組(d、z)である事、となる。それらを満たす(d、z)の発見は、周期の条件を(A)を満たすあらゆる乗数zについて先入観なしにそれがまず計算負荷の軽い(C)を満たすかどうかを順次調べ、合格するものをさらに(B)で検定して発見する、そのような膨大な計算以外には方法がない。これはFishmanとMoore(1986)がexhaustive testsとして我々に与えた重大な経験則の拡張である。
(A)実用周期T’≧250を与え、
(B)[数6]を満たし、
(C)且つ(d、z^i)の2次スペクトル検定が[数7]を少なくとも2≦i≦6 で、既に行われているi=1でのスペクトル検定と共に満たす、
その様な整数の組(d、z)である事、となる。それらを満たす(d、z)の発見は、周期の条件を(A)を満たすあらゆる乗数zについて先入観なしにそれがまず計算負荷の軽い(C)を満たすかどうかを順次調べ、合格するものをさらに(B)で検定して発見する、そのような膨大な計算以外には方法がない。これはFishmanとMoore(1986)がexhaustive testsとして我々に与えた重大な経験則の拡張である。
考案者達は種々の工夫と長大な計算の末に以下の9組を発見した。工夫を再記する。実用周期T’は、もし周期Tの(d、z)乱数列{r1、r2、・・・、rT}にrk≡−1mod(d)を満たすものが存在しなければT’:=Tであり、存在すればT’=T/2である。条件(A)、(B)、(C)を満たす乗算合同法(d、z)で現在我々が知るもの、得られている優れたもの、は多くはないので、個別に記述する。図3は(#1)と名付けられた(d、z)の性能諸表である。これは実用周期がT’≒242.63と小さいが、現在の机上パソコンなら専一に生成をして、終了に49.30時間程かかる。5次スペクトル検定結果は許容範囲を僅かに超えるが、他の面では全体に中庸と言うべき成績である。ある種実際用途には十分役立つだろう。構成は次の通りである:
図4の(#2)と名付けられた(d、z)はT’≒248.45と幾分小さい。法が231より遥かに大きいので、机上パソコンなら生成を終えるのに116.05日程、法の増大による計算時間の増加を考えればこれよりは遥かに多くの時日を、要するだろう。構成は
である。そのスペクトル検定の成績は図4にリストとして示されている。
図5の(#3)と名付けられた(d、z)はT’≒249.07であり、机上パソコンで生成のみを行うなら178.36日を要して使い切られる。これらパソコンでのシミュレーションには十分であろうし、何よりもスペクトル検定結果が優れている。勿論乱数列{r1、r2、・・・、rT’}でrkとrk+8よりも大きく離れたものが互いに十分独立と見る事ができるか、は図1、図2を参照し、シミュレートされる問題の構造を考え合わせて、この程度離れた出力の小さい相関は影響が小さいかどうか、を推理して用いるべきである。構成は
である。そのスペクトル検定の前成績は図5にリストとして示されている。
図6の(#4)と名付けられた(d、z)はその構成が中澤と中澤(2014b)に公開されている:
である。そのスペクトル検定の成績は図6である。机上パソコンで生成のみを行うなら実用周期T’は187.36日で使い切られる;十分だろう。
図9の(#7)と名付けられた(d、z)は
である。その使用可能全周期T’の卓上型コンピュータでの生成には295.83日よりも大きい時日を要する。(d、z)機構のスペクトル検定の成績は図9にリストとして示されている。
これはcombined generatorsでも、それ以外でもよく知られた技術だが、N重並列計算では整数M≒T’/Nを取り、nk:=zkMmod(d)をk=1、2、・・・、Nまで計算すればよい。{nk}は指数kMを2のべきのべき・・・の積
の形に分解して簡単に計算できる。その後(d、z、nk)生成機構でk=1、2、・・・、Nに対する乱数列N個を夫々の計算に用いる事になる。
任意の法d、それとは素な乗数zで使い得る周期T’の乗算合同法乱数列、即ち法dで見て列S(d、z):={z≡z1、z2、・・・、zT’、・・・}に対してS(d、z−1)は自明に列S(d、z)の逆行数列であり、その相続くL連はL次元ユークリッド空間の点としては自明に座標軸の順序を逆に取った列であり、それらが作るL次元格子の幾何学はS(d、z)のものと変りはない。故に乗数zとz−1とは同じスペクトル検定結果を持つ。また、あと2つだけ同じ周期とスペクトル検定結果を持つ乗数−z、−z−1が存在する。説明が長いので段落を変える。
(d、z)の相続くL連、実際に行われるのはL=2、3、・・・、6、をL次元ユークリッド空間の点の座標と見て、それが載る格子の幾何学形状から評価点μd (L)(z)を定めるのがL次スペクトル検定である。検定を算術的に考える。次の条件を満たすL次元双対格子のベクトルf、整数成分でf=(y1、y2、・・・、yL)と表され、条件
を満たすもの、の長さ‖f‖:={(y1)2+(y2)2+・・・+(yL)2}1/2、について、特に最小の正の長さを持つものをfminと記す。fminは整数ベクトルfのすべての整数座標を掃過して最小長さのものを探して得られる。L次スペクトル検定はこれによって値
を定め、(d、z)乗算合同法のL次スペクトル検定評価値を
と与える。この幾分超越的な説明の詳細は中澤と中澤(2015a)に平易に与えられているので御参照頂きたい。この検定の構造は次の事を意味する。乗算合同法(d、−z)の双対格子ベクトルの条件[数20]は、単にzの奇数冪の係数ykの符号を変えれば乗算合同法(d、z)のそれと同じであり、この符号の変形によって双対格子ベクトルの長さ、特に最小長さ‖fmin‖は変わらない。故に(d、±z)は同じL次スペクトル検定評価値を持つ。いずれにせよ(d、z)の生成する実用周期をT’として生成列を{z1、z2、・・・、zT’≡±1(mod d)}と取って考えれば、終端以外に±1は出ないから(d、−z)の生成列も同じ実用周期を持つ事は容易にわかる。故に(d、±z)も(d、±z−1)も、共に同じ実用周期を持ち同じ任意次スペクトル検定評価値を持つ乗算合同法である。1つの合格乗数zに対して、このように自動的に4個の合格乗数が定まる。図3から図11の9個の合格乗数についても、請求項についても、これらは±z、±z−1として記されている。
現在の卓上型パソコンでは整数としては8バイト、倍精度整数が主流であって4倍精度16バイト整数の実用は難しい。(d、z)の実用周期がT’≒250ともなると、乱数を与える整数の積は容易に倍精度整数を越えてしまい、Fortranではこの程度の大きさの定数を入力するだけでエラーとされる事が多い。幸いな事に、実用周期が230以下の算合同法(d1、z1)、(d2、z2)を互いに素な部分法d1、d2で取って、法d=d1d2の乗算合同法(d、z)を想定するのが現在の実用新案の請求項である。この構造は、よく知られたcombined generators共通の次の計算手順を与える。まず部分乗算合同法(d1、z1)、(d2、z2)をスペクトル検定で優れた性能を持つ様に定め、それらを孫子の定理によって次で再び乗算合同法(d、z)に合成する
そして(d、z)のスペクトル検定に進む。但しこれは原則である。この程度の法の大きさでも3−6次検定は大幅に計算時間を増大させるので、当新案を与えた工夫では、まず高速な2次検定を一般化された(dj、(zj)^(ij))で1≦ij≦12にすべて合格するものだけを集めて、M≒10000個の合格部分乗算合同法(dj、zj)のリストLjを作成した。L1とL2は同じリストである場合も異なる場合もあり得る;現考案に関わるものでは両者同じである。これらリストL1、L2のすべての異なるなる乗数の対、全体で約M2個あるいはMC2≒M2/2のすべてをexhaustiveに取って合成乗算合同法(d、z)を作り、(d、z^i)の1≦i≦6に対する一般化2次スペクトル検定から始めて3次‐6次スペクトル検定を行って合格者9個の成功を得た。これはむしろ実験であって、他にも様々な試みが別種の法について、あるいは途中のスペクトル検定の行い方について試みられなければならない。しかしこの現在の実験から得られる重要な一般的見通しがある。現在の実験(計算時間は数ヶ月である)だけで見るとM2≒O(108)個の中からほぼ9個の合格者が見つかった。その確率は、優れたと考えられる部分乗算合同法だけを取ったにも関わらず、わずかO(10−7)ある。これはでたらめに取った法と乗数の組が優れている確率はほぼ0である事、そしてより重大な事としては、合成乗算合同法を工夫されたいかに多くのempirical testsで選別したとしても、優れたものにはとても当たらないだろう、empirical testsだけの評価ではとてもスペクトル検定で高評価のものには当たらないだろうと予測させる。残念ながら現在の考案者達には確定した断言はできないが。
よく知られた計算手法であるが、dが互いに素な2つの因数を持つ構造のcombined generators共通の利点の利用詳細も[考案の効果]として触れる。互いに素な法d1、d2があり、整数x、yが
で定められていれば、次が成り立つ:
(孫子の定理):互いに素な整数d1、d2に対するユークリッドの互除法によって
を満たす整数R1、R2が存在する。[数24]をzに対する連立合同式と見ると、その解としてのzは法dで一意であって次の形の表現を持つ:
成分の積xjyj等は(mod dj)での8バイト整数演算、倍精度演算の中で安全に行い得るし、関数mod(uv、w)は8バイト整数u、v、wから正確に8バイト整数の答を与える様に設計されている。故に積毎に(mod dj)を忠実に実行すれば卓上型パソコン上で倍精度内で算法は正確に実現する。現考案の最大の結果は、何よりも、今までの技術で行われる事のなかった事、combined generatorsをスペクトル検定で定め、倍精度乱数の優れた統計的性質を実現した事、である。ただそれを可能にする計算構造は互いに素な部分法の積を法に取る事であり、孫子の定理により倍精度以内での計算を可能にするというcombined generator共通の大きな利点である。
(孫子の定理):互いに素な整数d1、d2に対するユークリッドの互除法によって
終りにあたって、現考案の直接の目的ではないが、シミュレーションに携わる側からみた現考案の1つの重要な効果に付言する。乱数乗算合同法生成機構のスペクトル検定値、特に一般化された(d、zi)の2次検定値が十分大きいiまで機構の性能表示として与えられることは、生成機構の製造者、販売者そして消費者、利用者の公正な商取引として重要であろう。シミュレーションのために使用する研究者、技術者は一般化された(d、zi)の2次検定を調べ、乱数vkとvk+iとが独立としてよかろう、と確実にわかるiの上限が各自のシミュレーションプログラムに十分であるかどうか、を検討する事ができるしすべきである。逆に言えば、それができない生成機構を与えられても、行われたシミュレーションの結果に保証がない。優れた一般化2次検定評価をさらに大きいi乗まで持つ(d、z)の発見が望まれる。これは多くの人々の参加と終りのない努力を必要とする作業である。諸般の御共感御理解によるさらなる発展を願っている。
Claims (8)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016000958U JP3205276U (ja) | 2016-02-15 | 2016-02-15 | 一様独立乱数の乗算合同法高精度生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016000958U JP3205276U (ja) | 2016-02-15 | 2016-02-15 | 一様独立乱数の乗算合同法高精度生成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP3205276U true JP3205276U (ja) | 2016-07-21 |
Family
ID=56414025
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016000958U Expired - Fee Related JP3205276U (ja) | 2016-02-15 | 2016-02-15 | 一様独立乱数の乗算合同法高精度生成方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3205276U (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018136902A (ja) * | 2017-02-20 | 2018-08-30 | 宏 中澤 | 幾何学的構造上の一様独立乱数並列生成機構 |
-
2016
- 2016-02-15 JP JP2016000958U patent/JP3205276U/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018136902A (ja) * | 2017-02-20 | 2018-08-30 | 宏 中澤 | 幾何学的構造上の一様独立乱数並列生成機構 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Golomb | Shift register sequences: secure and limited-access code generators, efficiency code generators, prescribed property generators, mathematical models | |
Franco et al. | Elliptic genera of 2d (0, 2) gauge theories from brane brick models | |
Craven et al. | Fusion systems on small 𝑝-groups | |
Anber | Self-conjugate QCD | |
KR20210147473A (ko) | 쉘 정렬을 이용하여 동형 암호문에 대한 정렬을 수행하는 전자 장치 및 그 동작 방법 | |
Eikmeier et al. | The hyperkron graph model for higher-order features | |
US20160013932A1 (en) | Hash value generating device | |
Chapuy et al. | Generating functions of bipartite maps on orientable surfaces | |
Medina-Mardones | A computer algebra system for the study of commutativity up to coherent homotopies | |
JP2010040021A (ja) | 一様独立乱数生成方法 | |
Ørsted et al. | The Howe duality for the Dunkl version of the Dirac operator | |
CN105074799B (zh) | 哈希值生成装置 | |
JP3205276U (ja) | 一様独立乱数の乗算合同法高精度生成方法 | |
Ramani et al. | Coin-flipping, ball-dropping, and grass-hopping for generating random graphs from matrices of edge probabilities | |
Mayer | Periodic sequences of p-class tower groups | |
CN105991289A (zh) | Sm3密码算法的侧信道能量分析方法及装置 | |
Cable et al. | Exact and efficient simulation of concordant computation | |
JP2016224911A (ja) | 一様独立乱数生成方法 | |
US9778913B2 (en) | Method of generating uniform and independent random numbers | |
Sahi et al. | Quadratic Capelli operators and Okounkov polynomials | |
KR100954843B1 (ko) | 센서 모트에서의 블록 인덱싱 기반의 타원 곡선 암호 연산 방법, 그 장치 및 이를 기록한 기록 매체 | |
Jones | Fibonacci variations of a conjecture of Polignac | |
JP2014139762A (ja) | 一様独立乱数生成方法iii | |
Deng | Issues on computer search for large order multiple recursive generators | |
Nursalman et al. | Generalizations of n-Term Karatsuba Like Formulae in GF (2 n) with NAYK Algorithm. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160424 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 3205276 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |