(57)【要約】 【課題】できるだけ互いの相関が低い複数の乱数列からなる乱数列群を生成する乱数列群生成装置等を提供する。【解決手段】乱数列群生成装置１０１の複数の乱数列発生部１０２は、それぞれ、漸化式により発生させた擬似乱数に所定の修正関数を適用した結果を乱数列として出力し、初期設定部１０３は、複数の乱数列発生部１０２のそれぞれに乱数発生のための初期値を与え、独立成分分析部１０４は、複数の乱数列を独立成分分析して新たな複数の乱数列を出力する。乱数列発生部１０２で用いる漸化式はチェビシェフ多項式とすることができ、互いの次数を異なるものとしたり、初期設定部１０３が与える初期値を互いに異なるものとしたりすることが望ましい。修正関数として超効率性条件を満たすものを適用すると、当該乱数列を拡散符号として使用した際の信号対雑音比が特に向上する。【選択図】図１
2008070727.tif 000002
【特許請求の範囲】
【請求項１】
複数の乱数列発生部であって、そのそれぞれは、
擬似乱数値を一時的に記憶する記憶部、
与えられた初期値を、前記記憶部に擬似乱数値として記憶させて初期化する初期化部、
前記記憶部に擬似乱数値が記憶されるごとに、当該記憶された擬似乱数値に修正関数を適用した値を乱数列に含まれる乱数として出力する出力部、
前記出力部により乱数が出力されると、前記記憶部に記憶される擬似乱数値に当該乱数列発生部にあらかじめ対応付けられる漸化式関数を適用した結果を計算する計算部、
前記計算部による計算結果を、前記記憶部に擬似乱数値として記憶させて更新する更新部
を有する複数の乱数列発生部、
前記複数の乱数列発生部のそれぞれに初期値を与える初期設定部、
前記複数の乱数列発生部のそれぞれから出力される複数の乱数列を入力系列群として独立成分分析して、その結果である出力系列群を乱数列群として出力する独立成分分析部
を備えることを特徴とする乱数列群生成装置。
【請求項２】
請求項１に記載の乱数列群生成装置であって、
前記独立成分分析部は、前記複数の乱数列発生部のそれぞれから出力される複数の乱数列を、所定の長さごとに独立成分分析する
ことを特徴とする乱数列群生成装置。
【請求項３】
請求項１に記載の乱数列群生成装置であって、
前記複数の乱数列発生部のそれぞれにあらかじめ対応付けられる漸化式関数のいずれか少なくとも１つは、カオス写像である
ことを特徴とする乱数列群生成装置。
【請求項４】
請求項１に記載の乱数列群生成装置であって、
前記複数の乱数列発生部のそれぞれについて、i  (i≧1)番目の乱数列発生部に対応付けられる修正関数Si(・)は、
Si(x) = x
である
ことを特徴とする乱数列群生成装置。
【請求項５】
請求項１に記載の乱数列群生成装置であって、整数aに対して
Ta(cosθ) = cos(aθ)
と定義されるa次のチェビシェフ多項式Ta(・)を用い、
前記複数の乱数列発生部のそれぞれについて、i  (i≧1)番目の乱数列発生部には、漸化式関数Fi(・)と、修正関数Si(・)と、が、所定の整数列a[1]，a[2]，…および所定の整数列b[1]，b[2]，…のうち、i番目の値a[i]，b[i]  (a[i]≧2，b[i]≧2)を用いて対応付けられ、
当該漸化式関数Fi(・)は、
Fi(x) = Ta[i](x)
であり、当該修正関数Si(・)は、
Si(x) = Tb[i](x) - T1(x)
である
ことを特徴とする乱数列群生成装置。
【請求項６】
請求項５に記載の乱数列生成装置であって、
前記複数の乱数列発生部の個数Nに対し、整数i，j  (i≠j，1≦i≦N，1≦j≦N)について、
a[i] ≠ a[j]
であることを特徴とする乱数列群生成装置。
【請求項７】
請求項５に記載の乱数列生成装置であって、
前記複数の乱数列発生部の個数Nに対し、整数i，j  (i≠j，1≦i≦N，1≦j≦N)について、
a[i] = a[j]
であり、
前記初期値設定部は、互いに異なる初期値を前記複数の乱数発生部に与える
ことを特徴とする乱数列群生成装置。
【請求項８】
請求項５から７のいずれか１項に記載の乱数列群生成装置であって、
整数i (i≧1)のそれぞれについて、所定の整数列q[1]，q[2]，…のうち、i番目の値q[i]  (q[i]≧2)が対応付けられ、
b[i] = a[i]q[i]
である
ことを特徴とする乱数列群生成装置。
【請求項９】
請求項１から８のいずれか１項に記載の乱数列群生成装置により出力される乱数列群に含まれる乱数列のそれぞれを、マルチキャリア通信のサブチャネルのそれぞれに対応付け、
当該サブチャネルに対応付けられる乱数列を拡散符号として符号拡散を行う送信装置、
当該サブチャネルに対応付けられる乱数列を拡散符号として符号逆拡散を行う受信装置
を備えることを特徴とする通信システム。
【請求項１０】
請求項９に記載の通信システムであって、
前記マルチキャリア通信は、直交周波数分割多重通信である
ことを特徴とする通信システム。
【請求項１１】
複数の乱数列発生部と、初期設定部、独立成分分析部と、を備える乱数列群生成装置にて実行される乱数列群生成方法であって、
前記複数の乱数列発生部のそれぞれは、記憶部、初期化部、出力部、計算部、更新部を有し、前記記憶部には、擬似乱数値が一時的に記憶され、
前記複数の乱数列発生部のそれぞれにおいて、
前記初期化部が、与えられた初期値を、前記記憶部に擬似乱数値として記憶させて初期化する初期化工程、
前記出力部が、前記記憶部に擬似乱数値が記憶されるごとに、当該記憶された擬似乱数値に修正関数を適用した値を乱数列に含まれる乱数として出力する出力工程、
前記計算部が、前記出力工程にて乱数が出力されると、前記記憶部に記憶される擬似乱数値に当該乱数列発生部にあらかじめ対応付けられる漸化式関数を適用した結果を計算する計算工程、
前記更新部が、前記計算工程における計算結果を、前記記憶部に擬似乱数値として記憶させて更新する更新工程
を備える乱数列発生工程、
前記初期設定部が、前記複数の乱数列発生部のそれぞれに初期値を与える初期設定工程、
前記独立成分分析部が、前記複数の乱数列発生部のそれぞれから出力される複数の乱数列を入力系列群として独立成分分析して、その結果である出力系列群を乱数列群として出力する独立成分分析工程
を備えることを特徴とする乱数列群生成方法。
【請求項１２】
請求項１１に記載の乱数列群生成方法であって、
前記独立成分分析工程では、前記複数の乱数列部のそれぞれから出力される複数の乱数列を、所定の長さごとに独立成分分析する
ことを特徴とする乱数列群生成方法。
【請求項１３】
請求項１１に記載の乱数列群生成方法であって、
前記複数の乱数列発生部のそれぞれにあらかじめ対応付けられる漸化式関数のいずれか少なくとも１つは、カオス写像である
ことを特徴とする乱数列群生成方法。
【請求項１４】
請求項１１に記載の乱数列群生成方法であって、
前記複数の乱数列発生部のそれぞれについて、i  (i≧1)番目の乱数列発生部に対応付けられる修正関数Si(・)は、
Si(x) = x
である
ことを特徴とする乱数列群生成方法。
【請求項１５】
請求項１１に記載の乱数列群生成方法であって、整数aに対して
Ta(cosθ) = cos(aθ)
と定義されるa次のチェビシェフ多項式Ta(・)を用い、
前記複数の乱数列発生部のそれぞれについて、i  (i≧1)番目の乱数列発生部には、漸化式関数Fi(・)と、修正関数Si(・)と、が、所定の整数列a[1]，a[2]，…および所定の整数列b[1]，b[2]，…のうち、i番目の値a[i]，b[i]  (a[i]≧2，b[i]≧2)を用いて対応付けられ、
当該漸化式関数Fi(・)は、
Fi(x) = Ta[i](x)
であり、当該修正関数Si(・)は、
Si(x) = Tb[i](x) - T1(x)
である
ことを特徴とする乱数列群生成方法。
【請求項１６】
請求項１５に記載の乱数列生成方法であって、
前記複数の乱数列発生部の個数Nに対し、整数i，j  (i≠j，1≦i≦N，1≦j≦N)について、
a[i] ≠ a[j]
であることを特徴とする乱数列群生成方法。
【請求項１７】
請求項１５に記載の乱数列生成方法であって、
前記複数の乱数列発生部の個数Nに対し、整数i，j  (i≠j，1≦i≦N，1≦j≦N)について、
a[i] = a[j]
であり、
前記初期値設定工程では、互いに異なる初期値を前記複数の乱数発生部に与える
ことを特徴とする乱数列群生成方法。
【請求項１８】
請求項１５から１７のいずれか１項に記載の乱数列群生成方法であって、
整数i (i≧1)のそれぞれについて、所定の整数列q[1]，q[2]，…のうち、i番目の値q[i]  (q[i]≧2)が対応付けられ、
b[i] = a[i]q[i]
である
ことを特徴とする乱数列群生成方法。
【請求項１９】
請求項１１から１８のいずれか１項に記載の乱数列群生成方法により出力される乱数列群に含まれる乱数列のそれぞれを、マルチキャリア通信のサブチャネルのそれぞれに対応付け、
当該サブチャネルに対応付けられる乱数列を拡散符号として符号拡散を行う送信工程、
当該サブチャネルに対応付けられる乱数列を拡散符号として符号逆拡散を行う受信工程
を備えることを特徴とする通信方法。
【請求項２０】
請求項１９に記載の通信方法であって、
前記マルチキャリア通信は、直交周波数分割多重通信である
ことを特徴とする通信方法。
【請求項２１】
コンピュータを、請求項１から８に記載の乱数列生成装置の各部として機能させることを特徴とするプログラム。
【請求項２２】
コンピュータを、請求項９または１０に記載の通信システムの送信装置として機能させることを特徴とするプログラム。
【請求項２３】
コンピュータを、請求項９または１０に記載の通信システムの受信装置として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、できるだけ互いの相関が低い複数の乱数列からなる乱数列群を生成するのに好適な乱数列群生成装置、乱数列群生成方法、到来生成された乱数列群を用いる通信システム、通信方法、ならびに、これらをコンピュータにて実現するプログラムに関する。
【背景技術】
【０００２】
従来から、漸化式を用いた乱数列の生成方法が各種提案されている。このような乱数列の生成方法では、漸化式関数F(・)を適切に定め、これに初期値x1を与え、漸化式
xi+1 = F(xi)
に基づいて繰返し計算を行って、乱数列
x1，x2，x3，x4，…
を得るものである。この乱数列は、
x1，F(x1)，F(F(x1))，F(F(F(x1)))，…
あるいは、
x1，F(x1)，F2(x1)，F3(x1)，…
のように書くこともできる。
【０００３】
発明者らは、チェビシェフ多項式（「チェビシェフ写像」ともいう。）を漸化式関数として用いるカオス乱数の有用性について研究を続けており、以下の文献に、その技術について開示している。
【特許文献１】特開２００１−０６０９３７号公報
【非特許文献１】梅野健、モンテカルロ法におけるカオス乱数の有効性、社団法人電気学会、情報処理研究会資料、IP-99-7、P.29-36、１９９９年３月１９日・２０日
【０００４】
[特許文献１]には、チェビシェフ写像を用いて生成された乱数列を拡散符号として用いる直接スペクトラム拡散通信の技術が開示されている。
【０００５】
[非特許文献１]には、チェビシェフ写像を用いて生成された乱数列を用いてモンテカルロ法により数値積分を行う技術が開示されており、数値積分の収束を高速化するための超効率性条件が提示されている。
【０００６】
一方で、符号分割多重通信や直交分割多重通信において、サブチャネル（「サブキャリア」ともいう。）ごとに異なる拡散符号による拡散を行う技術が広く使われるようになってきている。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
このような通信技術の分野において、乱数列を拡散符号として用いる場合、特に、サブチャネルごとに符号拡散を行う場合には、多数の乱数列が必要となるが、乱数列同士の相関は低いことが、通信性能の向上の上で好ましい。
【０００８】
したがって、複数の乱数列、すなわち、乱数列群が用意した上で、これらの乱数列の互いの相関を低下させるような技術が強く求められている。
【０００９】
本発明は、上記のような課題を解決するものであって、できるだけ互いの相関が低い複数の乱数列からなる乱数列群を生成するのに好適な乱数列群生成装置、乱数列群生成方法、到来生成された乱数列群を用いる通信システム、通信方法、ならびに、これらをコンピュータにて実現するプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
以上の目的を達成するため、本発明の原理にしたがって、下記の発明を開示する。
【００１１】
本発明の第１の観点に係る乱数列群生成装置は、複数の乱数列発生部、初期設定部、独立成分分析部を備え、以下のように構成する。
【００１２】
ここで、複数の乱数列発生部のそれぞれは、記憶部、初期化部、出力部、計算部、更新部を有する。
【００１３】
記憶部は、擬似乱数値を一時的に記憶する。
【００１４】
一方、初期化部は、与えられた初期値を、記憶部に擬似乱数値として記憶させて初期化する。
【００１５】
さらに、出力部は、記憶部に擬似乱数値が記憶されるごとに、当該記憶された擬似乱数値に修正関数を適用した値乱数列に含まれる乱数として出力する。
【００１６】
そして、計算部は、出力部により乱数が出力されると、記憶部に記憶される擬似乱数値に当該乱数列発生部にあらかじめ対応付けられる漸化式関数を適用した結果を計算する。
【００１７】
一方、更新部は、計算部による計算結果を、記憶部に擬似乱数値として記憶させて更新する。
【００１８】
さらに、初期設定部は、複数の乱数列発生部のそれぞれに初期値を与える。
【００１９】
そして、独立成分分析部は、複数の乱数列発生部のそれぞれから出力される複数の乱数列を入力系列群として独立成分分析して、その結果である出力系列群を乱数列群として出力する。
【００２０】
また、本発明の乱数列群生成装置において、独立成分分析部は、複数の乱数列発生部のそれぞれから出力される複数の乱数列を、所定の長さごとに独立成分分析するように構成することができる。
【００２１】
また、本発明の乱数列群生成装置において、複数の乱数列発生部のそれぞれにあらかじめ対応付けられる漸化式関数のいずれか少なくとも１つは、カオス写像であるように構成することができる。
【００２２】
また、本発明の乱数列群生成装置において、複数の乱数列発生部のそれぞれについて、i  (i≧1)番目の乱数列発生部に対応付けられる修正関数Si(・)は、
Si(x) = x
であるように構成することができる。
【００２３】
また、本発明の乱数列群生成装置は、以下のように構成することができる。
【００２４】
すなわち、整数aに対して
Ta(cosθ) = cos(aθ)
と定義されるa次のチェビシェフ多項式Ta(・)を用いる。
【００２５】
一方、複数の乱数列発生部のそれぞれについて、i  (i≧1)番目の乱数列発生部には、漸化式関数Fi(・)と、修正関数Si(・)と、が、所定の整数列a[1]，a[2]，…および所定の整数列b[1]，b[2]，…のうち、i番目の値a[i]，b[i]  (a[i]≧2，b[i]≧2)を用いて対応付けられ、当該漸化式関数Fi(・)は、
Fi(x) = Ta[i](x)
であり、当該修正関数Si(・)は、
Si(x) = Tb[i](x) - T1(x)
である。
【００２６】
また、本発明の乱数列群生成装置において、複数の乱数列発生部の個数Nに対し、整数i，j  (i≠j，1≦i≦N，1≦j≦N)について、
a[i] ≠ a[j]
であるように構成することができる。
【００２７】
また、本発明の乱数列生成装置において、複数の乱数列発生部の個数Nに対し、整数i，j  (i≠j，1≦i≦N，1≦j≦N)について、
a[i] = a[j]
であり、初期値設定部は、互いに異なる初期値を複数の乱数発生部に与える。ように構成することができる。
【００２８】
また、本発明の乱数列群生成装置において、整数i (i≧1)のそれぞれについて、所定の整数列q[1]，q[2]，…のうち、i番目の値q[i]  (q[i]≧2)が対応付けられ、
b[i] = a[i]q[i]
であるように構成することができる。
【００２９】
本発明のその他の観点に係る通信システムは、送信装置、受信装置を備え、以下のように構成する。
【００３０】
すなわち、上記の乱数列群生成装置により出力される乱数列群に含まれる乱数列のそれぞれを、マルチキャリア通信のサブチャネルのそれぞれに対応付ける。
【００３１】
一方、送信装置では、当該サブチャネルに対応付けられる乱数列を拡散符号として符号拡散を行う。
【００３２】
さらに、受信装置では、当該サブチャネルに対応付けられる乱数列を拡散符号として符号逆拡散を行う。
【００３３】
また、本発明の通信システムにおいて、マルチキャリア通信は、直交周波数分割多重通信であるように構成することができる。
【００３４】
本発明のその他の観点に係る乱数列群生成方法は、複数の乱数列発生部と、初期設定部、独立成分分析部と、を備える乱数列群生成装置にて実行され、乱数列発生工程、初期設定工程、独立成分分析工程を備え、以下のように構成する。
【００３５】
すなわち、複数の乱数列発生部のそれぞれは、記憶部、初期化部、出力部、計算部、更新部を有し、記憶部には、擬似乱数値が一時的に記憶される。
【００３６】
一方、乱数列発生工程では、複数の乱数列発生部のそれぞれにおいて、初期化工程、出力工程、計算工程、更新工程が実行される。
【００３７】
ここで、初期化工程では、初期化部が、与えられた初期値を、記憶部に擬似乱数値として記憶させて初期化する。
【００３８】
一方、出力工程では、出力部が、記憶部に擬似乱数値が記憶されるごとに、当該記憶された擬似乱数値、もしくは当該擬似乱数値に修正関数を適用した値乱数列に含まれる乱数として出力する。
【００３９】
さらに、計算工程では、計算部が、出力工程にて乱数が出力されると、記憶部に記憶される擬似乱数値に当該乱数列発生部にあらかじめ対応付けられる漸化式関数を適用した結果を計算する。
【００４０】
そして、更新工程では、更新部が、計算工程における計算結果を、記憶部に擬似乱数値として記憶させて更新する。
【００４１】
一方、初期設定工程では、初期設定部が、複数の乱数列発生部のそれぞれに初期値を与える。
【００４２】
さらに、独立成分分析工程では、独立成分分析部が、複数の乱数列発生部のそれぞれから出力される複数の乱数列を入力系列群として独立成分分析して、その結果である出力系列群を乱数列群として出力する。
【００４３】
また、本発明の乱数列群生成方法において、独立成分分析工程では、複数の乱数列部のそれぞれから出力される複数の乱数列を、所定の長さごとに独立成分分析するように構成することができる。
【００４４】
また、本発明の乱数列群生成方法において、複数の乱数列発生部のそれぞれにあらかじめ対応付けられる漸化式関数のいずれか少なくとも１つは、カオス写像であるように構成することができる。
【００４５】
また、本発明の乱数列群生成方法において、複数の乱数列発生部のそれぞれについて、i  (i≧1)番目の乱数列発生部に対応付けられる修正関数Si(・)は、
Si(x) = x
であるように構成することができる。
【００４６】
また、本発明の乱数列群生成方法は、以下のように構成することができる。
【００４７】
すなわち、整数aに対して
Ta(cosθ) = cos(aθ)
と定義されるa次のチェビシェフ多項式Ta(・)を用いる。
【００４８】
一方、複数の乱数列発生部のそれぞれについて、i  (i≧1)番目の乱数列発生部には、漸化式関数Fi(・)と、修正関数Si(・)と、が、所定の整数列a[1]，a[2]，…および所定の整数列b[1]，b[2]，…のうち、i番目の値a[i]，b[i]  (a[i]≧2，b[i]≧2)を用いて対応付けられ、
【００４９】
当該漸化式関数Fi(・)は、
Fi(x) = Ta[i](x)
であり、当該修正関数Si(・)は、
Si(x) = Tb[i](x) - T1(x)
である。
【００５０】
また、本発明の乱数列群生成方法において、複数の乱数列発生部の個数Nに対し、整数i，j  (i≠j，1≦i≦N，1≦j≦N)について、
a[i] ≠ a[j]
であるように構成することができる。
【００５１】
また、本発明の乱数列群生成方法において、複数の乱数列発生部の個数Nに対し、整数i，j  (i≠j，1≦i≦N，1≦j≦N)について、
a[i] = a[j]
であり、初期値設定工程では、互いに異なる初期値を複数の乱数発生部に与えるように構成することができる。
【００５２】
また、本発明の乱数列群生成方法において、整数i (i≧1)のそれぞれについて、所定の整数列q[1]，q[2]，…のうち、i番目の値q[i]  (q[i]≧2)が対応付けられ、
b[i] = a[i]q[i]
であるように構成することができる。
【００５３】
本発明のその他の観点に係る通信方法は、送信工程、受信工程を備え、以下のように構成する。
【００５４】
すなわち、上記乱数列群生成方法により出力される乱数列群に含まれる乱数列のそれぞれを、マルチキャリア通信のサブチャネルのそれぞれに対応付ける。
【００５５】
一方、送信工程では、当該サブチャネルに対応付けられる乱数列を拡散符号として符号拡散を行う。
【００５６】
さらに、受信工程では、当該サブチャネルに対応付けられる乱数列を拡散符号として符号逆拡散を行う。
【００５７】
また、本発明の通信方法において、マルチキャリア通信は、直交周波数分割多重通信であるように構成することができる。
【００５８】
本発明の他の観点に係るプログラムは、コンピュータを、上記の乱数列群生成装置、通信システムの送信装置、通信システムの受信装置、として機能させ、コンピュータに、上記の乱数列群生成方法、通信方法における送信工程、通信方法における受信工程を実行させるように構成する。
【００５９】
当該プログラムは、コンピュータ読取可能な情報記録媒体（コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、または、半導体メモリを含む。）に記録することができる。
【００６０】
そして、上記の情報記録媒体は、コンピュータとは独立して配布、販売することができるほか、インターネット等のコンピュータ通信網を介して上記のプログラムそのものを配布、販売することができる。
【発明の効果】
【００６１】
本発明によれば、情報を暗号化して伝送するのに好適な暗号伝送システム、送信装置、受信装置、送信方法、受信方法、ならびに、これらをコンピュータ上にて実現するプログラムを提供することができる。
【発明を実施するための最良の形態】
【００６２】
以下に本発明の実施形態を説明する。なお、以下にあげる実施形態は、説明のためのものであり、本発明の範囲を制限する物ではない。したがって、当業者であれば、これらの各要素または全要素を、これと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も、本発明の範囲に含まれる。
【実施例１】
【００６３】
図１は、本発明の乱数列群生成装置の実施形態の概要構成を示す説明図である。以下、本図を参照して説明する。
【００６４】
本実施形態に係る乱数列群生成装置１０１は、複数（以下、N  (N≧2)個あるものとする。）の乱数列発生部１０２、初期設定部１０３、独立成分分析部１０４を備える。乱数列群生成装置１０１は、たとえば、ＣＰＵ（Central Processing Unit）やＲＡＭ（Random Access Memory）、各種の入出力機器を有するコンピュータにおいて、ＲＯＭ（Read Only Memory）、ＥＥＰＲＯＭ（Electrically Erasable Programmable ROM）、ハードディスクなどの情報記録媒体に記録されたプログラムを実行することによって、これらの各部が実現されるが、各種の電子回路の組み合わせ、たとえば、ＦＰＧＡ（Field Programmable Gate Array）、ＡＳＩＣ（Application Specific Integrated Circuit）、ＤＳＰ（Digital Signal Processor）などによって、本実施形態に係る乱数列群生成装置１０１を構成することも可能である。
【００６５】
まず、複数の乱数発生部１０２のそれぞれは、初期値が与えられると、乱数列を出力する。
【００６６】
図２は、１つの乱数列発生部１０２の概要構成を示す模式図である。以下、本図を参照して説明する。なお、理解を容易にするため、以下の説明では、当該乱数列発生部１０２は、N個のうちのi (1≦i≦N)番目のものであるとして、説明をおこなう。
【００６７】
乱数列発生部１０２のそれぞれは、記憶部２０１、初期化部２０２、出力部２０３、計算部２０４、更新部２０５を有する。
【００６８】
ここで、記憶部２０１は、擬似乱数値を一時的に記憶する。したがって、ＲＡＭやフラッシュメモリ、ハードディスクなどにより構成するのが一般的であるが、ラッチ回路などにより構成することも可能である。
【００６９】
一方、初期化部２０２は、与えられた初期値を、記憶部２０１に擬似乱数値として記憶させて初期化する。乱数列発生部１０２には、外部から初期値が与えられる。この値を、記憶部に書き込むのである。したがって、ＣＰＵがＲＡＭ等と共働して初期化部２０２として機能するのが一般的である。
【００７０】
さらに、出力部２０３は、記憶部２０１に擬似乱数値が記憶されるごとに、当該記憶された擬似乱数値に修正関数Si(・)を適用した値乱数列に含まれる乱数として出力する。出力部２０３による出力は、記憶部２０１に対する何らかの上書きが行われるたびに、その値を取得する、という処理に相当する。したがって、ＣＰＵがＲＡＭ等と共働して初期化部２０２として機能するのが一般的である。
【００７１】
もっとも単純な修正関数Si(・)は、
Si(x) = x
であり、これは、記憶部２０１に書き込まれた値をそのまま出力することを意味する。このほかの修正関数Si(・)の態様については、後述する。
【００７２】
そして、計算部２０４は、出力部２０３により乱数が出力されると、記憶部２０１に記憶される擬似乱数値に当該乱数列発生部１０２にあらかじめ対応付けられる漸化式関数Fi(・)を適用した結果を計算する。
【００７３】
すなわち、ある時点tで、記憶部２０１に記憶される値がxtであるときに、
xt+1 = Fi(xt)
を計算して、計算の結果得られたxt+1を後の処理で記憶部２０１に書き込むのである。したがって、ＣＰＵがＲＡＭ等と共働して計算部２０４として機能するのが一般的である。
【００７４】
漸化式によって擬似乱数を生成するので、同じ初期値x1が与えられると、その後に得られる擬似乱数列
x1，x2，x3，x4，…
も同じ結果が得られることになる。したがって、初期値x1は、たとえば暗号化と復号化において両側で共有することにより、ある種の「共有鍵」として使用することができる。
【００７５】
漸化式関数Fi(・)としては、線形合同法による漸化式の関数、チェビシェフ多項式、メルセンヌツイスター法の漸化式の関数等、擬似乱数を発生させるような種々のものを採用することができる。それぞれの乱数列発生部１０２に割り当てられる漸化式関数は、異なるものとするのが一般的であり、チェビシェフ多項式のように次数があるものについては、互いに異なる次数とするのが一般的であるが、まったく族の異なる関数（たとえば線形合同法とチェビシェフ多項式）を混合して使用することも可能である。
【００７６】
以下では、理解を容易にするため、チェビシェフ多項式を例にとり説明する。整数aに対するa次のチェビシェフ多項式とは、
Ta(cosθ) = cos(aθ)
のように定義される関数であり、具体的には、
T0(x) = 1；
T1(x) = x；
T2(x) = 2x2 - 1；
T3(x) = 4x3 - 3x；  …
のように定義される関数である。
【００７７】
図３は、２次から５次までのチェビシェフ多項式をグラフにして示す説明図である。以下、本図を参照して説明する。
【００７８】
本図に示すように、２次以上のチェビシェフ多項式y = Ta(x)は、いずれも、開区間-1<x<1を開区間-1<y<1に写像し、閉区間-1≦x≦1を閉区間-1≦y≦1に写像する有理写像である。このようなチェビシェフ多項式を用いて得られる乱数はカオス乱数と呼ばれ、発明者らによってその特徴が研究されている。
【００７９】
i番目の乱数列発生部１０２には、チェビシェフ多項式の次数として整数a[i]  (a[i]≧2)が割り当てられている。この次数は、各乱数列発生部１０２ごとに異なるものとしても良いし、すべての乱数列発生部１０２において等しいものとしても良い。すなわち、任意の1≦i≦N，1≦j≦N，i≠jについて、
a[i] ≠ a[j]
としても良い。また、任意の1≦i≦N，1≦j≦N，i≠jについて、
a[i] = a[j]
としても良い。
【００８０】
一方、更新部２０５は、計算部２０４による計算結果を、記憶部２０１に擬似乱数値として記憶させて更新する。すなわち、xtから次のxt+1が計算されると、その値を記憶部２０１に書き込む。したがって、ＣＰＵがＲＡＭ等と共働して更新部２０５として機能するのが一般的である。
【００８１】
初期化部２０２による値の書き込み、もしくは、更新部２０５による値の書き込みを契機として、当該書き込まれた値は、出力部２０３から出力される。
【００８２】
上記のように、出力部２０３では修正関数Si(・)を用いるが、この修正関数Si(・)として、チェビシェフ多項式を用いることも可能である。このとき、i番目の乱数列発生部１０２にチェビシェフ多項式の次数として整数b[i]  (b[i]≧2)が割り当てられているものとして、
Si(x) = Tb[i](x) - T1(x)
= Tb[i](x) - x
を採用することができ、特に、任意のiについて
b[i] = 4
とすることができる。
【００８３】
これは、「超効率性条件」と呼ばれる性質を満たすようにするための修正であり、超効率性条件を満たす他の例については、後述する。
【００８４】
さて、上述したように、N個の乱数列発生部１０２が用意されているが、初期設定部１０３は、複数の乱数列発生部１０２のうち、i番目のものに対して初期値
xi,1
を与える。すなわち、初期設定部１０３が用意する初期値は、
xi,1，xi,2，xi,3，…,xi,N
のN個である。
【００８５】
N個の乱数列発生部１０２に割り当てられる漸化式関数が互いに異なる場合には、
xi,1 = xi,2 = xi,3 = … =xi,N
として、すべての初期値が等しいものとしても良いが、典型的には、初期値は互いに異なるものとする。すなわち、任意の1≦i≦N，1≦j≦N，i≠jについて、
xi,1 ≠ xj,1
とする。
【００８６】
このように初期値
xi,1，xi,2，xi,3，…,xi,N
が、各乱数列発生部１０２に与えられると、１番目の乱数列発生部１０２からは乱数列
x1,1，x1,2，x1,3，x1,4，…
が出力され、２番目の乱数列発生部１０２からは乱数列
x2,1，x2,2，x2,3，x2,4，…
が出力され、……、i番目の乱数列発生部１０２からは乱数列
xi,1，xi,2，xi,3，xi,4，…
が出力され、……、N番目の乱数列発生部１０２からは乱数列
xN,1，xN,2，xN,3，xN,4，…
が出力され、合計N個の乱数列（まとめて「乱数列群」と呼ぶ。）が出力されることになる。
【００８７】
そして、独立成分分析部１０４は、N個の乱数列発生部１０２のそれぞれから出力されるN個の乱数列を入力系列群として独立成分分析して、その結果である出力系列群を乱数列群として出力する。
【００８８】
独立成分分析は、当初は信号分離の分野で研究が進められた手法であり、最も典型的かつ理想的な応用例は、N個のマイクにより異なる場所でオーケストラにより演奏された楽曲全体の音声信号を録音し、これを独立成分分析すると、N種の楽器それぞれを演奏したパートの音声が得られる、というものである。このような技術をＢＳＳ（Blind Source Separation）と呼ぶ。
【００８９】
本発明では、N個の乱数列を独立成分分析の入力系列群とし、これを独立成分分析して、N個の出力系列群とするのである。
【００９０】
ここで、各乱数列発生部１０２に対して異なる漸化式関数を適用した場合、それぞれの乱数列の相関は、比較的低い。したがって、独立成分分析の結果は、入力系列群を少しだけ修正して、互いの相関を低くしたものになることが多い。
【００９１】
したがって、出力系列群もまた、N個の乱数列である、と考えることができ、しかも、入力系列群よりも「互いに独立」であり、したがって、「相関がより低い」ことが期待できる。
【００９２】
なお、独立成分分析の結果をさらに独立成分分析しても、それ以上の分離は生じないので、有効な独立成分分析の段数は１段である。
【００９３】
なお、独立成分分析の入力系列群は、その長さを定める必要があるのが一般的である。そこで、符号分割多重や直交周波数分割多重における１つのシンボルに重畳される拡散符号の長さ（チップ数）ごとに、入力系列群に含まれる乱数列のそれぞれを区切って、その長さごとに独立成分分析を行うのが一般的である。
【００９４】
また、通信機器で拡散符号として用いる場合には、何回目かの区切り（典型的には最初の区切り）に得られた拡散符号長の乱数列群を繰り返し使用することとしても良いし、得られる拡散符号長の乱数列群をそのまま順に使用することとしても良い。
【００９５】
さらに、区切りの長さは、拡散符号長の倍数としても良いし、拡散符号長とは無関係な適当な長さとする手法を採用しても良い。
【００９６】
なお、無限長の信号列を独立成分分析する適応的独立成分分析の手法を用いる場合には、このような区切りは必ずしも必要ない。
【００９７】
入力系列群である乱数列群
x1,1，x1,2，x1,3，x1,4，…，
x2,1，x2,2，x2,3，x2,4，…，
……，
xi,1，xi,2，xi,3，xi,4，…，
……，
xN,1，xN,2，xN,3，xN,4，…
に対しては、これと同じ個数、同じ長さの出力系列群である乱数列群
y1,1，y1,2，y1,3，y1,4，…，
y2,1，y2,2，y2,3，y2,4，…，
……，
yi,1，yi,2，yi,3，yi,4，…，
……，
yN,1，yN,2，yN,3，yN,4，…
が得られる。
【００９８】
このyi,tを、符号分割多重通信や直交周波数分割多重通信におけるi番目のサブチャネル（サブキャリア）に対して重畳する拡散符号とするのであるが、上記のような性質から、通信性能が向上することが期待される。その数値シミュレーションの結果については、後述する。
【実施例２】
【００９９】
以下では、上記の乱数列群生成装置１０１を利用する通信システムの実施形態について説明する。
【０１００】
図４は、本実施形態に係る通信システムの概要構成を示す模式図である。以下、本図を参照して説明する。
【０１０１】
本実施形態に係る通信システム４０１は、送信装置４１１、受信装置４２１を備える。
【０１０２】
本発明の通信システム４０１では、N個のサブキャリアを用いる分割多重通信が行われる。したがって、送信装置４１１では、伝送信号の分解を送信側分解部４１２で行い、拡散部４１３が各サブキャリアに対して乱数列群生成装置１０１で生成された乱数列を拡散符号として拡散を行い、拡散された信号の結合を送信側結合部４１４で行って、送信部４１５が送信する。
【０１０３】
一方、受信装置４２１では、受信部４２２が受信した信号を受信側分解部４２３で分解し、逆拡散部４２４が、各サブキャリアに対して乱数列群生成装置１０１で生成された乱数列を拡散符号として逆拡散を行い、逆拡散された信号の結合を受信側結合部４２５で行って、伝送信号を得る。
【０１０４】
ここで、通信しあう送信装置４１１と受信装置４２１とは、各々が有する乱数列群生成装置１０１の初期設定部１０３が同じ初期値を出力する。これによって、同じサブキャリアに対して同じ拡散符号が割り当てられるのである。
【０１０５】
分割多重には、符号分割多重や直交周波数分割多重、時分割多重など、各種の手法があるが、伝送信号を送信側でサブキャリアに分解し、各サブキャリアを対応する拡散符号を拡散し、結合して送信し、受信側では受信した信号をサブキャリアに分解し、各サブキャリアを対応する拡散符号で逆拡散し、結合する処理は共通している。
【０１０６】
図５は、通信システムが符号分割多重通信の場合の詳細な構成を示す説明図である。以下、本図を参照して説明する。
【０１０７】
本図に示すように、送信側分解部４１２は、直並列変換を行う直並列変換部５１１により構成され、送信側結合部４１４は、各信号を加算する加算部５１２により構成される。
【０１０８】
一方、受信側分解部４２３は、受信信号を複数の信号に分岐・複製する分岐部５２１により構成され、受信側結合部４２５は、並直列変換を行う並直列変換部５２２により構成される。
【０１０９】
図６は、通信システムが直交周波数分割多重通信の場合の詳細な構成を示す説明図である。以下、本図を参照して説明する。
【０１１０】
本図に示すように、送信側分解部４１２は、直並列変換を行う直並列変換部６１１と、これを逆フーリエ変換する逆フーリエ変換部６１２と、により構成され、この後に各サブキャリアが拡散される。送信側結合部４１４は、各信号を並直列変換する並直列変換部６１３により構成される。
【０１１１】
一方、受信側分解部４２３は、直並列変換を行う直並列変換部６２１により構成され、受信側結合部４２５は、各サブキャリアを逆拡散した後に、これをフーリエ変換するフーリエ変換部６２２と、並直列変換を行う並直列変換部６２３により構成される。
【０１１２】
なお、送信側で逆フーリエ変換と拡散の順序を逆にするとともに、受信側で逆拡散とフーリエ変換の順序を逆にすることとしても良い。
【０１１３】
以下、乱数列群生成装置１０１が生成する乱数列を拡散符号として用いる場合の性能について、詳細に説明する。
【０１１４】
混合した信号の中から目的の信号を同定する場合には、他の信号の干渉雑音による阻害を抑える必要があり、このために、干渉雑音が低くなるような拡散符号を生成する必要がある。乱数列群生成装置１０１は、まさにこのような目的に適合する乱数列を拡散符号として生成するものである。
【０１１５】
ある符号Sを用いた場合、符号の長さやユーザ数に対して、どの程度干渉雑音が抑えられるかは、信号雑音比SNRからわかる。ここで、符号Sに対する統計平均を≪S≫と表記することとし、同時に存在する符号の数をK（乱数列群生成装置１０１における乱数発生部１０２の数に相当する。）、符号長をN（独立成分分析部１０４が区切る長さに相当する。）、各符号をSi,j  (0≦i≦K-1，1≦j≦N)とすると、
SNR = ≪Σj=1N S0,j2≫/〔≪Σi=1K-1(Σj=1N S0,jSi,j)2≫〕1/2
となる。
【０１１６】
一般に、符号Sを独立成分分析した場合の信号対雑音比SNRICAは解析的に、
SNRICA = 〔1 + ≪Avg(S0)2≫〕/〔≪Σi=1K-1(Avg(S0)Avg(Si))2≫〕1/2；
Avg(Si) = Σj=1N  Si,j/N
のように示すことができる。
【０１１７】
さて、時刻jのときのi番目のチャネルの符号SAi,jをチェビチェフ多項式を漸化式関数として用いて
SAi,j+1 = Ta[i](SAi,j)；
とし、任意のi≠jについて
a[i] ≠ a[j]
のように設定するか、もしくは、互いに異なる初期値を与えることとして、次数に対する制限を緩和した場合、この符号SAの信号対雑音比SNRAは、
SNRA = 〔N/(K-1)〕1/2
となる。
【０１１８】
一方、この符号の平均値については、
〔Avg(SAi)〕2 = 1/N
が成立することが知られている。
【０１１９】
したがって、チェビシェフ多項式とSAとを組み合わせた場合の信号対雑音比SNRAICAは、
SNRAICA = (N+1)/(K-1)1/2
となる。これは、上記実施形態において、修正関数をいずれも
B(x) = x
なる関数B(・)に設定した場合に相当する。
【０１２０】
さらに信号対雑音比を向上させるため、修正関数B(・)として、
B(x) = T4(x) - T1(x)
とし、得られる符号SBi,jを用いた場合を考える。
【０１２１】
このとき、独立成分分析を通す前の各符号の平均は、
〔Avg(SBi)〕2 = 1/N2
であることが知られている。
【０１２２】
したがって、独立成分分析後の信号対雑音比SNRBICAは、
SNRBICA = (N2+1)/(K-1)1/2
となる。
【０１２３】
図７は、上記の各符号について、K = 2のときの符号長と信号対雑音比の関係を示すグラフである。以下、本図を参照して説明する。
【０１２４】
本図に示すように、各符号によって性能が大きく異なり、上記に説明する手法の順に、次第に性能が向上していく。
【０１２５】
通常のカオス信号をそのまま拡散符号に用いた場合には、信号対雑音比は符号長の1/2乗に比例するが、独立成分分析を用い適切な修正関数をフィルタとして用いることによって、信号対雑音比を符号長の自乗に比例するようにできることがわかる。
【０１２６】
なお、修正関数B(・)によるフィルタ処理については、このフィルタが[非特許文献１]に開示するような超効率性条件を満たすこととすれば、上記のような性能の向上を図ることができるようになる。
【０１２７】
具体的な例をあげる。漸化式関数Fi(・)としてTa[i](・)を採用するときは、係数ac，a0，a1，a2，…，aLについて
Σm=0L am = 0
が成立するときに、修正関数B(x)として、
p = a[i]
として、
B(x) = ac + Σm=0LT(pm，x)；
Ta(x) = T(a,x)
を採用すれば、超効率性条件を満たすことができる。
【０１２８】
上記の例では、
L = 2；
p = 2；
ac = 0；
a0 = 0，a1 = -1，a2 = 1
としており、適当な２以上の整数q[i]を用いて、
b[i] = a[i]q[i]
とするのであるが、
q[i] = 2；
b[i] = 22 = 4；
Si(x) = Tb[i](x) - T1(x) = T4(x) - x
としているのである。
【０１２９】
このような、超効率性条件を満たすチェビシェフ多項式の線形和を修正関数として用いることにより、信号対雑音比をさらに向上させることができる。
【産業上の利用可能性】
【０１３０】
以上説明したように、本発明によれば、できるだけ互いの相関が低い複数の乱数列からなる乱数列群を生成するのに好適な乱数列群生成装置、乱数列群生成方法、到来生成された乱数列群を用いる通信システム、通信方法、ならびに、これらをコンピュータにて実現するプログラムを提供することができる。
【図面の簡単な説明】
【０１３１】
【図１】本発明の実施形態に係る乱数列群生成装置の概要構成を示す模式図である。
【図２】乱数列発生部の概要構成を示す模式図である。
【図３】２次から５次までのチェビシェフ多項式をグラフにして示す説明図である。
【図４】本実施形態に係る通信システムの概要構成を示す模式図である。
【図５】通信システムが符号分割多重通信の場合の詳細な構成を示す説明図である。
【図６】通信システムが直交周波数分割多重通信の場合の詳細な構成を示す説明図である。
【図７】符号長と信号対雑音比の関係を示すグラフである。
【符号の説明】
【０１３２】
１０１  乱数列群生成装置
１０２  乱数列発生部
１０３  初期設定部
１０４  独立成分分析部
２０１  記憶部
２０２  初期化部
２０３  出力部
２０４  計算部
２０５  更新部
４０１  通信システム
４１１  送信装置
４１２  送信側分解部
４１３  拡散部
４１４  送信側結合部
４２１  受信装置
４２２  受信部
４２３  受信側分解部
４２４  逆拡散部
４２５  受信側結合部
５１１  直並列変換部
５１２  加算部
５２１  分岐部
５２２  並直列変換部
６１１  直並列変換部
６１２  逆フーリエ変換部
６１３  並直列変換部
６２１  直並列変換部
６２２  フーリエ変換部
６２３  並直列変換部
【図１】
2008070727.tif 000003
【図２】
2008070727.tif 000004
【図３】
2008070727.tif 000005
【図４】
2008070727.tif 000006
【図５】
2008070727.tif 000007
【図６】
2008070727.tif 000008
【図７】
2008070727.tif 000009