(57)【要約】【課題】      一般的な電子機器に搭載されたＡ／Ｄ変換器を利用し、予測困難性を高めた乱数の系列を生成することが可能な乱数生成装置等を提案する。【解決手段】  乱数生成装置１は、乱数の系列を生成するものである。乱数生成装置１において、β変換部３は、β変換を用いて、一つ又は複数のアナログ信号を一つ又は複数のデジタル信号に変換するものである。β進展開の繰り返し演算は、区間力学系の写像で記述でき、その実数値軌道はアトラクターとなる。演算部７は、β変換部３を乱数源として利用し、β変換部３が生成した複数の論理値に対して演算を行って乱数の系列を生成する。【選択図】  図１
2014137807.tif 000002
【特許請求の範囲】
【請求項１】
乱数の系列を生成する乱数生成装置であって、
β変換を用いて、一つ又は複数のアナログ信号を一つ又は複数のデジタル信号に変換するβ変換部と、
前記β変換部が生成した複数の論理値に対して演算を行って前記乱数の系列を生成する演算部を備えることを特徴とする乱数生成装置。
【請求項２】
前記演算部は、前記β変換部が生成した４つ以上の論理値に対して演算を行うものである、請求項１記載の乱数生成装置。
【請求項３】
前記演算部は、前記複数の論理値に対して論理演算を行うものである、請求項１又は２に記載の乱数生成装置。
【請求項４】
前記β変換部は、基数β（１＜β≦２）、初期値ｘ0及び閾値νに対して、式(eq2)のｘlを用いて、式(eq1)によって符号ビットｂl（ｌは、自然数）を生成するものであり、
前記演算部が演算を行う前記複数の論理値は、前記基数β、前記初期値ｘ0、前記閾値ν及びβを乗じた回数の少なくとも一つが異なる、請求項１から３のいずれかに記載の乱数生成装置。
【数１】
2014137807.tif 000013
【請求項５】
前記β変換部は、複数の個別β変換部を含み、
前記複数の個別β変換部は、前記基数β、前記初期値ｘ0及び前記閾値νの少なくとも一つが異なるものであり、
前記演算部は、前記複数の個別β変換部によって生成された論理値に対して演算を行うものである、請求項４記載の乱数生成装置。
【請求項６】
前記β変換部が生成した一つ又は複数の論理値を遅延する遅延部を備え、
前記論理演算部は、少なくとも、前記β変換部から生成された一つの論理値及び当該一つの論理値よりも前に生成されて前記遅延部により遅延された一つ又は複数の論理値に対して前記論理演算を行うことにより、βを乗じた回数が異なって生成された複数の論理値に対して前記論理演算を行うものである、請求項４又は５に記載の乱数生成装置。
【請求項７】
乱数の系列を生成する乱数生成方法であって、
β変換部は、β変換を用いて、一つ又は複数のアナログ信号を一つ又は複数のデジタル信号に変換するものであり、
前記β変換部が、複数の論理値を生成する論理値生成ステップと、
演算部が、前記β変換部が生成した前記複数の論理値に対して演算を行って前記乱数の系列を生成する演算ステップを含むことを特徴とする乱数生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、乱数生成装置及び乱数生成方法に関し、特に、Ａ／Ｄ変換器を利用した乱数生成装置等に関する。
【背景技術】
【０００２】
乱数は、例えばネットワーク上のセキュリティを確保するために、非常に重要である。セキュリティに用いられる乱数に求められる性質は、その予測困難性である。また、同時に、長周期性や乱数生成の高速さ、生産コストの低下、乱数生成チップの小型化も必要である。
【０００３】
乱数は、決定論的な計算から求められる擬似乱数と、物理現象を観測して生成される物理乱数に大別される。
【０００４】
疑似乱数生成法として、Lehmer法が知られている。Lehmer法は、数(1)の漸化式で与えられるものである。ここで、ａ、ｂ及びｍは、適切に選択された整数である。初期値Ｘ0が与えられると、その出力系列Ｘnは｛0，1，…，m-1｝に値をとる乱数となる。
【０００５】
【数１】
2014137807.tif 000003
【０００６】
さらに、乱数生成法として、シフトレジスタ系列を用いることが知られている。例えば、Tausworth系列やLewis-Payne系列である。Tausworth系列は、Ｍ系列によって生成された２値系列の中から、所定の個数を飛ばして続く複数のビットの２進展開により得られる数列である（非特許文献１参照）。Lewis-Payne系列は、Ｍ系列によって生成された２値系列の中から、Ｌ個の異なる遅れ時間のビットから生成される複数ビット整数の系列である（非特許文献２参照）。
【０００７】
Ａ／Ｄ変換器は、アナログ信号をデジタル信号へ変換するものである。アナログ信号は、連続時間、連続値データであり、例えば、音声や画像信号等である。デジタル信号は、離散時間、離散値データである。Ａ／Ｄ変換器は、標本化器及び量子化器の２つの部分から構成される。図２２は、Ａ／Ｄ変換器における処理の一例を示す図である。図２２（ａ）、（ｂ）及び（ｃ）は、それぞれ、標本化、量子化及びＡ／Ｄ変換による処理の一例を示す。
【０００８】
Ａ／Ｄ変換の一例は、ＰＣＭ（Pulse  Code  Modulation）である。ＰＣＭは、アナログ値を有限の２進数に変換する手法である。
【０００９】
また、Ａ／Ｄ変換の他の一例は、β変換である。β変換器は、Daubechiesらが2002年に提案した、β進展開に基づく増幅率βと増幅器の閾値νの量子化器からなる新しいＡ／Ｄ変換器である（非特許文献２参照）。β変換器は、小型のCMOS回路への実装と性能評価が報告されている（非特許文献３参照）。β展開は、入力値ｘ0に対して、そのＬビット推定値^ｘ0は、式(2)で表される。ただし、ｂlは、符号ビットと呼ばれ、式(3)である。ｘlは、式(4)である。ここで、βとνの取ることのできる値の範囲は、１＜β≦２及び１≦ν≦１／（β−１）である。β＝２のとき、β変換器はＰＣＭに一致する。β変換器は、例えば、入力ｚ0＝ｙ∈｛０，１｝、ｚi＝０（ｉ＞０）に対して、増幅率βの増幅器と揺らぎを持つ閾値νの比較器Ｑνによって構成される。
【００１０】
ＰＣＭにおいて、実際に回路を用いて実現するには、電圧を正確に２倍にする増幅器、閾電圧１／２との大小比較する比較器、基準電圧１を減算する回路が必要となる。特に、現在、半導体回路の微細化により、２進ビットの判定を行う比較器の閾値揺らぎが相対的に増大しており、看過できない問題となっている。ＰＣＭには、比較器内の閾値の揺らぎによりアナログ回路内の電圧値が発散してしまうことが問題となる。
【００１１】
β変換器は、量子化器の閾値νに揺らぎが存在する場合も、正確に入力値ｘ0を推定することができ、増幅率βに揺らぎが存在してもｘ0と１−ｘ0をそれぞれβ変換器に入力したときの出力から揺らぎを含んだ増幅率を推定することができる（非特許文献３参照）。
【００１２】
また、ν＝｛１＋１／（β−１）｝／２＝β／２（β−１）のとき、このβ写像はCautious写像と呼ばれ、ν＝１及びν＝１／（β−１）のときは、それぞれ、Greedy写像及びLazy写像と呼ばれる。図２３（ａ）、（ｂ）及び（ｃ）は、それぞれ、Greedy写像、Cautious写像及びLazy写像に対してのアトラクターを示す。
【００１３】
【数２】
2014137807.tif 000004
【００１４】
β変換器では、式(5)の漸化式に従う実数値を閾値関数により２値化した系列が出力される。ただし、ｘn∈［0，1）である。
【００１５】
【数３】
2014137807.tif 000005
【００１６】
また、単一のβ変換器から生成される０，１系列は、Ａ／Ｄ変換への入力信号の量子化値のβ進展開なので、一般に、出力頻度が偏る。
【先行技術文献】
【特許文献】
【００１７】
【特許文献１】R．C．Tausworthe，"Random  numbers  generated by linear recurrences modulo two"，Math. Of Comput., 19, pp.201-209, 1965.
【特許文献２】T．G．Lewis、外１名，"Generalized feedback shift register pseudo-random numberalgorithm"，J. Assoc. Comut. Math. 20, pp.593-619,1973.
【特許文献３】I．Daubechies、外３名著，“Beta  expansions：a  new  approach  to  digitally  corrected  A/D  conversion，”Proc．IEEE  Int．Symp．Circ．Syst．2002（IS-CAS2002），vol.2，pp．784-787，2002．
【特許文献４】T．Maruyama、外２名著，“Robust  Switched-Capacitor  ADC  based  on  β-expansion，”2011  IEEJ  Int．Analog  VLSI  Workshop，Bali，Indonesia，pp.171-175，Nov．2011．
【発明の概要】
【発明が解決しようとする課題】
【００１８】
従来の乱数生成器は、主として、専用部品により構成するものとされていた。そのため、乱数生成器は、部品の大幅な追加が前提となっていた。
【００１９】
Ａ／Ｄ変換器は、例えば、通信装置、テレビ、オーディオ機器など、多くの電子機器に必須な装置である。現在、装置の小型化に伴い、半導体も小さくなっている。特に、β変換器は、精度と安定性を両立することができる。そのため、β変換器は、超小型のCMOS回路で実装することが可能である。
【００２０】
しかしながら、単一のβ変換器から生成される０，１系列は、出力頻度が偏る。そのため、予測困難性が低くなることが予想される。
【００２１】
そこで、本願発明は、一般的な電子機器に搭載されたＡ／Ｄ変換器を利用し、予測困難性を高めた乱数の系列を生成することが可能な乱数生成装置等を提案することを目的とする。
【課題を解決するための手段】
【００２２】
本願発明の第１の観点は、乱数の系列を生成する乱数生成装置であって、β変換を用いて、一つ又は複数のアナログ信号を一つ又は複数のデジタル信号に変換するβ変換部と、前記β変換部が生成した複数の論理値に対して演算を行って前記乱数の系列を生成する演算部を備えることを特徴とするものである。
【００２３】
本願発明の第２の観点は、第１の観点の乱数生成装置であって、前記演算部は、前記β変換部が生成した４つ以上の論理値に対して演算を行うものである。
【００２４】
本願発明の第３の観点は、第１又は第２の観点の乱数生成装置であって、前記演算部は、前記複数の論理値に対して論理演算を行うものである。
【００２５】
本願発明の第４の観点は、第１から第３のいずれかの観点の乱数生成装置であって、前記β変換部は、基数β（１＜β≦２）、初期値ｘ0及び閾値νに対して、式(7)のｘlを用いて、式(6)によって符号ビットｂl（ｌは、自然数）を生成するものであり、前記演算部が演算を行う前記複数の論理値は、前記基数β、前記初期値ｘ0、前記閾値ν及びβを乗じた回数の少なくとも一つが異なるものである。
【００２６】
本願発明の第５の観点は、第４の観点の乱数生成装置であって、前記β変換部は、複数の個別β変換部を含み、前記複数の個別β変換部は、前記基数β、前記初期値ｘ0及び前記閾値νの少なくとも一つが異なるものであり、前記演算部は、前記複数の個別β変換部によって生成された論理値に対して演算を行うものである。
【００２７】
本願発明の第６の観点は、第４又は第５の観点の乱数生成装置であって、前記β変換部が生成した一つ又は複数の論理値を遅延する遅延部を備え、前記論理演算部は、少なくとも、前記β変換部から生成された一つの論理値及び当該一つの論理値よりも前に生成されて前記遅延部により遅延された一つ又は複数の論理値に対して前記論理演算を行うことにより、βを乗じた回数が異なって生成された複数の論理値に対して前記論理演算を行うものである。
【００２８】
本願発明の第７の観点は、乱数の系列を生成する乱数生成方法であって、β変換部は、β変換を用いて、一つ又は複数のアナログ信号を一つ又は複数のデジタル信号に変換するものであり、前記β変換部が、複数の論理値を生成する論理値生成ステップと、演算部が、前記β変換部が生成した前記複数の論理値に対して演算を行って前記乱数の系列を生成する演算ステップを含むことを特徴とするものである。
【００２９】
【数４】
2014137807.tif 000006
【発明の効果】
【００３０】
本願発明の各観点によれば、多くの装置に実装されているＡ／Ｄ変換器を利用して、わずかな付加回路を足すだけで、乱数の系列を発生させることが可能になる。特に、β変換を用いたＡ／Ｄ変換器を利用することにより、精度と安定性を両立させることが可能になる。β変換器の構成要素は、式(5)にあるように、乗算器、modulo演算器及びフィードバック構造として捉えることができる。この点で、Lehmer法などと同様である。さらに、単一の論理値ではなく、複数の論理値に対して論理演算を行うことにより、予測困難性の低下を回避することが可能になる。
【００３１】
さらに、第２の観点にあるように、４つ以上の論理値を利用して乱数の系列を生成することにより、予測困難性を十分に低下させないようにすることが可能になる。また、第３の観点にあるように、演算部は、論理演算を行うことにより、付加回路は単純なもので足りる。
【００３２】
さらに、第４の観点にあるように、論理演算部が論理演算を行う複数の論理値は、β変換に使用する基数β、初期値ｘ0及び閾値ν、並びに、βを乗じた回数の少なくとも一つが異なるものを使用することにより、予測困難性を十分に低下させないようにすることが可能になる。
【００３３】
第５の観点によれば、基数β、初期値ｘ0及び閾値νの少なくとも一つを異にする複数のβ変換部により生成することにより、基数β、初期値ｘ0及び閾値νの少なくとも一つを異にする複数の論理値の生成を実現することができる。
【００３４】
第６の観点によれば、遅延部を利用して、以前に生成した論理値を利用することにより、βを乗じた回数が異なる複数の論理値の生成を実現することができる。
【００３５】
なお、例えば、複数の論理値のうち、一部を複数のβ変換部が生成したものとし、他の一部を遅延部により遅延したものとするように、本願発明の第５の観点と第６の観点を組み合わせたものであってもよい。
【図面の簡単な説明】
【００３６】
【図１】本願発明の実施の形態に係る乱数生成装置の構成の一例を示すブロック図である。
【図２】β変換器の回路図の一例を示す図である。
【図３】図１の乱数生成装置１の動作の一例を示すフロー図である。
【図４】βS系列生成器（Ｓは、Summationの意）の構成の一例を示す図である。
【図５】βD系列生成器（Ｄは、Delayの意）の構成の一例を示す図である。
【図６】排他的論理和をとらない場合の１の頻度分布を示す図である。
【図７】βS系列における１の頻度分布を示す図である。
【図８】βD系列における１の頻度分布を示す図である。
【図９】排他的論理和をとらない場合の自己相関値を示す図である。
【図１０】βS系列における自己相関値を示す図である。
【図１１】βD系列における自己相関値を示す図である。
【図１２】排他的論理和をとらない場合の自己相関値の分散を示す図である。
【図１３】βS系列における自己相関値の分散を示す図である。
【図１４】βD系列における自己相関値の分散を示す図である。
【図１５】排他的論理和をとらない場合の連の度数分布を示す図である。
【図１６】βS系列における連の度数分布を示す図である。
【図１７】βD系列における連の度数分布を示す図である。
【図１８】ブロック単位の頻度検定の成功率（βS）を示す図である。
【図１９】ブロック単位の頻度検定の成功率（βD）を示す図である。
【図２０】検定結果をまとめた第１の表である。
【図２１】検定結果をまとめた第２の表である。
【図２２】Ａ／Ｄ変換器における処理の一例を示す図である。
【図２３】（ａ）Greedy写像、（ｂ）Cautious写像及び（ｃ）Lazy写像に対してのアトラクターを示す図である。
【発明を実施するための形態】
【００３７】
以下では、図面を参照して、本願発明の実施例について説明する。なお、本願発明は、この実施例に限定されるものではない。
【実施例１】
【００３８】
図１は、本願発明の実施の形態に係る乱数生成装置の構成の一例を示すブロック図である。乱数生成装置１は、β変換部３（本願請求項の「β変換部」の一例）と、論理値記憶部５と、演算部７（本願請求項の「演算部」の一例）と、乱数系列記憶部９を備える。
【００３９】
β変換部３は、β変換を用いて、アナログ信号をデジタル信号へ変換するものである。β変換器は、β進展開に基づく増幅率βと増幅器の閾値νの量子化器からなるＡ／Ｄ変換器である。β展開は、入力値ｘ0に対して、そのＬビット推定値^ｘ0は、式(8)で表される。ただし、ｂlは、符号ビットと呼ばれ、式(9)である。ｘlは、式(10)である。ここで、βとνの取ることのできる値の範囲は、１＜β≦２及び１≦ν≦１／（β−１）である。β＝２のとき、β変換器はＰＣＭに一致する。β進展開の繰り返し演算は、区間力学系の写像で記述でき、その実数値軌道はアトラクターとなる。β変換器内で観測されるアトラクターは、停止することなく動き続ける。そのため、本願発明では、これを乱数源として利用する。β変換器は、CMOS回路で実装できる。そのため、β変換器は、乱数生成器としては小型といえる。
【００４０】
図２は、β変換器の回路図の一例を示す図である。β変換器２１は、第１加算器２３と、増幅器２５と、比較器２７と、第２加算器２９と、遅延部３１を備える。入力は、ｚ0＝ｙ∈｛0，1｝、ｚi＝０（ｉ＞０）である。第１加算器２３は、入力ｚi（ｉ≧０）と遅延部３１の出力とを加算する。増幅器２５は、増幅率βであり、第１加算器２３の出力をβ倍する。比較器２７は、閾値νの比較器Ｑνであり、増幅器２５の出力ｕn+1に対して、νよりも小さい場合には０を出力し、ν以上の場合には１を出力する者である。閾値νは、揺らぎを持つ。第２加算器２９は、増幅器２５の出力と、比較器２７の出力を−１倍したものを加算する。遅延部３１は、第２加算部２９の出力を遅延して、第１加算器２３に出力する。
【００４１】
【数５】
2014137807.tif 000007
【００４２】
β変換器では、式(11)の漸化式に従う実数値を閾値関数により２値化した系列が出力される（非特許文献１参照）。ただし、ｘn∈［0，1）である。そのため、β変換器の構成要素は、乗算器、modulo演算器及びフィードバック構造として捉えることができる。この点で、Lehmer法などと同様である。
【００４３】
【数６】
2014137807.tif 000008
【００４４】
図１の論理値記憶部５は、Ａ／Ｄ変換部３により生成された符号ビットを記憶する。
【００４５】
図１の論理演算部７は、論理値記憶部５に記憶された複数の符号ビットに対して論理演算を行う。単一のβ変換器から生成される０，１系列は、出現頻度に偏りがある。そのため、単一のβ変換器は、擬似乱数生成器として利用できない。そこで、演算部が、複数の論理値の演算を行うことにより、良質な乱数を得ることができる。以下では、演算部７が、出力の排他的論理和をとる場合を例とするが、これに限らず、他の論理演算等でもよい。
【００４６】
図１の乱数系列記憶部９は、論理演算部７による演算結果を記憶する。
【００４７】
図３は、図１の乱数生成装置１の動作の一例を示すフロー図である。β変換部３内で観測されるアトラクターは、停止することなく動き続ける。β変換部３は、符号ビットを出力する（図３のステップＳＴ１）。生成された符号ビットは、論理値記憶部５に記憶される。演算部７は、論理値記憶部５に記憶された符号ビットに対して、演算を行う（図３のステップＳＴ２）。演算結果は、乱数系列記憶部９に記憶される。
【００４８】
続いて、図４及び図５を参照して、β変換器による乱数生成について、２つの具体的な構成例を示す。
【００４９】
図４は、βS系列生成器（Ｓは、Summationの意）の構成の一例を示す図である。図４のβS系列生成器は、複数の個別β変換器（本願請求項の「個別β変換器」の一例）の出力の排他的論理和(EXOR)を出力する。それぞれの個別β変換器は、独立にβ変換を行うものであり、i)β値，ii)閾値，iii)初期値を任意に設定する。後に説明する検定では、βs系列は、同一のβ値及び閾値を用い、異なる初期値から発生させた複数の出力の排他的論理和をとったものを用いている。
【００５０】
図４のβS系列生成器４１は、Ｌ個の個別β変換器４３1，…，４３L（本願請求項の「個別β変換部」の一例）と、演算部４５を備える。各個別β変換器４３s（ｓは、Ｌ以下の自然数）は、第１加算器４７sと、増幅器４９sと、第２加算器５１sと、遅延部５３sと、比較器５５sを備える。各個別β変換器４３sの入力は、ｚ0(s)＝ｙ∈｛0，1｝、ｚi(s)＝０（ｉ＞０）である。各個別β変換器４３sは、図２のβ変換器と同様に動作する。演算部４５は、複数の個別β変換器４３の出力の排他的論理和を演算する。これにより、βS系列を得ることができる。
【００５１】
図５は、βD系列生成器（Ｄは、Delayの意）の構成の一例を示す図である。図５のβD系列生成器は、単一のβ変換器の出力を遅延させたもののいくつかの排他的論理和を出力する。
【００５２】
図５のβD系列生成器６１は、β変換器６３（本願請求項の「β変換部」の一例）と、遅延部６５と、演算部６７を備える。β変換器６３は、第１加算器７１と、増幅器７３と、第２加算器７５と、遅延部７７と、比較器７９を備える。β変換器６３の入力は、ｚ0＝ｙ∈｛0，1｝、ｚi＝０（ｉ＞０）である。β変換器６３は、図２のβ変換器と同様に動作する。遅延部６５は、β変換器６３の出力を遅延する。演算部４５は、β変換器６３の出力の排他的論理和を演算する。これにより、βD系列を得ることができる。
【００５３】
なお、図４及び図５では、βS系列とβD系列を別々に説明したが、例えば、図１の演算部７が、複数の個別β演算器が出力した値を遅延したものを使用するように、両者を組み合わせたものであってもよい。
【００５４】
続いて、β変換器を利用した乱数生成器の品質保証を与えるために行った乱数検定について説明する。乱数を実際に使うに当たり、その乱数系列が予測不可能であるかという問題は非常に重要になる。その予測不可能性を仮説検定するために、発生した乱数系列から計算される統計量のランダム性を評価することが乱数検定である。ここでは、乱数検定として、1)β変換器により生成された系列の頻度分布、2)出力２値系列の自己相関値の期待値と分散、3)連の長さの分布、4)ブロック単位の頻度検定を行う。ここで、連とは、系列に含まれる０と１の連なりのことである。
【００５５】
頻度検定は、生成した乱数系列中に含まれる０，１の頻度を検定するものである。β変換を用いて発生させた長さＬの乱数系列b(n)=(b(n)1，b(n)2，b(n)3，…，b(n)L)をＮ個用意し、それぞれの系列の頻度分布を調べる。０，１からなる乱数系列b(n)=(b(n)1，b(n)2，b(n)3，…，b(n)L)を−１，＋１からなる乱数系列X(n)
=(X(n)1，X(n)2，X(n)3，…，X(n)L)(ただしX(n)i=2b(n)i-1)に変換し、式(12)を計算する。Ｓlを用いてP-valueを計算し、P-value>0.01ならばランダムであると判断する。ただし、式(13)及び(14)である。また、ｌの出る確率p=1/2、試行回数N=100のベルヌーイ試行の確率分布との比較検定をχ2検定により行う。
【００５６】
今回の検定では、系列長をL=100、系列の個数をN=10000としている。また、β変換のパラメータである増幅率をβ=1.6、1.7、1.8及び1.9とし、閾値νはCautious写像、Greedy写像、Lazy写像の場合の頻度分布について検定する。また、同様に、βS系列及びβD系列についても検定する。その結果を図６〜８に示す。図６は、排他的論理和をとらない場合の１の頻度分布を示す。図７は、βS系列（４つの排他的論理和）における１の頻度分布を示す。図８は、βD系列（４つの排他的論理和）における１の頻度分布を示す。図６〜８において、（ａ）、（ｂ）、（ｃ）及び（ｄ）は、それぞれ、β＝1.6、1.7、1.8及び1.9の場合である。
【００５７】
【数７】
2014137807.tif 000009
【００５８】
自己相関検定は、生成した乱数系列の自己相関の振る舞いを検定するものである。β変換を用いて発生させた長さＬの乱数系列b(n)=(b(n)1，b(n)2，b(n)3，…，b(n)L)をＮ個用意する。そして、式(15)で表わされる、遅れ時間ｄを含む100ビットの自己相関値R(d;b(n))を計算し、その平均値と(標本)分散を検定する。ここで、ｍ(n)は、発生させた乱数系列の各ビットの平均値であり、式(16)で表現される。この時自己相関値の平均値μは、式(17)と表わされ、ベルヌーイシフト写像における平均値の理論値μBerは，式(18)となる。同様に、自己相関値の(標本)分散σ2は式(19)であり、ベルヌーイシフト写像における(標本)分散の理論値^σBer2は、式(20)である。
【００５９】
今回の検定では系列長をL=120、系列の個数をN=10000、遅れ時間dを[0,20]の整数としている。また、β変換のパラメータである増幅率をβ=1.6、1.7、1.8及び1.9とし、閾値νはCautious写像、Greedy写像、Lazy写像の場合について検定する。また、同様に、βS系列及びβD系列についても検定する。その結果を図９〜１４に示す。図９は、排他的論理和をとらない場合の自己相関値を示す。図１０は、βS系列（４つの排他的論理和）における自己相関値を示す。図１１は、βD系列（４つの排他的論理和）における自己相関値を示す。図１２は、排他的論理和をとらない場合の自己相関値の分散を示す。図１３は、βS系列（４つの排他的論理和）における自己相関値の分散を示す。図１４は、βD系列（４つの排他的論理和）における自己相関値の分散を示す。図９〜１４において、（ａ）、（ｂ）、（ｃ）及び（ｄ）は、それぞれ、β＝1.6、1.7、1.8及び1.9の場合である。
【００６０】
【数８】
2014137807.tif 000010
【００６１】
連検定は、それぞれの長さの連の個数を数え、その数の偏りを検定するものである。β変換を用いて発生させた長さLの乱数系列b(n)=(b(n)1，b(n)2，b(n)3，…，b(n)L)をN個用意する。そして、それぞれの系列の中に含まれている0又は1の連なりである連の数を数え、その分布を検定する。ここで、0，1の生起確率がp，qであるベルヌーイ試行の長さmの連の生起確率の理論値r(m;L)は、式(21)で表わされる。ただし、θ＝p/qである。今回の連検定では、0，1の生起確率が1/2であるベルヌーイ試行の連の生起確率と比較検定を行う。
【００６２】
今回の検定では、系列長をL=100，系列の個数をN=10000としている。また、β変換のパラメータである増幅率をβ=1.6，1.9とし、閾値νはCautious写像、Greedy写像、Lazy写像の場合について検定する。また、同様に、βS系列及びβD系列についても検定する。その結果を図１５〜１７に示す。図１５は、排他的論理和をとらない場合の連の度数分布を示す。図１６は、βS系列（４つの排他的論理和）における連の度数分布を示す。図１７は、βD系列（４つの排他的論理和）における連の度数分布を示す。図１５〜１７において、（ａ）、（ｂ）、（ｃ）及び（ｄ）は、それぞれ、β＝1.6、1.7、1.8及び1.9の場合である。
【００６３】
【数９】
2014137807.tif 000011
【００６４】
ブロック単位の頻度検定は、生成した乱数系列をＭ個のブロックに分割し、それぞれのブロックに関して頻度検定を行うものである。β変換を用いて発生させた長さLの乱数系列b(n)=(b(n)1，b(n)2，b(n)3，…，b(n)L)をN個用意する。その乱数系列b(n)を重なりのないm個（ｍは、Ｌ／Ｍ以上で、最も小さい整数）の長さMブロックに分割する。そして、1≦i≦mについて、i番目のブロックの1の割合πiの割合を計算する。すなわち、式(22)である。P-valueを計算し、P-value＞0.01ならばランダムであると判断する。ただし、式(23)及び(24)である。igamcは、不完全ガンマ関数を表わす．
【００６５】
今回の検定では、系列長をL=1000，系列の個数をN=10000，ブロックの数をm=10，長さをM=100としている。また、β変換のパラメータである増幅率をβ=1.6、1.7、1.8及び1.9とし、閾値νは、Greedy写像からLazy写像へ少しずつずらしながら検定する。その結果を図１８及び１９に示す。図１８は、ブロック単位の頻度検定の成功率（βS）を示す。図１９は、ブロック単位の頻度検定の成功率（βD）を示す。図１８及び１９において、（ａ）、（ｂ）、（ｃ）及び（ｄ）は、それぞれ、排他的論理和数が１、２、４及び８の場合である。縦軸が、（ａ）及び（ｂ）では０〜10000であるのに対し、（ｃ）及び（ｄ）では、9500〜10000と異なる。よって、排他的論理和数が４以上であれば、νの揺らぎに対して、頻度検定の成功率が確保されていることがわかる。
【００６６】
【数１０】
2014137807.tif 000012
【００６７】
検定結果を、図２０及び２１にまとめる。検定結果として１つのβ変換器単体ではよい結果は得ることができなかったが、βS系列，βD系列共に排他的論理和の数を増やすことで十分良い結果を得られた。
【００６８】
本実施例の乱数生成装置は、小型のCMOS回路により実装されるβ変換器にわずかな付加回路を足すだけで実現できる。Ａ／Ｄ変換器は、多くの電子機器に必須の装置であるから、応用の範囲は広いと考えられる。
【符号の説明】
【００６９】
１  乱数生成装置、３  β変換部、５  論理値記憶部、７  演算部、９  乱数系列記憶部、２１  β変換器、２３  第１加算器、２５  増幅器、２７  比較器、２９  第２加算器、３１  遅延部、４１  βS系列生成器、４３1，…，４３L  個別β変換器、４５  演算部、４７1，…，４７L  第１加算器、４９1，…，４９L  増幅器、５１1，…，５１L  第２加算器、５３1，…，５３L  遅延部、５５1，…，５５L  比較器、６１  βD系列生成器、６３  β変換器、６５  遅延部、６７  演算部、７１  第１加算器、７３  増幅器、７５  第２加算器、７７  遅延部、７９  比較器
【図１】
2014137807.tif 000014
【図２】
2014137807.tif 000015
【図３】
2014137807.tif 000016
【図４】
2014137807.tif 000017
【図５】
2014137807.tif 000018
【図２０】
2014137807.tif 000019
【図２１】
2014137807.tif 000020
【図６】
2014137807.tif 000021
【図７】
2014137807.tif 000022
【図８】
2014137807.tif 000023
【図９】
2014137807.tif 000024
【図１０】
2014137807.tif 000025
【図１１】
2014137807.tif 000026
【図１２】
2014137807.tif 000027
【図１３】
2014137807.tif 000028
【図１４】
2014137807.tif 000029
【図１５】
2014137807.tif 000030
【図１６】
2014137807.tif 000031
【図１７】
2014137807.tif 000032
【図１８】
2014137807.tif 000033
【図１９】
2014137807.tif 000034
【図２２】
2014137807.tif 000035
【図２３】
2014137807.tif 000036