JP3455748B2 - ベクトル列の出力装置、出力方法、および、情報記録媒体 - Google Patents

ベクトル列の出力装置、出力方法、および、情報記録媒体

Info

Publication number
JP3455748B2
JP3455748B2 JP36220399A JP36220399A JP3455748B2 JP 3455748 B2 JP3455748 B2 JP 3455748B2 JP 36220399 A JP36220399 A JP 36220399A JP 36220399 A JP36220399 A JP 36220399A JP 3455748 B2 JP3455748 B2 JP 3455748B2
Authority
JP
Japan
Prior art keywords
vector
map
rational
output
generalized
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
JP36220399A
Other languages
English (en)
Other versions
JP2001175168A (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 JP36220399A priority Critical patent/JP3455748B2/ja
Priority to US09/531,699 priority patent/US6668265B1/en
Publication of JP2001175168A publication Critical patent/JP2001175168A/ja
Priority to US10/638,079 priority patent/US7257608B2/en
Application granted granted Critical
Publication of JP3455748B2 publication Critical patent/JP3455748B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ベクトル列の出力
装置、出力方法、および、情報記録媒体に関する。
【0002】特に、出力されるランダムなベクトル列の
分布の密度関数が既知の解析的な関数であるようなベク
トル列の生成手法が2つあるときに、これらを結び付け
て、より高次元のランダムなベクトル列であって、その
分布の密度関数が解析的な関数として得られるものを出
力するベクトル列の出力装置、出力方法、および、これ
らを実現するプログラムを記録した情報記録媒体に関す
る。
【0003】
【従来の技術】従来から、漸化式を用いた乱数の生成手
法が多数知られている。物理学や工学などの模擬実験を
行うモンテカルロ法では、このようにして生成された乱
数を用いる。
【0004】また、移動体電話で用いられるCDMA
(Code Division Multiple Access)法では、限られた
電波帯域を多数のユーザが有効に利用できるようにする
ため、乱数から得られるPN(Pseudo Noise)コードを
各ユーザに割り当てている。
【0005】このほか、インターネットなどの通信技術
の発達により、通信の秘密保持の必要性がますます大き
くなってきており、公開鍵暗号という手法を用いて秘密
保持を行うことが一般的になりつつある。この手法にお
いても、公開鍵を生成するために乱数が用いられてい
る。
【0006】このような乱数を得るために、従来から、
漸化式を用いた手法が広く利用されている。古くから知
られる乗算による漸化式では乱数の周期が問題となって
いた。しかし、近年、カオス理論の発展により、楕円関
数(三角関数を含む)の加法定理から導かれる有理写像
を漸化式に用いて得られる乱数には、以下のような有利
な性質があることが判明しており、その重要性はますま
す高まってきている。
【0007】(1)出力される乱数列には周期がないた
め、繰り返し同じ列が出力されることがない。 (2)乱数の種(漸化式に与える初期値)として有理数
を与えると、得られる乱数列に含まれる数がいずれも有
理数になる。 (3)乱数の分布を表す密度関数が既知の解析的関数で
ある。
【0008】このような有理写像としては、ウラム=フ
ォン・ノイマン写像[数1]、キュービック写像[数
2]、クインティック写像[数3]などが知られてい
る。
【0009】
【数1】
【0010】
【数2】
【0011】
【数3】
【0012】これらの有理写像のいずれを選んだ場合で
あっても、適当な初期値ξ (0<ξ<1)を与え、以下の
漸化式により乱数列x[i]を得た場合、この乱数列x[i]の
分布を表す密度関数は、[数4]で表現される。 x[0] = ξ x[i+1] = f(x[i]) (i≧0)
【0013】
【数4】
【0014】また、パラメータを有する有理写像も漸化
式として用いることができ、このような有理写像として
カツラ=フクダ写像、一般化ウラム=フォン・ノイマン
写像[数5]、一般化キュービック写像、一般化チェビ
シェフ写像などがある。
【0015】
【数5】
【0016】たとえば、一般化ウラム=フォン・ノイマ
ン写像[数5]を用いて上記の漸化式により乱数列を得
た場合、その分布も同じパラメータを有する密度関数
[数6]で表現される。
【0017】
【数6】
【0018】なお、カツラ=フクダ写像は、一般化ウラ
ム=フォン・ノイマン写像[数5]において、m=0とお
いたものである。
【0019】これらの有理写像を用いた乱数を生成する
手法については、本願の発明者らによる出願に係る特開
平10−283344号公報に開示されている。また、
その理論的背景については以下の文献に開示されてい
る。 S. M. Ulam and J. von Neumann, Bull. Math. Soc. 53
(1947) pp.1120. R. L. Adler and T. J. Rivlin, Proc. Am. Math. Soc.
15 (1964) pp.794. K. Umeno, Method of constructing exactly solvable
chaos, Phys. Rev. E(1997) Vol.55 pp.5280-5284.
【0020】従来、このような乱数生成手法では、乱数
の種としてスカラー値(1次元のベクトル)を与えるこ
とにより、乱数列(ランダムな1次元のベクトル列)を
得ることができた。
【0021】
【発明が解決しようとする課題】しかしながら、従来の
乱数発生の手法においては、以下のような問題があっ
た。
【0022】すなわち、2次元以上の空間におけるモン
テカルロ法では、2次元以上のベクトルのランダムな列
が必要である。しかし、従来の乱数発生の手法において
は、得られる乱数列はスカラー値の列(1次元のベクト
ル列)であり、たとえば、3次元空間の模擬実験を行う
際に、この列の先頭から順に3個ずつ値を必要な数だけ
選択するのでは、乱数分布に偏りが発生し、収束性が悪
化してしまうという問題が生じていた。
【0023】また、公開鍵暗号を生成する場合には、2
つの整数の対からなる乱数を得る必要があるが、従来の
乱数発生の手法においては、この対を同時に生成するこ
とができないため、悪意のある暗号解読者に対する防御
が十分でなくなってしまうという問題が生じていた。
【0024】このように、複数個の乱数の組が同時に1
つのベクトルとして生成され、これを列として、ランダ
ムなベクトル列を出力でき、なおかつ、これらのベクト
ル列の分布の密度関数が解析的に得られるような出力装
置や出力方法に対する要望は、極めて大きい。
【0025】本発明は、以上のような問題を解決するた
めになされたもので、出力されるランダムなベクトル列
の分布の密度関数が既知の解析的な関数であるようなベ
クトル列の生成手法が2つあるときに、これらを結び付
けて、より高次元のランダムなベクトル列であって、そ
の分布の密度関数が解析的な関数として得られるものを
出力するベクトル列の出力装置、出力方法、および、こ
れらを実現するプログラムを記録した情報記録媒体を提
供することを目的とする。
【0026】
【課題を解決するための手段】以上の目的を達成するた
め、本発明の原理にしたがって、下記の発明を開示す
る。
【0027】図1に示すように、本発明のベクトル列の
出力装置100は、第1の記憶部101と、第1の計算
部102と、第2の記憶部103と、第2の計算部10
4と、出力部105と、第1の更新部106と、第2の
更新部107とを備え、(a)第1の記憶部101は、
1次元以上のベクトルxを記憶し、(b)第1の計算部
102は、第1の記憶部101に記憶されたベクトルx
に第1の有理ベクトル写像fを適用した結果のベクトル
x'=f(x)を計算し、
【0028】(c)第2の記憶部103は、1次元以上
のベクトルyを記憶し、(d)第2の計算部104は、
第1の記憶部101に記憶されたベクトルxと、第2の
記憶部103に記憶された1次元以上のベクトルyと
に、第2の有理ベクトル写像gを適用した結果のベクト
ルy'=g(x,y)を計算し、
【0029】(e)出力部105は、第1の計算部10
2により計算された結果のベクトルx'と第2の計算部1
04により計算された結果のベクトルy'とを結合したベ
クトルz'を出力し、(f)第1の更新部106は、第1
の計算部102により計算された結果のベクトルx'を第
1の記憶部101に記憶させて更新し、(g)第2の更
新部107は、第2の計算部104により計算された結
果のベクトルy'を第2の記憶部103に記憶させて更新
する。
【0030】ここで、有理ベクトル写像fおよびgとして
は、後述するカオス理論に基づく写像のほか、乱数を生
成する漸化式に用いられる任意の写像を用いることがで
きる。たとえば、巨大な素数を乗算して剰余を求める写
像などを利用することが可能である。
【0031】また、本発明のベクトル列の出力装置にお
いて、第1の有理ベクトル写像fを1次元以上のベクト
ルxに0回以上適用して得られるベクトル列 x, f(x), f(f(x)), f(f(f(x))), … の極限分布の密度関数は解析的な関数であり、
【0032】第2の有理ベクトル写像gにパラメータと
して1次元以上のベクトルλを与えた写像g(λ,・)を1
次元以上のベクトルyに0回以上適用して得られるベク
トル列 y, g(λ,y), g(λ,g(λ,y)), g(λ,g(λ,g(λ,y))), … の極限分布の密度関数は当該パラメータλを有する解析
的な関数であるように構成することができる。
【0033】また、本発明のベクトル列の出力装置の第
1の有理ベクトル写像fは、楕円関数の加法定理より導
かれる有理写像、特に、ウラム=フォン・ノイマン写
像、キュービック写像、クインティック写像、又は、カ
ツラ=フクダ写像、一般化ウラム=フォン・ノイマン写
像、一般化キュービック写像、もしくは一般化チェビシ
ェフ写像に所定のパラメータを与えたもののいずれかと
することができる。
【0034】また、本発明の第2の有理ベクトル写像g
は、楕円関数の加法定理より導かれる有理写像、特に、
カツラ=フクダ写像、一般化ウラム=フォン・ノイマン
写像、一般化キュービック写像、一般化チェビシェフ写
像のいずれかとすることができる。
【0035】第1の有理ベクトル写像fと、第2の有理
ベクトル写像gとして上記のような楕円関数の加法定理
より導かれる有理写像を選択すると、出力部105が順
次出力するベクトルの列の分布の密度関数をこれらの写
像から得られる乱数列の密度関数から得ることができ
る。
【0036】図2に示すように、本発明のベクトル列の
出力装置200は、生成部201と、第1の出力部20
2と、第2の出力部203と、第3の出力部204とを
備え、(a)生成部201は、2次元以上のベクトルζ
を受け付けて、これから1次元以上のベクトルξと1次
元以上のベクトルηとを生成し、
【0037】(b)第1の出力部202は、生成部20
1により生成されたベクトルξを受け付けて、第1の有
理ベクトル写像fを用いた漸化式 x[0] = ζ x[i+1] = f(x[i]) (ただしi≧0) により得られるベクトル列x[i]を出力し、
【0038】(c)第2の出力部203は、生成部20
1により生成されたベクトルηと、第1の出力部202
により出力されるベクトル列x[i]とを受け付けて、第2
の有理ベクトル写像gを用いた漸化式 y[0] = η y[i+1] = g(x[i],y[i]) (ただしi≧0) により得られるベクトル列y[i]を出力し、
【0039】(d)第3の出力部204は、第1の出力
部202により出力されるベクトル列x[i]と、第2の出
力部203により出力されるベクトル列y[i]とを結合し
て得られるベクトル列z[i]を結果として出力する。
【0040】また、本発明のベクトル列の出力装置にお
いて、第1の有理ベクトル写像fを1次元以上のベクト
ルxに0回以上適用して得られるベクトル列 x, f(x), f(f(x)), f(f(f(x))), … の極限分布の密度関数は解析的な関数であり、
【0041】第2の有理ベクトル写像gにパラメータと
して1次元以上のベクトルλを与えた写像g(λ,・)を1
次元以上のベクトルyに0回以上適用して得られるベク
トル列 y, g(λ,y), g(λ,g(λ,y)), g(λ,g(λ,g(λ,y))), … の極限分布の密度関数は当該パラメータλを有する解析
的な関数であるように構成することができる。
【0042】また、本発明のベクトル列の出力装置の第
1の有理ベクトル写像fは、楕円関数の加法定理より導
かれる有理写像、特に、ウラム=フォン・ノイマン写
像、キュービック写像、クインティック写像、または、
カツラ=フクダ写像、一般化ウラム=フォン・ノイマン
写像、一般化キュービック写像もしくは一般化チェビシ
ェフ写像に所定のパラメータを与えたもののいずれかと
することができる。
【0043】また、本発明のベクトル列の出力装置の第
2の有理ベクトル写像gは、楕円関数の加法定理より導
かれる有理写像、特に、カツラ=フクダ写像、一般化ウ
ラム=フォン・ノイマン写像、一般化キュービック写
像、一般化チェビシェフ写像のいずれかとすることがで
きる。
【0044】この場合も、有理ベクトル写像fとgとか
ら、出力されるベクトル列の分布の密度関数を解析的に
得ることができる。
【0045】また、本発明のベクトル列の出力装置の第
1の出力部202もまた、本発明のベクトル列の出力装
置とすることができる。すなわち、 (1)まず、ある有理ベクトル写像fとパラメータを有
する有理ベクトル写像gとからベクトル列の出力装置X
を構成する。
【0046】(2)次に、当該出力装置Xをある有理ベ
クトル写像f'に対応させ、これとパラメータを有する有
理ベクトル写像g'とから、同じように新たなベクトル列
の出力装置Yを構成する。出力装置Yが出力するベクト
ル列のベクトルの次元は、出力装置Xが出力するベクト
ル列のベクトルの次元よりも大きい。
【0047】(3)これを繰り返すことにより、ランダ
ムな任意の次元のベクトル列の出力装置を構成すること
ができる。
【0048】本発明のベクトル列の出力方法は、以下の
ステップを備える。 (a)第1の記憶部に記憶された1次元以上のベクトル
xを取得する第1の取得ステップと、(b)第1の取得
ステップにおいて取得されたベクトルxに第1の有理ベ
クトル写像fを適用した結果のベクトルx'=f(x)を計算す
る第1の計算ステップと、
【0049】(c)第2の記憶部に記憶された1次元以
上のベクトルyを取得する第2の取得ステップと、
(d)第1の記憶部に記憶されたベクトルxと、第2の
取得ステップにおいて取得されたベクトルyとに第2の
有理ベクトル写像gを適用した結果のベクトルy'=g(x,y)
を計算する第2の計算ステップと、
【0050】(e)第1の計算ステップにおいて計算さ
れた結果のベクトルx'と、第2の計算ステップにおいて
計算された結果のベクトルy'とを結合したベクトルz'を
出力する出力ステップと、
【0051】(f)第1の計算ステップにおいて計算さ
れた結果のベクトルx'を第1の記憶部に記憶させて更新
する第1の更新ステップと、(g)第2の計算ステップ
において計算された結果のベクトルy'を第2の記憶部に
記憶させて更新する第2の更新ステップ。
【0052】また、本発明のベクトル列の出力方法にお
いて、第1の有理ベクトル写像fを1次元以上のベクト
ルxに0回以上適用して得られるベクトル列 x, f(x), f(f(x)), f(f(f(x))), … の極限分布の密度関数は解析的な関数であり、
【0053】第2の有理ベクトル写像gにパラメータと
して1次元以上のベクトルλを与えた写像g(λ,・)を1
次元以上のベクトルyに0回以上適用して得られるベク
トル列 y, g(λ,y), g(λ,g(λ,y)), g(λ,g(λ,g(λ,y))), … の極限分布の密度関数は当該パラメータλを有する解析
的な関数であるように構成することができる。
【0054】また、本発明のベクトル列の出力方法にお
いて、第1の有理ベクトル写像fは、楕円関数の加法定
理より導かれる有理写像、特に、ウラム=フォン・ノイ
マン写像、キュービック写像、クインティック写像、又
はカツラ=フクダ写像一般化ウラム=フォン・ノイマン
写像、一般化キュービック写像もしくは一般化チェビシ
ェフ写像に所定のパラメータを与えたもののいずれかと
することができる。
【0055】また、本発明のベクトル列の出力方法にお
いて、第2の有理ベクトル写像gは、カツラ=フクダ写
像、一般化ウラム=フォン・ノイマン写像、一般化キュ
ービック写像、一般化チェビシェフ写像のいずれかとす
ることができる。
【0056】この場合も、有理ベクトル写像fとgとか
ら、出力されるベクトル列の分布の密度関数を解析的に
得ることができる。
【0057】本発明のベクトル列を出力する出力装置
と、出力方法とを実現するプログラムをコンパクトディ
スク、フロッピーディスク、ハードディスク、光磁気デ
ィスク、ディジタルビデオディスク、磁気テープ、半導
体メモリなどの情報記録媒体に記録することができる。
【0058】本発明の情報記録媒体に記録されたプログ
ラムを、記憶装置、計算装置、出力装置などを備える情
報処理装置、たとえば汎用コンピュータ、ゲーム装置、
携帯情報端末、移動体電話で実行することにより、上記
のベクトル列を出力する出力装置と、出力方法とを実現
することができる。
【0059】また、情報処理装置とは独立して、本発明
のプログラムを記録した情報記録媒体を配布、販売する
ことができる。
【0060】
【発明の実施の形態】以下に本発明の一実施形態を説明
する。なお、以下に説明する実施形態は説明のためのも
のであり、本願発明の範囲を制限するものではない。し
たがって、当業者であればこれらの各要素もしくは全要
素をこれと均等なものに置換した実施形態を採用するこ
とが可能であるが、これらの実施形態も本願発明の範囲
に含まれる。
【0061】(第1実施例)図3は、本発明のベクトル
列の出力装置を汎用コンピュータなどの情報処理装置に
おいて実現する実施例の、当該情報処理装置のブロック
構成図である。
【0062】情報処理装置301は、CPU(Central
Processing Unit;中央処理ユニット)302により制
御され、RAM(Random Access Memory;ランダム・ア
クセス・メモリ)などの主記憶装置303には一時的な
データなどを記憶し、ハードディスク、フロッピーディ
スク、CD−ROM(Compact Disk Read Only Memor
y)、磁気テープ、光磁気ディスクなどの外部記憶装置
304にはCPU 302が実行するプログラムが記憶
される。
【0063】情報処理装置301に電源が投入される
と、CPU 302は、まず、ROM(Read Only Memo
ry;読出専用メモリ)308に記憶されている初期プロ
グラムローダと呼ばれるプログラムを実行し、しかる後
に外部記憶装置304などからオペレーティングシステ
ムのプログラムやアプリケーションのプログラムなどを
主記憶装置303にロードして実行する。
【0064】実行した結果は、外部記憶装置304にフ
ァイルとして記憶したり、CRT(Cathode Ray Tube)
や液晶ディスプレイなどの表示装置305に表示するこ
とができる。情報処理装置のユーザは、マウスやキーボ
ードなどの入力装置306を用いて情報処理装置に対す
る指示を与える。
【0065】ここで、情報処理装置301が図1に示す
ベクトル列の出力装置100として機能する場合、主記
憶装置303は、第1の記憶部101、第2の記憶部1
03として機能し、CPU 302は、第1の計算部1
02、第2の計算部104、第1の更新部106、第2
の更新部107として機能し、外部記憶装置304は、
結果をファイルとして出力する場合は出力部105とし
て機能し、表示装置305は、結果を表示して出力する
場合は出力部105として機能し、主記憶装置303
は、結果をほかのプログラムで利用する場合は出力部1
05として機能する。
【0066】また、情報処理装置301が、図2に示す
ベクトル列の出力装置200として機能する場合は、C
PU 302は、主記憶装置303や、必要に応じて外
部記憶装置304、表示装置305と共働して、生成部
201、第1の出力部202、第2の出力部203、第
3の出力部204として機能する。
【0067】また、主記憶装置303、外部記憶装置3
04は、本発明の情報記録媒体として機能する。また、
ROM 308を本発明の情報記録媒体として機能させ
ることもできる。
【0068】以下、図4を参照して、本発明のベクトル
列の出力装置の処理を説明する。図4は、本発明の処理
の流れを示すフローチャートである。
【0069】なお、以下では説明の都合上、有理写像f
としてウラム=フォン・ノイマン写像[数1]を、有理
写像gとしてカツラ=フクダ写像を、それぞれ採用する
が、これ以外の写像を利用することも当業者には容易で
あり、これらの実施形態も本発明の範囲に含まれる。
【0070】まず、CPU 302は、現在の時刻など
から乱数の種を取得する(ステップS401)。この場
合、有理写像fはスカラー値(1次元のベクトル)に対
して適用され、有理写像gは、スカラー値(1次元のベ
クトル)のパラメータとともにスカラー値(1次元のベ
クトル)に対して適用されるので、スカラー値の種が2
つ必要である。見方を変えれば、2次元のベクトルを乱
数の種として取得することになる。
【0071】なお、乱数の種は、ユーザが入力装置30
6から入力することも可能であり、これと時刻などの数
値を組み合わせてもよい。これらは、公開鍵を生成する
場合に有用である。
【0072】次に、CPU 302は、取得した種をそ
れぞれ主記憶装置303内の第1の記憶部101と、第
2の記憶部103とに記憶する(ステップS402)。
これにより、乱数を生成するための初期値が設定され
る。
【0073】なお、ステップS401からステップS4
02の処理は、図2に示すランダムなベクトル列を出力
する装置200の生成部201が実行する処理に相当す
る。
【0074】ついで、CPU 302は、第1の記憶部
101に記憶された値xと、第2の記憶部103に記憶
された値yとを取得し(ステップS403)、これらを
用いて値y'=g(x,y)を計算し(ステップS404)、計
算された値y'を第2の記憶部103に記憶させて更新す
る(ステップS405)。
【0075】すなわち、ステップS404において、C
PU 302は、第2の計算部104として機能するこ
とになる。
【0076】さらに、CPU 302は、第1の記憶部
101に記憶された値xを取得し(ステップS40
6)、これを用いて値x'=f(x)を計算し(ステップS4
07)、計算された値x'を第1の記憶部101に記憶さ
せて更新する(ステップS408)。
【0077】すなわち、ステップS407において、C
PU 302は、第1の計算部102として機能するこ
とになる。
【0078】最後に、CPU 302は、第1の記憶部
101に記憶された更新後の値x'と、第2の記憶部10
3に記憶された更新後の値y'とを結合して、外部記憶装
置304などに出力し(ステップS409)、ステップ
S403に戻る。
【0079】なお、あるn次元のベクトルと別のm次元
のベクトルとを結合した結果は(n+m)次元のベクト
ルであり、その要素は、まずn次元のベクトルの要素を
並べ、ついでm次元のベクトルの要素を並べたものであ
る。図2に示すベクトル列の出力装置200の生成部2
01の処理は、ベクトルの結合の逆演算を行うことによ
り実現することができる。
【0080】この繰り返しを行うことにより、ランダム
な2次元ベクトルの列が外部記憶装置304に出力され
ることになる。
【0081】なお、図2に示すベクトル列の出力装置2
00の第1の出力部202が実行する処理はステップS
406〜ステップS408に、第2の出力部203が実
行する処理はステップS403〜ステップS405に、
第3の出力部204が実行する処理はステップS406
により、それぞれ実現されている。
【0082】なお、本実施例では、上述の通り、有理写
像fとして一般化ウラム=フォン・ノイマン写像[数
1]を採用するが、これを漸化式に使用した場合に得ら
れる乱数の分布の密度関数を図5に示す。図5に示す通
り、これは0≦x≦1の範囲で定義される非一様な密度関
数であり、x=0およびx=1で無限大となり、0<x<1の範
囲で下に凸な関数である。
【0083】また、本実施例では、上述の通り、有理写
像gとしてカツラ=フクダ関数[数7]を採用するが、
パラメータx'を固定して漸化式に使用した場合に得られ
る乱数の分布もまた、[数8]のように解析的に得るこ
とができる。
【0084】
【数7】
【0085】
【数8】
【0086】図6には、ステップS409において出力
される2次元ベクトルを座標値として、順次プロットし
たものを示し、図7には、ステップS409において出
力される2次元ベクトルを座標値として、これをヒスト
グラムとしたものを示す。また、図8には、図7に示す
ヒストグラムをある断面で切った場合の様子を示す。
【0087】発明者は、「一般に密度関数ρ(x)を有す
る有理写像fと、xというパラメータを持ち密度関数ν
(x,y)を有する有理写像g(x,・)とを本発明の漸化式を用
いる手法により結合した場合、出力されるベクトル列の
分布の密度関数はν(x,y)ρ(x)となる」ことを数学的に
証明している。したがって、分布の密度関数が既知の解
析的な関数である場合には、これらを組み合わせた場
合、分布の密度関数は、もとの分布の密度関数の積とし
て、解析的に得ることができる。
【0088】図8に示すグラフの形状が図5に示すグラ
フの形状とほぼ同じ形状をしていることからも、この結
論が正しいことがわかる。また、従来の手法で問題とな
っていた乱数の偏りも少ないことがわかっている。
【0089】なお、適宜各ステップの順序を変更した
り、同じ処理を行うステップを別途実行することによ
り、上記実施例における制御の流れと同等の処理を実現
することができるが、そのような実施形態も本発明の範
囲に含まれる。
【0090】(第2実施例)本発明の第2実施例は、汎
用コンピュータなどの情報処理装置によりベクトル列の
出力装置を構成するものではなく、電子回路により構成
するものである。
【0091】すなわち、図1に示すベクトル列の出力装
置100の第1の記憶部101と第2の記憶部103と
は、いずれも、フリップフロップなどを基本とする記憶
回路で構成することができる。
【0092】第1の計算部102と第2の計算部104
とは、いずれも、加算回路と乗算回路の組み合わせで構
成することができる。
【0093】出力部105は、第2の計算部104を構
成する回路の出力線により構成することができる。
【0094】第1の更新部106と第2の更新部107
とは、第1の計算部102と第2の計算部104とを構
成する回路の出力線を、一定のクロック遅延をもってそ
れぞれ第1の記憶部101と第2の記憶部103とに帰
還させて記憶させることにより構成することができる。
【0095】このように、専用の電子回路により本発明
のベクトル列の出力装置を構成することにより、たとえ
ば携帯情報端末や移動体電話など、少ない電力消費と簡
単で省スペースな構成が必要とされる機器に本発明を適
用することができる。
【0096】(第3実施例)上記実施例では、有理写像
として楕円関数の加法定理より導かれる有理写像を用い
ているが、楕円積分、超楕円積分、あるいは、これらを
変形したものから導かれる写像にも、類似した性質を有
するものがあり、そのような写像を利用してもよい。ま
た、従来から用いられている乱数の発生手法の漸化式を
表す写像を利用することもできる。
【0097】(第4実施例)本発明で得られるランダム
なベクトル列の密度関数は解析的に得られるので、フォ
ン・ノイマンの逆関数法により、本発明で得られた任意
次元のランダムなベクトル列から、一様分布を持つラン
ダムなベクトル列を発生させることができる。
【0098】(第5実施例)本発明は、UNIXなどの
オペレーティング・システムやprolog、GHCな
どの論理型言語やLisp、Haskellなどの関数
型言語などで多用されるストリーム処理により実現する
ことができる。すなわち、上述のような有理ベクトル写
像fとgについて、以下のベクトル列x[i]のデータストリ
ームを生成するプロセス(プログラミング言語上は、述
語、関数、手続などで表現される)Aと、 x[0], x[1], x[2], x[3], … x[0] = ζ x[i+1] = f(x[i]) (ただしi≧0) このプロセスAが出力するデータストリームx[i]を順に
受け付けて、以下のベクトル列y[i]のデータストリーム
を生成するプロセスBとを用意することにより、 y[0], y[1], y[2], y[3], … y[0] = η y[i+1] = g(x[i],y[i]) (ただしi≧0) 本発明を実現することができる。
【0099】プロセスAとプロセスBとの通信は、いわ
ゆる製造者=消費者モデルにより記述でき、要求駆動に
よる生成、データストリームのバッファリングなどの公
知の技法を利用することができる。
【0100】
【発明の効果】以上説明したように、本発明によれば、
以下の効果を奏する。
【0101】出力されるランダムなベクトル列の分布の
密度関数が既知の解析的な関数であるようなベクトル列
の生成手法が2つあるときに、これらを結び付けて、よ
り高次元のランダムなベクトル列であって、その分布の
密度関数が解析的な関数として得られるものを出力する
ベクトル列の出力装置、出力方法を提供することができ
る。
【0102】本発明では、既知のベクトル列の生成手法
の分布の密度関数の積がより高次元のランダムなベクト
ル列の分布の密度関数となるため、容易に分布の特徴を
得ることができ、さまざまな応用に資することができ
る。特に、生成手法として有理写像を採用した場合に
は、得られるベクトル列の各要素もすべて有理数となる
という特徴を有し、計算機上の計算精度を厳密に保存し
うるという利点を有する。
【0103】このようなランダムなベクトル列は、モン
テカルロ法、移動体通信や光通信におけるCDMA、イ
ンターネットなどの通信における公開鍵暗号などで利用
することができる。
【0104】さらに、プログラムを記録した情報記録媒
体をソフトウェア商品として、情報処理装置のハードウ
ェアと独立して容易に配布したり販売したりすることが
できるようになる。本発明の情報記録媒体に記録された
プログラムを汎用コンピュータなどの情報処理装置で実
行すれば、上記の発明に係るベクトル列の出力装置、出
力方法が実現できる。
【図面の簡単な説明】
【図1】本発明のベクトル列の出力装置の構成を示すブ
ロック構成図である。
【図2】本発明のベクトル列の出力装置の構成を示すブ
ロック構成図である。
【図3】本発明のランダムなベクトル列の出力装置を汎
用コンピュータなどの情報処理装置において実現する実
施例の、当該情報処理装置のブロック構成図である。
【図4】本発明の処理の流れを示すフローチャートであ
る。
【図5】一般化ウラム=フォン・ノイマン写像を漸化式
に使用した場合に得られる乱数の分布の密度関数を示す
グラフである。
【図6】図4に示すフローチャートのステップS409
において出力される2次元ベクトルを座標値として、順
次プロットした説明図である。
【図7】図4に示すフローチャートのステップS409
において出力される2次元ベクトルを座標値としたヒス
トグラムである。
【図8】図7に示すヒストグラムをある断面で切断した
場合のグラフである。
【符号の説明】
100 ベクトル列の出力装置 101 第1の記憶部 102 第1の計算部 103 第2の記憶部 104 第2の計算部 105 出力部 106 第1の更新部 107 第2の更新部 200 ベクトル列の出力装置 201 生成部 202 第1の出力部 203 第2の出力部 204 第3の出力部 301 情報処理装置 302 CPU 303 主記憶装置 304 外部記憶装置 305 表示装置 306 入力装置 308 ROM
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G09C 1/00 650 G06F 7/58

Claims (18)

    (57)【特許請求の範囲】
  1. 【請求項1】以下を備えることを特徴とするベクトル列
    の出力装置。 (a)1次元以上のベクトルxを記憶する第1の記憶部
    と、 (b)前記第1の記憶部に記憶されたベクトルxに第1
    の有理ベクトル写像fを適用した結果のベクトルx'=f(x)
    を計算する第1の計算部と、 (c)1次元以上のベクトルyを記憶する第2の記憶部
    と、 (d)前記第1の記憶部に記憶されたベクトルxと、前
    記第2の記憶部に記憶された1次元以上のベクトルyと
    に、第2の有理ベクトル写像gを適用した結果のベクト
    ルy'=g(x,y)を計算する第2の計算部と、 (e)前記第1の計算部により計算された結果のベクト
    ルx'と前記第2の計算部により計算された結果のベクト
    ルy'とを結合したベクトルz'を出力する出力部と、 (f)前記第1の計算部により計算された結果のベクト
    ルx'を前記第1の記憶部に記憶させて更新する第1の更
    新部と、 (g)前記第2の計算部により計算された結果のベクト
    ルy'を前記第2の記憶部に記憶させて更新する第2の更
    新部。ただし、有理ベクトル写像とは、有理数の成分か
    らなる1次元以上のベクトルを有理数の成分からなる1
    次元以上のベクトルへと変換する写像をいう。
  2. 【請求項2】前記第1の有理ベクトル写像fを1次元以
    上のベクトルxに0回以上適用して得られるベクトル列 x, f(x), f(f(x)), f(f(f(x))), … の極限分布の密度関数は解析的な関数であり、 前記第2の有理ベクトル写像gにパラメータとして1次
    元以上のベクトルλを与えた写像g(λ,・)を1次元以上
    のベクトルyに0回以上適用して得られるベクトル列 y, g(λ,y), g(λ,g(λ,y)), g(λ,g(λ,g(λ,y))), … の極限分布の密度関数は当該パラメータλを有する解析
    的な関数であることを特徴とする請求項1に記載の出力
    装置。
  3. 【請求項3】前記第1の有理ベクトル写像fは、楕円関
    数の加法定理より導かれる有理写像、特に、ウラム=フ
    ォン・ノイマン写像、キュービック写像、クインティッ
    ク写像、又は、カツラ=フクダ写像、一般化ウラム=フ
    ォン・ノイマン写像、一般化キュービック写像、もしく
    は一般化チェビシェフ写像に所定のパラメータを与えた
    もののいずれかであることを特徴とする請求項2に記載
    の出力装置。
  4. 【請求項4】前記第2の有理ベクトル写像gは、楕円関
    数の加法定理より導かれる有理写像、特に、カツラ=フ
    クダ写像、一般化ウラム=フォン・ノイマン写像、一般
    化キュービック写像、一般化チェビシェフ写像のいずれ
    かであることを特徴とする請求項2に記載の出力装置。
  5. 【請求項5】以下を備えることを特徴とするベクトル列
    の出力装置。 (a)2次元以上のベクトルζを受け付けて、これから
    1次元以上のベクトルξと1次元以上のベクトルηとを
    生成する生成部と、 (b)前記生成部により生成されたベクトルξを受け付
    けて、第1の有理ベクトル写像fを用いた漸化式 x[0] = ζ x[i+1] = f(x[i]) (ただしi≧0) により得られるベクトル列x[i]を出力する第1の出力部
    と、 (c)前記生成部により生成されたベクトルηと、前記
    第1の出力部により出力されるベクトル列x[i]とを受け
    付けて、第2の有理ベクトル写像gを用いた漸化式 y[0] = η y[i+1] = g(x[i],y[i]) (ただしi≧0) により得られるベクトル列y[i]を出力する第2の出力部
    と、 (d)前記第1の出力部により出力されるベクトル列x
    [i]と、前記第2の出力部により出力されるベクトル列y
    [i]とを結合して得られるベクトル列z[i]を結果として
    出力する第3の出力部。
  6. 【請求項6】前記第1の有理ベクトル写像fを1次元以
    上のベクトルxに0回以上適用して得られるベクトル列 x, f(x), f(f(x)), f(f(f(x))), … の極限分布の密度関数は解析的な関数であり、 前記第2の有理ベクトル写像gにパラメータとして1次
    元以上のベクトルλを与えた写像g(λ,・)を1次元以上
    のベクトルyに0回以上適用して得られるベクトル列 y, g(λ,y), g(λ,g(λ,y)), g(λ,g(λ,g(λ,y))), … の極限分布の密度関数は当該パラメータλを有する解析
    的な関数であることを特徴とする請求項5に記載の出力
    装置。
  7. 【請求項7】前記第1の有理ベクトル写像fは、楕円関
    数の加法定理より導かれる有理写像、特に、ウラム=フ
    ォン・ノイマン写像、キュービック写像、クインティッ
    ク写像、または、カツラ=フクダ写像、一般化ウラム=
    フォン・ノイマン写像、一般化キュービック写像もしく
    は一般化チェビシェフ写像に所定のパラメータを与えた
    もののいずれかであることを特徴とする請求項6に記載
    の出力装置。
  8. 【請求項8】前記第2の有理ベクトル写像gは、楕円関
    数の加法定理より導かれる有理写像、特に、カツラ=フ
    クダ写像、一般化ウラム=フォン・ノイマン写像、一般
    化キュービック写像、一般化チェビシェフ写像のいずれ
    かであることを特徴とする請求項6に記載の出力装置。
  9. 【請求項9】前記第1の出力部もまた請求項5に記載の
    出力装置であることを特徴とする請求項5に記載の出力
    装置。
  10. 【請求項10】以下のステップを備えることを特徴とす
    るベクトル列の出力方法。 (a)第1の記憶部に記憶された1次元以上のベクトル
    xに第1の有理ベクトル写像fを適用した結果のベクトル
    x'=f(x)を計算する第1の計算ステップと、 (b)前記第1の記憶部に記憶されたベクトルxと、第
    2の記憶部に記憶された1次元以上のベクトルyとに第
    2の有理ベクトル写像gを適用した結果のベクトルy'=g
    (x,y)を計算する第2の計算ステップと、 (c)前記第1の計算ステップにおいて計算された結果
    のベクトルx'と、前記第2の計算ステップにおいて計算
    された結果のベクトルy'とを結合したベクトルz'を出力
    する出力ステップと、 (d)前記第1の計算ステップにおいて計算された結果
    のベクトルx'を前記第1の記憶部に記憶させて更新する
    第1の更新ステップと、 (e)前記第2の計算ステップにおいて計算された結果
    のベクトルy'を前記第2の記憶部に記憶させて更新する
    第2の更新ステップ。
  11. 【請求項11】前記第1の有理ベクトル写像fを1次元
    以上のベクトルxに0回以上適用して得られるベクトル
    列 x, f(x), f(f(x)), f(f(f(x))), … の極限分布の密度関数は解析的な関数であり、 前記第2の有理ベクトル写像gにパラメータとして1次
    元以上のベクトルλを与えた写像g(λ,・)を1次元以上
    のベクトルyに0回以上適用して得られるベクトル列 y, g(λ,y), g(λ,g(λ,y)), g(λ,g(λ,g(λ,y))), … の極限分布の密度関数は当該パラメータλを有する解析
    的な関数であることを特徴とする請求項10に記載の出
    力方法。
  12. 【請求項12】前記第1の有理ベクトル写像fは、楕円
    関数の加法定理より導かれる有理写像、特に、ウラム=
    フォン・ノイマン写像、キュービック写像、クインティ
    ック写像、又はカツラ=フクダ写像、一般化ウラム=フ
    ォン・ノイマン写像、一般化キュービック写像もしくは
    一般化チェビシェフ写像に所定のパラメータを与えたも
    ののいずれかであることを特徴とする請求項11に記載
    の出力方法。
  13. 【請求項13】前記第2の有理ベクトル写像gは、カツ
    ラ=フクダ写像、一般化ウラム=フォン・ノイマン写
    像、一般化キュービック写像、一般化チェビシェフ写像
    のいずれかであることを特徴とする請求項11に記載の
    出力方法。
  14. 【請求項14】以下のステップを備えることを特徴とす
    るプログラムを記録した情報記録媒体。 (a)第1の記憶部に記憶された1次元以上のベクトル
    xに第1の有理ベクトル写像fを適用した結果のベクトル
    x'=f(x)を計算する第1の計算ステップと、 (b)前記第1の記憶部に記憶されたベクトルxと、第
    2の記憶部に記憶された1次元以上のベクトルyとに第
    2の有理ベクトル写像gを適用した結果のベクトルy'=g
    (x,y)を計算する第2の計算ステップと、 (c)前記第1の計算ステップにおいて計算された結果
    のベクトルx'と、前記第2の計算ステップにおいて計算
    された結果のベクトルy'とを結合したベクトルz'を出力
    する出力ステップと、 (d)前記第1の計算ステップにおいて計算された結果
    のベクトルx'を前記第1の記憶部に記憶させて更新する
    第1の更新ステップと、 (e)前記第2の計算ステップにおいて計算された結果
    のベクトルy'を前記第2の記憶部に記憶させて更新する
    第2の更新ステップ。
  15. 【請求項15】前記第1の有理ベクトル写像fを1次元
    以上のベクトルxに0回以上適用して得られるベクトル
    列 x, f(x), f(f(x)), f(f(f(x))), … の極限分布の密度関数は解析的な関数であり、 前記第2の有理ベクトル写像gにパラメータとして1次
    元以上のベクトルλを与えた写像g(λ,・)を1次元以上
    のベクトルyに0回以上適用して得られるベクトル列 y, g(λ,y), g(λ,g(λ,y)), g(λ,g(λ,g(λ,y))), … の極限分布の密度関数は当該パラメータλを有する解析
    的な関数であることを特徴とする請求項14に記載の情
    報記録媒体。
  16. 【請求項16】前記第1の有理ベクトル写像fは、楕円
    関数の加法定理より導かれる有理写像、特に、ウラム=
    フォン・ノイマン写像、キュービック写像、クインティ
    ック写像、又は、カツラ=フクダ写像、一般化ウラム=
    フォン・ノイマン写像、一般化キュービック写像もしく
    は一般化チェビシェフ写像に所定のパラメータを与えた
    もののいずれかであることを特徴とする請求項15に記
    載の情報記録媒体。
  17. 【請求項17】前記第2の有理ベクトル写像gは、楕円
    関数の加法定理より導かれる有理写像、特に、カツラ=
    フクダ写像、一般化ウラム=フォン・ノイマン写像、一
    般化キュービック写像、一般化チェビシェフ写像のいず
    れかであることを特徴とする請求項15に記載の情報記
    録媒体。
  18. 【請求項18】前記情報記録媒体は、コンパクトディス
    ク、フロッピーディスク、ハードディスク、光磁気ディ
    スク、ディジタルビデオディスク、磁気テープ、また
    は、半導体メモリであることを特徴とする請求項14か
    ら17に記載の情報記録媒体。
JP36220399A 1999-03-29 1999-12-21 ベクトル列の出力装置、出力方法、および、情報記録媒体 Expired - Fee Related JP3455748B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP36220399A JP3455748B2 (ja) 1999-12-21 1999-12-21 ベクトル列の出力装置、出力方法、および、情報記録媒体
US09/531,699 US6668265B1 (en) 1999-03-29 2000-03-20 Apparatus and method for outputting sequence of vectors, data recording medium, and carrier wave signal
US10/638,079 US7257608B2 (en) 1999-03-29 2003-08-07 Apparatus and method for outputting sequence of vectors, data recording medium, and carrier wave signal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP36220399A JP3455748B2 (ja) 1999-12-21 1999-12-21 ベクトル列の出力装置、出力方法、および、情報記録媒体

Publications (2)

Publication Number Publication Date
JP2001175168A JP2001175168A (ja) 2001-06-29
JP3455748B2 true JP3455748B2 (ja) 2003-10-14

Family

ID=18476259

Family Applications (1)

Application Number Title Priority Date Filing Date
JP36220399A Expired - Fee Related JP3455748B2 (ja) 1999-03-29 1999-12-21 ベクトル列の出力装置、出力方法、および、情報記録媒体

Country Status (1)

Country Link
JP (1) JP3455748B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3525146B2 (ja) * 2001-11-05 2004-05-10 独立行政法人 科学技術振興機構 乱数列出力装置、乱数列出力方法、プログラムならびに、情報記録媒体
JP2014222394A (ja) 2013-05-13 2014-11-27 株式会社東芝 半導体記憶装置および乱数発生器
JP2017005412A (ja) * 2015-06-08 2017-01-05 国立大学法人京都大学 データ処理装置、データ送信方法、コンピュータプログラム、及びデータサーバ

Also Published As

Publication number Publication date
JP2001175168A (ja) 2001-06-29

Similar Documents

Publication Publication Date Title
Yuan et al. Deconvolutional artificial neural network models for large eddy simulation of turbulence
Sutton The virtual element method in 50 lines of MATLAB
Baldeaux et al. Efficient calculation of the worst-case error and (fast) component-by-component construction of higher order polynomial lattice rules
Alexandrov et al. Black holes and higher depth mock modular forms
Nuyens et al. Fast component-by-component construction, a reprise for different kernels
Hinrichs et al. Optimal quasi-Monte Carlo rules on order 2 digital nets for the numerical integration of multivariate periodic functions
US6289296B1 (en) Statistical simulation method and corresponding simulation system responsive to a storing medium in which statistical simulation program is recorded
Natanzon et al. BKP and projective Hurwitz numbers
Weinzierl et al. A geometric space-time multigrid algorithm for the heat equation
Speicher Free probability theory: and its avatars in representation theory, random matrices, and operator algebras; also featuring: non-commutative distributions
Clemente-López et al. A review of the digital implementation of continuous-time fractional-order chaotic systems using FPGAs and embedded hardware
Nurminski Single-projection procedure for linear optimization
Scott et al. A “moment-conserving” reformulation of GW theory
Gibson et al. Compatible Finite Element Methods for Geophysical Flows: Automation and Implementation Using Firedrake
Hoefkens et al. Computing validated solutions of implicit differential equations
JP3030341B1 (ja) ランダムなベクトル列の出力装置、出力方法、および、情報記録媒体
Nichols et al. Fast CBC construction of randomly shifted lattice rules achieving convergence for unbounded integrands over R^s in weighted spaces with POD weights
JP3455748B2 (ja) ベクトル列の出力装置、出力方法、および、情報記録媒体
Bertola et al. Rationally weighted Hurwitz numbers, Meijer G-functions and matrix integrals
Yan et al. Revisiting the adjoint matrix for FPGA calculating the triangular matrix inversion
Dick et al. Optimal L p-discrepancy bounds for second order digital sequences
US6668265B1 (en) Apparatus and method for outputting sequence of vectors, data recording medium, and carrier wave signal
Al Aswad et al. Individual discrete logarithm with sublattice reduction
Elman et al. Polynomial iteration for nonsymmetric indefinite linear systems
Rouigueb et al. Integration of polynomials over n-dimensional simplices

Legal Events

Date Code Title Description
S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20080801

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090801

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100801

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110801

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20110801

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20120801

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20130801

Year of fee payment: 10

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees