JP4669979B2 - 一様独立乱数生成方法 - Google Patents

一様独立乱数生成方法 Download PDF

Info

Publication number
JP4669979B2
JP4669979B2 JP2008220460A JP2008220460A JP4669979B2 JP 4669979 B2 JP4669979 B2 JP 4669979B2 JP 2008220460 A JP2008220460 A JP 2008220460A JP 2008220460 A JP2008220460 A JP 2008220460A JP 4669979 B2 JP4669979 B2 JP 4669979B2
Authority
JP
Japan
Prior art keywords
prime
random number
sequence
odd
numbers
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
Application number
JP2008220460A
Other languages
English (en)
Other versions
JP2010040021A (ja
Inventor
宏 中澤
直也 中澤
Original Assignee
宏 中澤
直也 中澤
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 宏 中澤, 直也 中澤 filed Critical 宏 中澤
Priority to JP2008220460A priority Critical patent/JP4669979B2/ja
Priority to US12/379,964 priority patent/US8443021B2/en
Publication of JP2010040021A publication Critical patent/JP2010040021A/ja
Application granted granted Critical
Publication of JP4669979B2 publication Critical patent/JP4669979B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/582Pseudo-random number generators
    • G06F7/586Pseudo-random number generators using an integer algorithm, e.g. using linear congruential method

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)
  • Developing Agents For Electrophotography (AREA)

Description

本発明は一様独立乱数生成方法に係る。さらに詳しくは自然数の法d、前記dとは素な、すなわちdとは共通素因数2、3、5、・・・を持たない自然数の乗数z≧2、そして前記法dとは素な自然数の初期項nに基づいて自然数の列{n、n、・・・}を生成する乗算合同法、すなわちnのz倍をdで割った余りを次の整数nk+1とし、k=1、2、・・・に対して実数列{u=n/d}を一様独立乱数列の出力とする乱数生成方法、に関する。
コンピュータ上の一様独立乱数生成方法は再現性と移植可能性を求められる。再現性とはユーザの求めに応じ同一の乱数列を必要な回数だけ再発生し得る性質である。また移植可能性は生成方式を他のコンピュータに移し或いは他のプログラム言語に移植しても、全く同一の乱数列を発生する事を言う。これらはシミュレーションなど乱数列を用いるプログラムの作成、デバッグに必須である。
前項0002の要件はコンピュータ上の乱数生成方式に、下位の桁の切り捨てによる打切り誤差や、四捨五入による丸めの誤差などの扱いに統一した規格のない実数演算ではなく、それら誤差の存在しない整数演算のみを用いて次々に整数列を生成する事、実数演算は整数列の正規化に限る事、を求める。そのような方式の1つである乗算合同法は非特許文献1(1951)で始められた。それは整数列n、n、・・・を漸化合同式
Figure 0004669979
で生成する。ここでdは正の整数で法、zは2以上の整数で乗数、とそれぞれ呼ばれ、数4の合同式は前段の整数nと整数zとの積znを法の整数dで割った余りをnk+1とする事を意味する。nとzはともにdとは素に選ばれ、すべての番号k=1、2、・・・でnzは分母dで割り切れることはなく、常に0<n<dが成り立つ。一様独立乱数列としては0<u<1と正規化された実数u=n/dがk=1、2、・・・に対して用いられる。
従来の乗算合同法は2つの形の法を用いる。1つは大きい素数の法d=pを取り、素数pに対する原始根zを乗数に選ぶ。すなわちzのベキの列を法d=pで(言い換えるとd=pで割った余りの意味で1、2、・・・に)値を定めた巡回列と呼ばれる数列<z>≡{1、z、z、・・・}mod(p)が理論上最大の周期p−1を持つ、すなわち素数の法d=pと素な整数{1、2、・・・、p−1}を1度ずつすべて巡る構造のものである。このとき法d=pと素な任意の初期値nに対して、巡回列<z>のnに関する剰余類、と呼ばれる列n<z>≡{n1、z、n、・・・}mod(p)は巡回列<z>の出発点の取り方の違いに相当するだけのものとなり、乗算合同法乱数列は初期値nに関係しない同一で最長の周期p−1を持つ。今1つは法をd=2(i≧4)とし、ある整数mでz=8m+5と表される奇数z、すなわち法8で5に合同なz、を乗数とする構成である。この後者の法dと乗数zの場合も、zの作る乗算合同法乱数列は法と素な(すなわち奇数の)初期値nの選択に関係しない理論的に可能な最大値である周期2/4=2i−2を持つ。すなわちnが法8で1あるいは5と合同な場合には剰余類の列n<z>は法8で1および5と合同な総数2/4の奇数すべてを1度ずつ巡り、残るnが法8で3あるいは7と合同な場合には同数2/4の法8で3および7と合同な奇数のすべてを1度ずつ巡る構造を実現する。
段落0004のどちらの法dと対応する乗数zの選択でも、生成される列の相続く数の分布、すなわち目指す相続く数の独立性の実現度、は乗数zの取り方によって非常に大きく性質を変える。その中から優れた乗数zを選ぶ最も信頼できる技術としてスペクトル検定が案出され、非特許文献2(1986)の掃過的スペクトル検定、すなわち素数の法d=p=231−1でのあらゆる原始根zを掃過比較する性能テスト、による最優秀乗数の選定でその頂点を見た。また非特許文献3(1990)では法d=232でのすべての可能な乗数z≡5mod(8)の掃過的なスペクトル検定と、法248での部分掃過的なスペクトル検定が実施された。発見された優れた乗数の割合は法231−1では7.5×10−5%、他の法でも同程度以下であった。これらの結果は個別的な検定を経ずに乗数zを決定してよい生成方式を得る確率は大変小さいこと、検定を経ない乗数では信頼に足る乱数生成方法は実現できないことを示した。これはまた、乗算合同法一様独立乱数の周期の実用的上限は掃過的スペクトル検定が計算可能なdの最大値以下である、という工学技術的限界の存在を明らかにした。なお1990年当時と現在のコンピュータ速度を比べて、現在では法d=248での掃過的スペクトル検定は可能、と見積もられている。
乗算合同法のスペクトル検定の法d=2の場合は少し異なる方式となり、また合成数の法の成分としては実用に不適合な障害を持つので除く。奇素数の法d=pの場合、および本発明の法dが奇素数の積である場合には、行うべき計算は次の簡単な形に要約される。法dおよび乗数zに対してL次元行ベクトルのL個の組を考える:
Figure 0004669979
これらのベクトルの任意整数係数倍の和で作られるベクトルの中で、0ではない最小の正の長さを持つものを発見し、その長さκ (L)(z)を求める事が乗数zの法dでのL次スペクトル検定である。得られる数κ (L)(z)が大きいほど、乗数zの性能は高いと評価される。この簡明な探索が素数の法d=pでの原始根乗数zの場合ばかりでなく、本発明の関わるより一般の、例えば奇素数の積の法d=pの場合でも有効であること、それが素数の法の場合とは少し異なる検定内容を持つことは発明の開示の文献1で、そしてdによって定まる検定に必要な計算量の比較は発明の開示の文献2において明らかにされた。これらの発見によって、現在ではスペクトル検定が、合成数の法の場合も含めて、どのような検定内容と結果を与えるか、検定に要する計算量はどれほどか、の理解は得られている。
現在ー様独立乱数として利用可能な最も長い周期は、形は異なるが数理的には素数の法での原始根の巡回列に近い構造に基づく非特許文献4(1994)で与えられたメルセンヌツイスターの219937±32>105991である。メルセンヌツイスターはその周期の巨大さのためあらゆる検定が困難であり、生成される乱数列の性質について、特にパソコンから現在のスーパーコンピュータ上で重要と思われる1022程度の長さでの出力乱数の分布について、理論的な保障が存在しない。何らかの検定を確立する事は急務であるが、それは極めて難しい問題で未だ解決を見る事ができない。
【0008】
段落0007の状況の大きな転換は非特許文献5、6(2004)において発見された。発明の開示の文献1、2にも述べられたとおり、0からz−1までの値を取る整数の作る任意の列の十分な長さTの部分について、その各数は(素数pや2の形とは限らない)一般の自然数の法d、そしてdと素な適当な乗数zに基づく乗算合同法数列の対応する数で一様な誤差1/zで近似される区間[0、1)の数列を与える、という認識から得られた。この発見は、一様独立乱数列が自然物理現象に基づくものであろうと、或いはどのような計算方式に基づいて生成されたものであろうとすべて、素数と限らない合成数dを法とする乗算合同法の数列によって近似表現される、という事実を示すものである。認識は乗算合同法乱数発生方法の合成数への一般化に対応する数理構造の再考と、乗数の新しい選択基準の発見とを迫るものとなった。本特許に関わる研究は、この動機から誘発された。
【非特許文献1】D.H.Lehmer,“Mathemtical methods in large scale computing units.”Annals Comp.Lab.Harvard,Vol.26(1951),pp.141−146.
【非特許文献2】
Figure 0004669979
【非特許文献3】
Figure 0004669979
【非特許文献4】M.Matsumoto and T.Nishimura,“Mersenne Twister;A 623−dimensionally equidistributed uniform pseudorandom number generator,”ACM Transactions on Modeling and Computer Simulation,Vol,4(1994),254−266.
【非特許文献5】H.Nakazawa,“Coset representation of uniform and independent random number sequences I.Cosets associated with periodic sequences,”(August,2004,インターネット発表),(URL)http://www10.plala.or.jp/h−nkzw/.
【発明の開示】
[1]中澤宏,中澤直也,“長周期で高精度の一様独立乱数の設計:数の連が作る点列幾何の直積群構造及び格子構造に基づく制御.”
(March 9,2008,インターネット発表,0309.pdf),(URL)http://www10.plala.or.jp/h−nkzw/.
[2]中澤宏,中澤直也,“長周期で高精度の一様独立乱数の設計:数の連が作る点列幾何の直積群構造及び格子構造に基づく制御.”
(March 9−July 4,2008,インターネット発表,309704j.pdf),(URL)http://www10.plala.or.jp/h−nkzw/.
[1]中澤 宏,中澤直也,“長周期で高精度の一様独立乱数の設計:数の連が作る点列幾何の直積群構造及び格子構造に基づく制御.”(March 9,2008,インターネット発表),(URL)http://www10.plala.or.jp/h−nkzw/.
[2]H.Nakazawa and N.Nakazawa,“Designs of Uniform and Independent Random Numbers with Long Period and High Precision.”(March 9−July 8,2008,インターネット発表),(URL)http://www10.plala.or.jp/h−nkzw/.
発明が解決しようとする課題
この発明は上記段落0008の発見に基づき、段落0007の状況の改善を目指してなされた。目標は乗算合同法の法dを一般の合成数に拡張して、検定を伴う一様独立乱数列をコンピュータとシミュレーションの現状から望まれる1022以上の周期に対して実現可能とすることである。それは同時に、考え得る乱数生成方式の中で計算負荷が最小限の四則算法の利用によって、実装上最も計算の負荷が軽くかつ高速に演算を行う乱数生成方式を得る事も意味する。
段落0009の示唆によって乗算合同法の法dをこれまでの制限、dが素数であるかあるいは2の高次べきd=2であるか、を越えて一般化することは、dと素な整数全体が構成する既約剰余群やその部分群と呼ばれる構造の中で出力乱数の一様分布を実現する簡明な機構、すなわち乗数zが生成する巡回列<z>≡{1、z、z、・・・、z、・・・}が法dの整数の全体(から無視できる少数を除いたもの)を1周期に1度ずつ必ず巡る、という意味の巡回性から離れなければならないことを意味する。言い換えれば解決されるべき課題は、この一様性、独立性を合成数の法dで得る新しい乗算合同法の数理構造の発見とその利用方法の発明である。
段落0010の一様性などの確保の問題とは別に、乱数の相続く連を座標とする空間の点と対応させるとき、生成される点の全体が空間で持つ分布について、段落0004で説明された在来の乗算合同法にはなかった新しい問題が合成数の法では生じる。在来の乗算合同法での出力乱数列の合い続くL個の連をL次元空間の点の座標と考えれば、生成される点列は分布の一様性、独立性からは極めて低い確率でしか起き得ない対称性を持つ場合が多い。しかし単独奇素数の法の場合には問題を避けた出力乱数の簡明な利用方法、すなわち周期の小部分、高々1/2以下、の利用への制限、が対策として機能し、この対称性の問題は余り考慮の必要がなかった。しかし法dが合成数となると、このような簡便な対策では出力乱数列一様性の確保やスペクトル検定の効力と絡む性能の劣化が不可避となる。法の合成数への拡張を出力乱数の分布統計が在来の乗算合同法と同等以上の精度を持つように得るには、新しい構造理解を見出すこと、非蓋然的な対称性を制御し排除する工学技術設計の発見、が必須の課題である。
課題を解決するための手段
2つの異なる奇素数p、pをあまり値が近接せず、それらが作る整数q=(p−1)/2、q=(p−1)/2が偶数と奇数の組でかつ互いに素となる、すなわち共通素因数を持たない、ように選び、積d=pを法と定める。
奇素数の法pですべての原始根を掃過するスペクトル検定を行い、最上の性能の原始根乗数zを数個選ぶ。同様に奇素数の法pですべての原始根を掃過するスペクトル検定を行い、最良の性能の原始根乗数zを数個選ぶ。
合成数の法d=pの乗算合同法の乗数zとして、連立合同式
Figure 0004669979
を満たすzを中国剰余定理で求める。具体的にはpとpが互いに素である事に基づき1=Q+Qを満たす整数の任意の組Q、Qをユークリッドの互除法等で求め、整数Q+Qから2≦z<dの範囲で唯一の整数z≡Q+Qを法dで(割った余りとして)得る。
段落0014で構成された乗数zのベキの値を法d=pで0からd−1までに定めた巡回列<z>≡{1、z、z、・・・、z、・・・}mod(d)の周期は、2成分ベクトルの列{(1、1)、(z、z)、(z 、z )、・・・、(z 、z )、・・・}と同じ周期であり、それは段落0012のp、pの定め方によってp−1=2qとp−1=2qの最小公倍数のT=2qとなる。この単独乗数zに対する合成数の法d=pでのスペクトル検定は、計算時間の問題は別にして、発明の開示の文献1、2で示された所により単一の素数の法での原始根乗数の性能評価と完全に同じ意味の評価を与え、その手続きは段落0006に記された通りである。zに施すべき検定次数Lを検定計算が許容時間内に可能となるようにL=3、4、5、6の中から選ぶ。z単独に対して合成数の法d=pでのL次スペクトル検定を行い、得られた評価κ (L)(z)が十分大きければ(非特許文献2での採択基準はκ (L)(z)の逆数が理想値の125%以内)zを乗数として採択し、法d=p、乗数z、周期T=2q=(p−1)(p−1)/2の乗算合同法一様独立乱数生成方法を得る。検定結果κ (L)(z)が望む範囲内ではなければ棄却し、zの法pでの逆数とzとの組み合わせ、異なるzやzの組み合わせ、あるいは異なるpやpの積の法、を試みる。
上記段落0012−0015の手順は、実際は0015での検定次数Lを第1に決定して始める。もしL=4、5、6を望むなら、まず法dをL次の単独スペクトル検定が計算可能な大きさに定める。dはLの減少と共に増大する。次にp=d1/2の程度の大きさの奇素数pおよびpを段落0012の選択として行う。これらそれぞれを法とする6次の掃過的スペクトル検定は、計算量から一般的に計算可能性が予測(特にp=d1/2が248以下であれば掃過的スペクトル検定の可能性は実際保障)され、段落0013−0015の手続きがすべて遂行される。こうして、段落0012−0015の計算手順は法d=pでの掃過的スペクトル検定で必要となる計算量を大幅に軽減する計算上経済的な手段を与える。
上記段落0015の検定次数LがL=3でよいなら、段落0013での6次掃過的スペクトル検定が計算可能な素数の最大値をpと定めて、奇素数p、pをこのpの程度の大きさで余り近接しない値に取る。その後段落0013−0015の手順を行えば、段落0015での法d=p、乗数zの単独L次スペクトル検定の計算量は段落0013の掃過的スペクトル検定よりも計算量は小さく、検定次数Lを3と小さく取る限定ともあいまって計算手順は大幅に平易化され、遂行される。現在のコンピュータでは段落0012での奇素数p、pのそれぞれを大きさで248=1014.45程度までに取れば、掃過的スペクトル検定の計算可能性は保障される。また合成された法d=p、乗数zの乗算合同法は、段落0015に述べられた通り、周期としてT=2q=(p−1)(p−1)/2を持つ。従って段落0014での単独スペクトル検定次数をL=3でよいとすれば、得られる周期の大きさは十分に大きくなる。
奇素数pとpをq=(p−1)/2とq=(p−1)/2が互いに素になるように段落0012で選ぶ事によって、合成数の法d=pと段落0013−0014で定められた乗数zによる乗算合同法乱数は理論限界内最大の周期T=(p−1)(p−1)/2=2qを得る。この周期は巡回列<z>≡{1、z、z、・・・、z、・・・}mod(d)とその剰余類とが法d=pと素な整数の作る群を正確に2分する構造を与える。
さらに段落0012で選ばれた異なる奇素数pとpが同じ段落のqとqを一方は偶数、他方は奇数と定める事は、発明の開示1、2で示されたとおり、積の法d=pで生成される乱数列の相続く任意個数L≧2の連をL次元ユークリッド空間の点の座標と見るとき、これら点の集合が初期値nやLの選択に関係なく、統計的に不自然な対称性を持たない事を保障する。これは単一の素数pを法とする原始根の乗数zの巡回列が、発明の開示1、2で示されたように、その任意の相続くL連を座標とする点列が持つ対称性のために、全周期(1、2、・・・、p−1と合同な数のすべて)ではなくその正確な1/2のみ乱数として用いる事ができる、残る1/2は使う事ができない、という状況と完全に同等の構造を現出する。すなわち、数5のベクトルの整数係数1次結合で作られる最短ベクトルを求めて得られるスペクトル検定が、従来の単一素数の法の原始根乗数の乗算合同法に対するスペクトル検定と完全に同じ効力を発揮して、生成される数の分布の一様性や相続く数の統計的独立性についての判定を与える。
段落0019に記された本特許で請求する合成数の法の簡単な結果例を図1に示す。これは法d=2867=47×61、乗数としてz=678(法47でz≡20、法61ではz≡7)、初期値n=1の乗算合同法乱数列の数の2連を2次元平面でのxy座標(nk+1/d、n/d)とする点の1周期T=1380にわたるプロットを示す。q=(p−1)/2=23、q=(p−1)/2=30が偶奇性を異にするので、図は発明の開示1、2で示されたように正方形の中心に関して対称性を持たず、乱数として出現確率の低さを疑わせないものが実現し、全周期の使用を妨げる非蓋然性は見られない。外枠はたて、横軸とも−0.05から1.05までを表す。巡回列<z>およびそれと同数で共通な数のない剰余類からの2連の作る点を共に示した図2では1からp−1までの中にあるpあるいはpの倍数、総数でp+p−2=106個、の欠損が見える。スペクトル検定はこれらの欠損と0も含めたd=p個の点の全体配置を評価する。<z>あるいはその剰余類は評価される点全体のほぼ1/2であり、単一の奇素数を法とする原始根の作る巡回列で可能な使用法と完全に同じでスペクトル検定の効力も高く、図2のほぼ完全な一様分布状況の1/2の点を用いるものとして一様性の不安はない。請求項1が与える構成、すなわちq、qが異なる偶奇性を持つように奇素数pとpを選ぶことは最良の乗算合同法の形態を与える。
段落0019の指摘を外れた状況、すなわち2つの奇素数p、pが共に奇数のq=(p−1)/2、q=(p−1)/2を与える場合の例は図3−5に見られる。これらは合成数の法d=2537=43×59、乗数z=485、即ち法43でz≡12、法59でz≡13の場合で、共にそれぞれの法で優れた原始根乗数である。q=(p−1)/2=21、q=(p−1)/2=29が共に奇数なので、図は発明の開示1、2が示すように正方形の中心に関して対称になり、一様独立乱数と考えると蓋然性の低いものが実現している。初期値はn=1(法43でも法59でもn≡1)である。図3−5は一様独立乱数列出力の2連を平面の点の座標(nk+1/d、n/d)とするプロットで、外枠はたて横軸とも−0.05から1.05を表す。図3は巡回列<z>の周期T=2q=1218の1/2まで取った点列を示す。図4は1周期の点列の姿である。巡回列<z>とそれに入らない数nに対する剰余類n<z>からの数の2連が与える点をすべて記したものが図5である。図5の点全体は、pとpの倍数、総数p+p−2=100、に相当する空席以外は正方形を均等に埋め尽くす。乗算合同法巡回列<z>で実現される図4の点分布がその半分である事は段落0021と同様で、これが乱数列として採択できれば空間を一様に満たす点列の1/2として一様性の観点からは問題はなくなる。しかし図4の点集合の正方形の中心に関する対称性は非蓋然的な相関を示すものであり、乱数列としての仮説は却下され採択できない。そのさらに1/2に限った図3の点は、一様とは言えない分布を持つ図4の点集合の1/2であるから、一様性に信頼が置けない。一様独立乱数列として、この図3の点列を生成する乱数列を用いることは好ましくない。明らかに、請求項1の構成は2つの奇素数の積の法での最良の形態を与えている。
段落0012の異なる奇素数p、pは、例えば双子素数のように近接したものは避けて選ぶ。これによって段落0014で構成される乗数zの性能の悪化、成分乗数zとzのベキのそれぞれの法での周期の近接による唸りあるいはモワレ縞の様な現象、をスペクトル検定を経ずに予知して、計算量の増大を避ける事ができる。
段落0012−0015の手順は段落0012において異なる奇素数pとpの1つ、例えばpを2の形で置き換えても遂行可能である。しかし発明の開示の文献1、2で初めて指摘したように、この選択は残る奇素数pのベキのすべての偶数乗の間、すべての奇数乗の間に相関を惹き起こし、zが生成する乗算合同法数列の独立性を大きく毀損する。特にこの悪い性質はスペクトル検定では検知できないので、この様な選択は決して行ってはならない。
段落0012−0015の手順は段落0012において3以上のs個の異なる奇素数p、p、・・・、pを、q=(p−1)/2がj=1、2、・・・、sのすべてについて互いに素でその中の1つは偶数であり他はすべて奇数、を満たすように選んで作られる合成数の法d=p・・・pでも考え得る。実際j=1、2、・・・、sのそれぞれについて、法pでの掃過的スペクトル検定で得られる優れた原始根乗数zを採り、乗数zをj=1、2、・・・、sのそれぞれについてz≡zmod(p)によって中国剰余定理で定まるものとすれば、法d=p・・・pで乗数をzとする乗算合同法は周期T=2q・・・qを獲得し、巡回列<z>やその剰余類のL連が作る点はL次元空間で非蓋然的な対称性を持たないものとなる事が特許の開示1、2で示されている。しかしこの場合巡回列<z>は法dとは素な数全体の1/2s−1の部分しか占めず、一方段落0006の数5と同じベクトルが与える最短長さの探索で得られるスペクトル検定はdと素な数の全体を含む座標を持つ点の配置を評価する。ゆえにs≧3の増大と共に検定の有効性は小さくなり、一方周期Tを増大させる事はスペクトル検定の計算可能性で限界を与えられていて実利は薄い。この意味からも請求項1のように2つの異なる奇素数の積の法を用いる構成は最良の技術的選択である。
構成された乗算合同法は、すべての乱数生成方法の中で最も高速な四則演算の最小回数の利用で構成されるため、コンピュータに与える計算負荷は乱数のすべての生成方式の中で最小で、従って最高速での乱数生成を保障する。任意の乱数列を近似する能力とこの計算上の最良性は、本発明の産業上科学技術上の大きな利用可能性、必要性を意味する。
目的とする法dに対し段落0016での検定次数Lの選択を6とする場合、段落0012で選ぶ奇素数p、pをd1/2の大きさとする事によって法d=pでのよい乗算合同法乱数生成方法を準備するための計算量は従来の法dでの掃過的検定の計算量に比べて大幅に縮小される。この計算上の経済的効果は大きく、本発明の産業科学技術上の利用可能性は大きい。
目的とする法dに対して段落0016での検定次数Lを3と選ぶ場合、段落0013で掃過的検定が計算可能な最大の奇素数pとpを、例えば248程度の大きさ、に選ぶ事によって、得られる法d=pの下で達成される周期は極めて大きくなる。このような長周期で検定を経た一様独立乱数列の使用可能性は計算上の大きな進歩であり、本発明の産業科学技術上の利用可能性は極めて大きい。
本特許で請求する合成数の法で乗算合同法乱数列が生成する2連の平面の点としての全周期T=1380のプロット。法d=2867=47×61、乗数z=678、周期T=1380、初期値1。正方形の中心に関して非対称。 図1の乱数列上に、これらに属さない剰余類からの乱数列の2連の点列を加えた全体。空席106個は47および61の倍数の座標に相当。 本特許の請求項から外れる合成数の法d=2537=43×59、乗数z=485、初期値1の乗算合同法乱数列の2連の半周期の平面図。 図3と同じ法d=2537、乗数z=485での乱数列の2連の点の全周期T=1218にわたるプロット。正方形の中心に関して対称。 図4の上に乱数列に属さない剰余類からの2連が作る点列を加えた全体43および59の倍数を座標とする100個の点が空席。

Claims (1)

  1. 情報処理装置上の一様独立乱数生成方法であって、生成手順として
    2つの異なる奇素数p、pで整数q=(p−1)/2及びq=(p−1)/2が互いに素であり、かつq、qの1つは偶数、他は奇数であるものを選ぶステップ、
    整数dを前記奇素数p、pの積d=pと選ぶステップ、
    前記奇素数p、pをそれぞれ法とする原始根z、zを選ぶステップ、
    前記p、p、z、zが与える連立合同式
    Figure 0004669979
    の解として前記dを法として一意に定まるdと素な整数zを取るステップ、
    整数nで前記dとは素な任意のものを選ぶステップ、
    前記dと素な整数の作る法dの既約剰余群の中で前記zが生成し前記nから出発する巡回列、即ち整数列{n、n、n、・・・}であって線形漸化合同式
    Figure 0004669979
    が定める列、を算出するステップ、
    一様独立乱数を与える実数列{u、u、u、・・・}を除法等式
    Figure 0004669979
    を実現して出力するステップ、
    を有する方法、或いは前記法dの既約剰余群と同型な群を用いて前記の一様独立乱数列{u、u、u、・・・}を得る上記諸ステップと同等な方法。
JP2008220460A 2008-08-02 2008-08-02 一様独立乱数生成方法 Expired - Fee Related JP4669979B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008220460A JP4669979B2 (ja) 2008-08-02 2008-08-02 一様独立乱数生成方法
US12/379,964 US8443021B2 (en) 2008-08-02 2009-03-05 Method of generating random numbers

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008220460A JP4669979B2 (ja) 2008-08-02 2008-08-02 一様独立乱数生成方法

Publications (2)

Publication Number Publication Date
JP2010040021A JP2010040021A (ja) 2010-02-18
JP4669979B2 true JP4669979B2 (ja) 2011-04-13

Family

ID=41609417

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008220460A Expired - Fee Related JP4669979B2 (ja) 2008-08-02 2008-08-02 一様独立乱数生成方法

Country Status (2)

Country Link
US (1) US8443021B2 (ja)
JP (1) JP4669979B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012203898A (ja) * 2011-03-28 2012-10-22 Hiroshi Nakazawa 一様独立乱数生成方法ii

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103135961A (zh) * 2011-11-28 2013-06-05 中泽宏 基于具有两个奇素因子的模数生成乘同余随机数的方法
CN103197912B (zh) * 2013-03-21 2016-02-10 北京理工大学 一种用于深空通信协议编码的均匀随机数生成方法
US20140337399A1 (en) * 2013-05-13 2014-11-13 Hiroshi Nakazawa Method of generating random numbers iii
US9778913B2 (en) 2013-07-08 2017-10-03 Hiroshi Nakazawa Method of generating uniform and independent random numbers
JP2015035197A (ja) * 2013-07-08 2015-02-19 宏 中澤 一様独立乱数生成方法
JP2015118680A (ja) * 2013-12-16 2015-06-25 宏 中澤 乱数乗算合同法の高次スペクトル検定方法
US20170004506A1 (en) * 2015-06-14 2017-01-05 Tender Armor, Llc Security for electronic transactions and user authentication

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4944009A (en) * 1988-02-25 1990-07-24 Massachusetts Institute Of Technology Pseudo-random sequence generator
US6691141B2 (en) * 2001-04-13 2004-02-10 Science Applications International Corp. Method and apparatus for generating random number generators
US7149763B2 (en) * 2002-09-09 2006-12-12 Gemplus Method for generating a random prime number within a predetermined interval
US7921145B2 (en) * 2007-05-22 2011-04-05 Harris Corporation Extending a repetition period of a random sequence
US8588412B2 (en) * 2008-05-23 2013-11-19 Red Hat, Inc. Mechanism for generating pseudorandom number sequences
US20120290632A1 (en) * 2011-05-11 2012-11-15 Hiroshi Nakazawa Method of generating random numbers ii

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012203898A (ja) * 2011-03-28 2012-10-22 Hiroshi Nakazawa 一様独立乱数生成方法ii

Also Published As

Publication number Publication date
US8443021B2 (en) 2013-05-14
JP2010040021A (ja) 2010-02-18
US20100030829A1 (en) 2010-02-04

Similar Documents

Publication Publication Date Title
JP4669979B2 (ja) 一様独立乱数生成方法
Freeman et al. A taxonomy of pairing-friendly elliptic curves
Doröz et al. Evaluating the hardware performance of a million-bit multiplier
TW200521647A (en) High resolution synthesizer with improved signal purity
Sun et al. Construction of column-orthogonal designs for computer experiments
Meher et al. Low-Latency, Low-Area, and Scalable Systolic-Like Modular Multipliers for $ GF (2^{m}) $ Based on Irreducible All-One Polynomials
Bonča et al. Numerical approach to the low-doping regime of the t-J model
Xavier Pipemsm: Hardware acceleration for multi-scalar multiplication
Mao et al. F-DNA: Fast convolution architecture for deconvolutional network acceleration
He et al. Compact coprocessor for KEM saber: Novel scalable matrix originated processing
Buchweitz et al. Hilbert–Kunz functions of cubic curves and surfaces
WO2013006804A1 (en) Rare event sampling
Wang et al. TCPM: A reconfigurable and efficient Toom-Cook-based polynomial multiplier over rings using a novel compressed postprocessing algorithm
Yu et al. Approximate divider design based on counting-based stochastic computing division
JP2021531572A (ja) Mac回路中の異なるカーネルを使用してデータのセットに対して連続するmac演算を実施すること
Etzion et al. Automorphisms of codes in the Grassmann scheme
Li et al. A dual heuristic for mixed integer programming
Abdeselam et al. Porting an aggregation-based algebraic multigrid method to GPUs
Deng et al. Improving random number generators in the Monte Carlo simulations via twisting and combining
Ibrahim et al. High-performance, low-power architecture for scalable radix 2 montgomery modular multiplication algorithm
Iwamura et al. High-speed implementation methods for RSA scheme
Chakraborty et al. A multiplier less VLSI architecture of modified lifting based 1D/2D DWT using speculative adder
Zheng et al. Scloud: public key encryption and key encapsulation mechanism based on learning with errors
JP5261840B2 (ja) 一様独立乱数生成方法ii
Deng et al. 64-Bit and 128-bit DX random number generators

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100608

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100616

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100811

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101214

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101220

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4669979

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20200128

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees