(57)【要約】  本発明は、確率計算を行うことができるモジュラ確率マシン（１０）に関し、  複数のランダム変数（Ｏ、Ｄ、Ｚ）に対応し、出力として、指定された変数の値により決定される少なくとも１つの指定されてない変数の分布の表現を返すために、指定された変数の値の入力を受け取ることができる少なくとも１つの確率分布モジュール（ＳＤ1、ＳＤ2）と、それぞれが単一のランダム変数（Ｏ、Ｄ、Ｚ）に対応し、出力として、積分布の表現を返すために、入力として、分布の表現を受け取ることができる確率乗算器と、出力として、比例して正規化された表現を返すために、入力として、分布の表現を受け取ることができる確率線形正規化器と、を備える、少なくとも２つの確率変数モジュール（ＳＶ1、ＳＶ2、ＳＶ3）と、を備える。【選択図】図６
2019537173.tif 000002
【特許請求の範囲】
【請求項１】
確率ビットストリームの確率計算を行うことができるモジュラ確率マシン（１０）であって、
複数のランダム変数（Ｏ、Ｄ、Ｚ）に対応する少なくとも１つの確率分布モジュール（ＳＤ）であって、当該確率分布モジュール（ＳＤ）は、入力として、前記複数のランダム変数の中から、指定されたランダム変数の値を受け取り、出力として、前記入力として受け取った指定されたランダム変数の値により条件付けられる少なくとも１つの指定されてないランダム変数の確率の分布の表現を返すことができる、少なくとも１つの確率分布モジュール（ＳＤ）と、
それぞれが単一のランダム変数（Ｏ、Ｄ、Ｚ）に対応する、少なくとも２つの確率変数モジュール（ＳＶ）であって、
入力として、同じランダム変数（Ｘ）の第１確率分布（Ｐ1（Ｘ））および第２確率分布（Ｐ2（Ｘ））の表現を受け取り、出力として、前記ランダム変数（Ｘ）の積確率分布（Ｐ（Ｘ））の表現を返すことができる、確率乗算器（ＳＰＯ）と、
入力として、確率分布のビット形式で表現を受け取り、出力として、前記受け取った確率分布の比例して正規化された表現であって、当該比例して正規化された表現は、前記入力として受け取った表現よりも多くの１であるビットを有する、比例して正規化された表現を返すことができる、確率線形正規化器（ＳＰＮ）と、を備える、少なくとも２つの確率変数モジュール（ＳＶ）と、を備える、モジュラ確率マシン（１０）。
【請求項２】
前記確率分布モジュール（ＳＤ）および前記確率変数モジュール（ＳＶ）は、確率ビット生成器（ＳＢＧ）であって、当該確率ビット生成器（ＳＢＧ）のそれぞれは、１であるビットが生起する確率が前記確率ビット生成器（ＳＢＧ）に記憶される値に比例する確率ビットストリームを生成できる、確率ビット生成器（ＳＢＧ）を備える、請求項１に記載のマシン（１０）。
【請求項３】
前記確率分布モジュール（ＳＤ）は、前記複数のランダム変数の異なる値の可能な組み合わせの数と同じ数の確率ビット生成器を備える、請求項２に記載のマシン（１０）。
【請求項４】
前記確率分布モジュール（ＳＤ）の出力において返される確率分布の表現は、前記確率分布モジュール（ＳＤ）に記憶される同時または条件付き確率値から生成される、請求項１〜３のいずれか一項に記載のマシン（１０）。
【請求項５】
ランダム変数の確率分布の表現は、サンプルベクトルと呼ばれる確率ビットベクトルの時系列であって、当該サンプルベクトルのそれぞれは、前記ランダム変数の基数と同じ数の座標を有する、確率ビットベクトルの時系列であり、
同じランクの前記座標に対する前記時系列における１であるビットの数は、前記ランクに対応する確率値に比例する、請求項１〜４のいずれか一項に記載のマシン（１０）。
【請求項６】
前記確率ビットベクトルは、１であるビットを１つのみ有するサンプル値である、請求項５に記載のマシン（１０）。
【請求項７】
各確率変数モジュール（ＳＶ）は、アクティブ化および非アクティブ化されることができる確率サンプラであって、当該確率サンプラは、入力として、確率分布を表すサンプルベクトルを取り、出力として、同じ確率分布を表すサンプル値を返すことができる、確率サンプラ（ＳＰＳ）を備える、請求項５および６と組み合わされた請求項１〜６のいずれか一項に記載のマシン（１０）。
【請求項８】
各確率変数モジュール（ＳＶ）は、決定性レジームと呼ばれるレジームに従って動作するのに適し、当該レジームにおいて、前記確率変数モジュール（ＳＶ）は、前記ランダム変数の固定値の表現を送出することができる、請求項７に記載のマシン（１０）。
【請求項９】
各確率変数モジュール（ＳＶ）は、データバスにより前記確率分布モジュール（ＳＤ）に接続され、当該データバスのそれぞれは、前記確率変数モジュール（ＳＶ）に対応する前記ランダム変数の基数と同じ数のワイヤを備える、請求項１〜８のいずれか一項に記載のマシン（１０）。
【請求項１０】
少なくとも２つのランダム変数に対して行われる確率計算の方法であって、
モジュラ確率マシン（１０）を提供するステップであって、当該モジュラ確率マシン（１０）は、
複数のランダム変数（Ｏ、Ｄ、Ｚ）に対応する少なくとも１つの確率分布モジュール（ＳＤ）であって、当該確率分布モジュール（ＳＤ）は、入力として、前記複数のランダム変数の中から、指定されたランダム変数の値を受け取り、出力として、前記入力として受け取った指定されたランダム変数の値により条件付けられる少なくとも１つの指定されてないランダム変数の確率の分布の表現を返すことができる、少なくとも１つの確率分布モジュール（ＳＤ）と、
それぞれが単一のランダム変数（Ｏ、Ｄ、Ｚ）に対応する、少なくとも２つの確率変数モジュール（ＳＶ）であって、
入力として、同じランダム変数（Ｘ）の第１確率分布（Ｐ1（Ｘ））および第２確率分布（Ｐ2（Ｘ））の表現を受け取り、出力として、前記ランダム変数（Ｘ）の積確率分布（Ｐ（Ｘ））の表現を返すことができる、確率乗算器（ＳＰＯ）と、
入力として、確率分布のビット形式で表現を受け取り、出力として、前記受け取った確率分布の比例して正規化された表現であって、当該比例して正規化された表現は、前記入力として受け取った表現よりも多くの１であるビットを有する、比例して正規化された表現を返すことができる、確率線形正規化器（ＳＰＮ）と、を備える、少なくとも２つの確率変数モジュール（ＳＶ）と、を備え、
ランダム変数の確率分布の表現は、サンプルベクトルと呼ばれる確率ビットベクトルの時系列であって、当該サンプルベクトルのそれぞれは、前記ランダム変数の基数と同じ数の座標を有する、確率ビットベクトルの時系列であり、
同じランクの前記座標に対する前記時系列における１であるビットの数は、前記ランクに対応する確率値に比例し、
前記確率ビットベクトルは、１であるビットを１つのみ有するサンプル値であり、
各確率変数モジュール（ＳＶ）は、アクティブ化および非アクティブ化されることができる確率サンプラであって、当該確率サンプラは、入力として、確率分布を表すサンプルベクトルを取り、出力として、同じ確率分布を表すサンプル値を返すことができる、確率サンプラ（ＳＰＳ）を備え、
各確率変数モジュール（ＳＶ）は、決定性レジームと呼ばれるレジームに従って動作するのに適し、当該レジームにおいて、前記確率変数モジュール（ＳＶ）は、前記ランダム変数の固定値の表現を送出することができ、
前記計算が行われるランダム変数と同じ数の確率変数モジュール（ＳＶ）を備える、マシン（１０）を提供するステップと、
前記行われる確率計算に基づいて、少なくとも１つの確率変数モジュール（ＳＶ）の確率サンプラ（ＳＰＳ）をアクティブ化または非アクティブ化するステップと、
前記確率変数モジュール（ＳＶ）が、前記決定性レジームに従って動作するように、前記確率変数モジュール（ＳＶ）をオプションとして構成するステップと、
前記行われる確率計算に基づいて、ある確率変数モジュール（ＳＶ）とある確率分布モジュール（ＳＤ）との間でデータバスを接続または切断するステップと、を備える、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モジュラ確率（ストカスティック）マシン（machine stochastique modulaire）に関する。本発明は、また、対応する確率を計算する方法にも関する。
【背景技術】
【０００２】
モジュラ確率マシンは、多くの確率計算に関わるすべての分野に適用可能である。例えば、金融市場、経済モデル、天気予報に関する分野に関わる。
【０００３】
特に、モジュラ確率マシンは、一般にマルコフ連鎖によるモンテカルロ法を使用して解かれる問題を解くことができる。
【０００４】
例えば、金融の場合、資産の価格は、確率微分方程式（e’quation diffe’rentielle stochastique）の解として表される。このような資産から導出される収益（produits）の評価は、ある場合、モンテカルロ法と組み合わされた離散マルコフ連鎖を使用して確率微分方程式に解を近似する方法に基づく。
【０００５】
現在、多くの確率計算を使用する分野では、従来のマイクロプロセッサが、一般には、フォンノイマン型のコンピュータシステム内で（au sein de syste`mes informatiques de type Von Neumann）使用される。
【０００６】
このような場合、ソフトウェア命令は、マイクロプロセッサの別個のメモリに記憶される。マイクロプロセッサは、メモリ内を読み取ることにより、受け取ったコマンドに基づいてソフトウェア命令を実行できる。
【０００７】
従来のマイクロプロセッサは、異なる性質の計算問題を解くために異なる演算を行うことができるという利点を有する。
【０００８】
「従来のマイクロプロセッサ」は、例えば、確率形式（forme probabiliste）における表現とは反対に、例えば、予め定義された数を示すワードに対応するビットを使用する、決定性形式（forme de’terministe）で提示される情報を扱うマイクロプロセッサを指す。
【０００９】
しかしながら、現在のコンピュータシステムにおいて使用される従来のマイクロプロセッサは、クロックのペーシング（cadencement）の観点における（en termes de）制限により引き起こされる演算速度と構成要素の小型化との観点における物理的制限に遭遇する。
【００１０】
更に、いわゆる確率マイクロプロセッサ構造は、既存の決定性アーキテクチャにより示されるいくつかの制限を取り除くことを可能にすることが周知である。
【００１１】
しかしながら、このような構造は、すべての確率計算を効率よくかつ柔軟に行うことを可能にしない。特に、異なる問題を解くために同じ構造を使用する可能性は、現時点では対処されていない。言い換えれば、構造は、所与の特定の確率計算に対応し、異なる計算に使用することはできない。
【発明の概要】
【発明が解決しようとする課題】
【００１２】
したがって、決定性演算（fonctionnement de’terministe）の技術的障壁に縛られることなく、異なる確率計算問題を解くことができる確率マイクロプロセッサ構造（structure de microprocesseur stochastique）を有する必要がある。
【課題を解決するための手段】
【００１３】
この目的のため、確率ビットストリーム（flux de bits stochastiques）の確率計算を行うことができるモジュラ確率マシンが提案される。当該マシンは、複数のランダム変数に対応する少なくとも１つの確率分布モジュール（module de distribution stochastique）であって、確率分布モジュールは、入力として、複数のランダム変数の中から、指定されたランダム変数の値を受け取り、出力として、入力として受け取った指定されたランダム変数の値により条件付けられる少なくとも１つの指定されてないランダム変数の確率の分布の表現を返すことができる、少なくとも１つの確率分布モジュールを備える。当該マシンは、また、それぞれが単一のランダム変数に対応する、少なくとも２つの確率変数モジュール（module de variable stochastique）を備える。確率変数モジュールのそれぞれは、確率乗算器（multiplieur stochastique）および確率線形正規化器（normalisateur proportionnel stochastique）を備える。確率乗算器は、入力として、同じランダム変数の第１確率分布および第２確率分布の表現を受け取り、出力として、ランダム変数の積確率分布（distribution de probabilite’s produit de ladite variable ale’atoire）の表現を返すことができる。確率線形正規化器は、入力として、確率分布のビット形式で表現を受け取り、出力として、受け取った確率分布の比例して正規化された表現であって、当該比例して正規化された表現は、前記入力として受け取った表現よりも多くの１であるビットを有する、比例して正規化された表現を返すことができる。
【００１４】
特定の実施形態によれば、当該マシンは、単独で考察され、または任意の技術的に可能な組み合わせに係る、下記の、
確率分布モジュールおよび確率変数モジュールは、確率ビット生成器であって、確率ビット生成器のそれぞれは、１であるビットが生起する確率が確率ビット生成器に記憶される値に比例する確率ビットストリームを生成できる、確率ビット生成器を備え、
確率分布モジュールは、複数のランダム変数の異なる値の可能な組み合わせの数と同じ数の確率ビット生成器を備え、
確率分布モジュールの出力において返される確率分布の表現は、確率分布モジュールに記憶される同時または条件付き確率（probabilite’s conjointes ou conditionnelles）から生成され、
ランダム変数の確率分布の表現は、サンプルベクトルと呼ばれる確率ビットベクトルの時系列（se’rie temporelle）であって、サンプルベクトルのそれぞれは、ランダム変数の基数と同じ数の座標を有する、確率ビットベクトルの時系列であり、同じランクの座標に対する時系列における１であるビットの数は、ランクに対応する確率値に比例し、
確率ビットベクトルは、１であるビットを１つのみ有するサンプル値であり、
各確率変数モジュールは、アクティブ化および非アクティブ化されることができる確率サンプラであって、確率サンプラは、入力として、確率分布を表すサンプルベクトルを取り（prendre）、出力として、同じ確率分布を表すサンプル値を返すことができる、確率サンプラを備え、
各確率変数モジュールは、決定性レジームと呼ばれるレジームに従って動作するのに適し、当該レジームにおいて、確率変数モジュールは、ランダム変数の固定値の表現を送出する（de’livrer）ことができ、
各確率変数モジュールは、データバスにより確率分布モジュールに接続され、データバスのそれぞれは、確率変数モジュールに対応するランダム変数の基数と同じ数のワイヤを備える、という特徴の１つまたは複数を備える。
【００１５】
また、少なくとも２つのランダム変数に対して行われる（実現される）確率計算（calcul de probabilite’s a` re’aliser）の方法も提案される。当該方法は、
モジュラ確率マシンを提供するステップであって、モジュラ確率マシンは、
複数のランダム変数に対応する少なくとも１つの確率分布モジュールであって、確率分布モジュールは、入力として、複数のランダム変数の中から、指定されたランダム変数の値を受け取り、出力として、入力として受け取った、指定されたランダム変数の値により条件付けられる少なくとも１つの指定されてないランダム変数の確率の分布の表現を返すことができる、少なくとも１つの確率分布モジュールと、
それぞれが単一のランダム変数に対応する、少なくとも２つの確率変数モジュールであって、
入力として、同じランダム変数の第１確率分布および第２確率分布の表現を受け取り、出力として、ランダム変数の積確率分布の表現を返すことができる、確率乗算器と、
入力として、確率分布のビット形式で表現を受け取り、出力として、受け取った確率分布の比例して正規化された表現であって、比例して正規化された表現は、入力として受け取った表現よりも多くの１であるビットを有する、比例して正規化された表現を返すことができる、確率線形正規化器と、を備える、少なくとも２つの確率変数モジュールと、を備え、
ランダム変数の確率分布の表現は、サンプルベクトルと呼ばれる確率ビットベクトルの時系列であって、サンプルベクトルのそれぞれは、ランダム変数の基数と同じ数の座標を有する、確率ビットベクトルの時系列であり、
同じランクの座標に対する時系列における１であるビットの数は、ランクに対応する確率値に比例し、
確率ビットベクトルは、１であるビットを１つのみ有するサンプル値であり、
各確率変数モジュールは、アクティブ化および非アクティブ化されることができる確率サンプラであって、確率サンプラは、入力として、確率分布を表すサンプルベクトルを取り、出力として、同じ確率分布を表すサンプル値を返すことができる、確率サンプラを備え、
各確率変数モジュールは、決定性レジームと呼ばれるレジームに従って動作するのに適し、当該レジームにおいて、確率変数モジュールは、ランダム変数の固定値の表現を送出することができ、
計算が行われるランダム変数と同じ数の確率変数モジュールを備える、マシンを提供するステップと、
行われる確率計算に基づいて、少なくとも１つの確率変数モジュールの確率サンプラをアクティブまたは非アクティブ化するステップと、
確率変数モジュールが、決定性レジームに従って動作するように、確率変数モジュールをオプションとして構成するステップと、
行われる確率計算に基づいて、ある確率変数モジュールとある確率分布モジュールとの間でデータバスを接続または切断するステップと、を備える。
【００１６】
特定の実施形態によれば、計算方法は、単独で考察され、または任意の技術的に可能な組み合わせに係る、下記の、
モジュラ確率マシンを提供するステップは、確率分布モジュールの数を決定するサブステップを備え、
モジュラ確率マシンを提供するステップは、確率変数モジュールの数を決定するサブステップを備え、
モジュラ確率マシンを提供するステップは、データバスの数を決定するサブステップを備え、
モジュラ確率マシンを提供するステップは、確率分布モジュールの数と、確率変数モジュールの数と、データバスの数と、確率分布モジュール、確率変数モジュール、およびデータバスの配置と、を最適にするためのアルゴリズムを実施することを備える、という特徴の１つまたは複数を備える。
【図面の簡単な説明】
【００１７】
【図１】モジュラ確率マシンを実現することを可能にする構成要素セットを概略的に例示する図である。
【図２】確率分布モジュールの例を概略的に例示する図である。
【図３】確率変数モジュールの例を概略的に例示する図である。
【図４】確率乗算器の例を概略的に例示する図である。
【図５】確率線形正規化器の例を概略的に例示する図である。
【図６】モジュラ確率マシンの例を概略的に例示する図である。
【図７】確率計算を行うための、図６のモジュラ確率マシンの構成の例を示す図である。
【発明を実施するための形態】
【００１８】
本発明の他の特徴および利点は、例としてのみ、そして図面を参照して行われる、本発明の実施形態の下記の記述を読むことにより明確になるであろう。
【００１９】
モジュラ確率マシンは、異なるタイプの構成要素を配置したものである。
【００２０】
構成要素のタイプ、構成要素の数および構成要素の配置の選択は、行われる確率計算に依存する。
【００２１】
モジュラ確率マシンを製作することを可能にする構成要素セットは、図１に示される。
【００２２】
図１に示されるように、構成要素セットは、３つのタイプの構成要素、すなわち、確率分布モジュール（module de distribution stochastique）と、ランダム変数モジュール（module de variable ale’atoire）と、データバス（bus de donne’es）と、を備える。
【００２３】
以降、確率分布モジュールは、英語の頭文字語ＳＤ（Stochastic Distribution）を使用して称され、確率変数モジュールは、英語の頭文字語ＳＶ（Stochastic Variable）を使用して称され、データバスは、頭文字語ＢＤ（Bus de Donne’es）で示される。
【００２４】
以降、各構成要素を、図２〜５を参照して、互いに独立して記述する。そして、モジュラ確率マシンの一例を、図６を参照して提示する。最後に、確率計算方法の実施形態の一例を、図７を参照して記述する。
【００２５】
図２〜７を記述する前に、使用される表記および一般情報を提示する。
【００２６】
１−表記
下記の表記が、ここでの記述で使用される。
・Ｘは、離散かつ有限ランダム変数を示す。
・ｎＸは、ランダム変数Ｘの基数（cardinal）、すなわち、ランダム変数Ｘが取り得る値（valeurs possibles）の数を示す。
・ｘ1、ｘ2、…、ｘnは、ランダム変数Ｘが取り得る値を示す。
・Ｐ（Ｘ）は、ランダム変数Ｘの確率分布、すなわち、ランダム変数Ｘの取り得る値の関数として確率値を示す。
・Ｐ（［Ｘ＝ｘi］）は、ランダム変数Ｘが値ｘiに等しい確率を示す。
・Ｐ（Ｘ1、Ｘ2、…、Ｘn）は、ランダム変数Ｘ1、Ｘ2、…、Ｘnの同時確率分布（distribution de probabilite’s conjointe）を示す。
・Ｐ（Ｘi／Ｘj）は、ランダム変数Ｘjが既知の場合の、ランダム変数Ｘiの条件付き確率を示す。
【００２７】
２−一般情報
決定性コンピューティング（informatique de’terministe）において、特に、従来のマイクロプロセッサにおいて、情報は、バイト形式で従来のように表されるか、または、より一般的には、固定数のビットにより構成される数を示すワードの形式で表される。
【００２８】
以降、決定性コンピューティングとは異なり、情報は、確率ビットストリーム（flux de bits stochastiques）の形式で表される。
【００２９】
「確率ビットストリーム」はビットのセットであり、定義により、各ビットは、値１または値０を取る。値１を取るビットは、「１であるビット」の表現で示される。
【００３０】
確率ビットストリームは、確率ビット生成器（Stochastic Bit Generator；ＳＢＧ）により生成される。
【００３１】
ＳＢＧは、値を記憶するように意図されるメモリを備える物理装置であり、ＳＢＧは、１である確率が、記憶される値に比例するビットストリームを生成できる。言い換えれば、確率ビットストリームの「１であるビットの割合（ratio）」は、１であるビットの数を、ストリームにおけるビット総数で割った商を示し、１であるビットの割合は、記憶される値に比例する。
【００３２】
ＳＢＧは、例えば、磁気トンネル接合（jonctions a` tunnel magne’tique）の確率特性を使用して製造される。
【００３３】
トンネル効果磁気接合（jonction magne’tique a` effet tunnel）は、その最も簡単な形式において、通常は、１〜２ナノメートルを超えない、２つの伝導性電極間の薄い絶縁障壁である。電流の通過は、この障壁を通してのトンネル効果により行われ、トンネル効果とは、量子オブジェクトのエネルギが、上記障壁を越えるために必要な最小エネルギよりも低くても電位障壁を越えるという、量子オブジェクトが有する特性のことである。周囲温度において、トンネル効果超常磁性接合（jonction super-paramagne’tique a` effet tunnel）は、平行状態（e’tat paralle`le）と反平行状態（e’tat antiparalle`le）との間で確率的に振動する（oscille）。これは、確率ビットを作成するために使用できるナノ構成要素の抵抗に対するランダムな変化という結果になる。
【００３４】
ランダム変数Ｘの確率分布Ｐ（Ｘ）は、サンプルベクトルと呼ばれる確率ビットベクトルの時系列（se’rie temporelle de vecteurs de bits stochastiques）により表される。
【００３５】
ベクトルは、それぞれがランクに対応する座標のセットを備える。各座標は、ビットである。
【００３６】
以降、ｉを整数として、ランクｉの座標は、一様にｉ番目の座標により示され、ｉ番目のビットまたはランクｉのビットを一様に示す。
【００３７】
各サンプルベクトルは、ランダム変数に対して取り得る値の数と同じ数の座標を備える。形式的に述べれば、値ｘ1、ｘ2、…、ｘnを取る基数ｎＸのランダム変数Ｘに対して、サンプルベクトルは、ｎ個の座標を備え、ランクｉの座標は、ランダム値Ｘが、値ｘiを取ることができる状況に対応する。特に、ランダム変数Ｘが値ｘiを取るとき、ランクｉの座標は、１であるビットである。
【００３８】
更に、同じランクの座標に対する時系列における１であるビットの、ビットの総数に対する比は、上記ランクに対応する値の確率に比例する。
【００３９】
下記は、確率Ｐ（［Ｘ＝ｘ1］）＝０．１、Ｐ（［Ｘ＝ｘ2］）＝０．５、およびＰ（［Ｘ＝ｘ3］）＝０．４の分布を表す、２０個のサンプルベクトルの例を例示する表１である。
＜表１＞
【表１】
2019537173.tif 000003
【００４０】
表１に示されるように、１であるビットの割合は、ランク１の座標に対しては、４／２０＝０．２、ランク２の座標に対しては、２０／２０＝１、そして、ランク３の座標に対しては、１６／２０＝０．８である。
【００４１】
１であるビットの割合の合計は、０．２＋１＋０．８＝２に等しく、ファクタ２による正規化により、第１行に対して、０．１、第２行に対して０．５、そして、第３行に対して０．４の値を得ることができる。
【００４２】
代替として、確率分布Ｐ（Ｘ）を表す、時系列の確率ビットのベクトルは、サンプル値である。
【００４３】
定義により、サンプル値は、１であるビットを１つのみ備える。
【００４４】
下記は、表１と同じように、同じ確率の分布を表す２０個のサンプル値の例を例示し、すなわち、確率分布Ｐ（［Ｘ＝０］）＝０．１、Ｐ（［Ｘ＝１］）＝０．５、そしてＰ（［Ｘ＝２］）＝０．４である。
＜表２＞
【表２】
2019537173.tif 000004
【００４５】
表２に示されるように、１であるビットの生起比は、ランク１の座標に対しては、２／２０＝０．１、ランク２の座標に対しては、１０／２０＝０．５、そしてランク３の座標に対しては、８／２０＝０．４である。実際には、１であるビットの割合は、それぞれ、表される確率分布の値に等しい。
【００４６】
決定性値は、すなわち、ランダム変数が既知である特定の場合、すべてが同じサンプル値の時系列で表され、各サンプル値に対して、ランダム変数の値に対応する座標は、１であるビットであり、他の座標は、０であるビットである。
【００４７】
例えば、下記の表３に示されるように、値Ｘ＝ｘ3を取るランダム変数Ｘが、サンプル値の下記の時系列により示される。
＜表３＞
【表３】
2019537173.tif 000005
【００４８】
代替として、サンプル値は、従来の決定性演算におけるように、所与の情報を符号化したビットにより置き換えられる。
【００４９】
モジュラ確率マシンを製作することができる、図１に示される構成要素セットの構成要素について、ここで記述する。
【００５０】
３−ＳＤモジュール
３．１−ＳＤモジュールの構造
ＳＤモジュールは、複数のランダム変数に対応する。
【００５１】
「複数のランダム変数」とは、少なくとも２つのランダム変数を指す。
【００５２】
ＳＤモジュールは、例えば、２つのランダム変数に対応する。
【００５３】
ＳＤモジュールは、例えば、少なくとも２０個のランダム変数に対応する。
【００５４】
ＳＤモジュールは、複数のランダム変数の中から、指定されたランダム変数の値の入力を受け取ることができ、この入力として受け取った、指定されたランダム変数の値により条件付けられる少なくとも１つの指定されてないランダム変数の確率の分布の表現を、出力として返すことができる。
【００５５】
言い換えれば、ランダム変数Ｘ1、Ｘ2、…、Ｘnに対応するＳＤモジュールは、出力として、例えば、下記の確率分布の表現を返すことができる。
Ｐ（Ｘn｜ｘ1、ｘ2、…、ｘn-1）
ここで、ｘ1、ｘ2、…、ｘn-1は、指定されたランダム変数Ｘ1、Ｘ2、…、Ｘn-1が取るそれぞれの値に対応する。
【００５６】
実施形態において、例えば、ＳＤモジュールは、入力として、それぞれが指定されたランダム変数Ｘ1、Ｘ2、…、Ｘn-1の値ｘ1、ｘ2、…、ｘn-1を表すｎ−１個のサンプル値を受け取ることができ、出力として、確率Ｐ（Ｘn｜ｘ1、ｘ2、…、ｘn-1）の分布のサンプル値を返すことができる。
【００５７】
更に、ＳＤモジュールは、複数のＳＢＧを備える。
【００５８】
特に、ＳＤモジュールは、複数のランダム変数の異なる値の可能な組み合わせの数と同じ数のＳＢＧを備える。
【００５９】
例えば、それぞれが２つの値（ｘ、ｘ’）および（ｙ、ｙ’）を取る、２つのランダム変数Ｘ、Ｙに対応するＳＤモジュールは、４つの可能な組み合わせ、すなわち、（ｘ、ｙ）、（ｘ、ｙ’）、（ｘ’、ｙ）および（ｘ’、ｙ’）があるので、４つのＳＢＧを備える。
【００６０】
ＳＤモジュールの出力において返される確率分布の表現は、ＳＤモジュールに記憶される同時または条件付き確率値（valeurs de probabilite’s conjointes ou conditionnelles）から生成される。
【００６１】
特に、各ＳＢＧは、ＳＢＧのメモリに、複数のランダム変数の同時確率値を記憶して、記憶される値を表す確率ビットのストリームを生成できる。
【００６２】
ＳＤモジュールは、また、指定されたランダム変数値に対応するＳＢＧの出力をアクティブ化できる制御システムを備える。
【００６３】
例示として、情報Ｙi＝ｙiを表すサンプル値を入力として受け取ると、制御システムは、特に、ランダム変数Ｙiは、値ｙiに設定されることが既知なので、確率値に対応するＳＢＧの出力を選択することができる。この場合、ランダム変数Ｙiが、異なる値ｙj≠iに設定されることを既知とする確率値に対応するＳＢＧの出力は非アクティブ化され、これらの対応するＳＢＧは、確率ビットストリームを生成しない。
【００６４】
有利には、ＳＢＧが非アクティブ化されると、１であるビットのみを生成することが可能である。これは、「透明な（transparents）」確率ビットストリームを生成するという利点を有し、このような確率ビットストリームがＡＮＤ論理ゲートの入力において見い出されるとき特に利点となる。
【００６５】
３．２−ＳＤモジュールの動作
ＳＤモジュールの動作を、図２に示される例としてのＳＤモジュールを参照して記述する。
【００６６】
図２のＳＤモジュールは、２つのランダム変数ＸおよびＹに対応し、確率分布Ｐ（Ｘ，Ｙ）を記憶できる。
【００６７】
この場合、ＳＤモジュールは、ｎＸ×ｎＹ個のＳＢＧを備える。ｎＸは３に等しく、ｎＹは２に等しいので、ＳＤモジュールは、６個のＳＢＧを備える。
【００６８】
ＳＢＧは、ＳＢＧi、jと示され、ｉは、１から３に変化する整数であり、ｊは、１から２に変化する整数である。ＳＢＧi、jは、確率値Ｐ（［Ｘ＝ｘi、Ｙ＝ｙj］）を表す確率ビットストリームを生成できる。
【００６９】
この例において、ランダム変数Ｘが値ｘ1を取り、ランダム変数Ｙが値ｙ1を取る確率は０．２に等しく、ＳＢＧ1,2が、ＳＢＧ1,2の制御システムによりいったんアクティブ化されると、ＳＢＧ1,2は、値０．２を表す確率ビットストリームを生成できる。
【００７０】
図２のＳＤモジュールは、また、条件付き確率分布Ｐ（［Ｘ｜Ｙ＝ｙ1］）のサンプル値の時系列の形式の表現を生成することを可能にする。
【００７１】
図２のＳＤモジュールは、例えば、同時確率分布Ｐ（［Ｘ、Ｙ＝ｙ1］）のサンプル値の時系列の形式の表現を生成することを可能にする。
【００７２】
条件付き確率分布Ｐ（［Ｘ｜Ｙ＝ｙ1］）のサンプル値の時系列の形式の表現を生成するために、ＳＤモジュールは、入力として、情報Ｙ＝ｙ1を表す下記のサンプル値を受け取る。
＜表４＞
【表４】
2019537173.tif 000006
【００７３】
上記のサンプル値を受け取ると、制御システムは、それぞれが確率値Ｐ（［Ｘ＝ｘ1、Ｙ＝ｙ1］）、Ｐ（［Ｘ＝ｘ2、Ｙ＝ｙ1］）、およびＰ（［Ｘ＝ｘ3、Ｙ＝ｙ1］）に対応する、ＳＢＧ1,1、ＳＢＧ2,1、およびＳＢＧ3,1の入力をアクティブ化する。
【００７４】
ＳＢＧ1,1、ＳＢＧ2,1およびＳＢＧ3,1は、この場合、確率ビットベクトルの時系列を生成でき、そのランク１の座標は、ＳＢＧ1,1により生成される確率ビットストリームにより形成され、ランク２の座標は、ＳＢＧ2,1により生成される確率ビットストリームにより形成され、ランク３の座標は、ＳＢＧ3,1により生成される確率ビットストリームにより形成される。
【００７５】
そして、ＳＢＧ1,1、ＳＢＧ2,1、およびＳＢＧ3,1の組み合わせにより生成されるサンプルベクトルの時系列は、所望の確率分布Ｐ（［Ｘ、Ｙ＝ｙ1］）を表す。
【００７６】
４−ＳＶモジュール
４．１−ＳＶモジュールの構造
ＳＶモジュールは、単一のランダム変数に対応する。
【００７７】
特に、各ＳＶモジュールは、１つのＳＤモジュールに対応する複数のランダム変数の中から選択された１つのランダム変数に対応する。
【００７８】
各ＳＶモジュールは、確率ビットを送ることができるデータバスにより、少なくとも１つのＳＤモジュールに接続できる。このＳＤデータバスについては、後で、より詳細に記述される。
【００７９】
ある実施形態において、ＳＶモジュールは、複数のランダム変数に対応するＳＤモジュールに接続されるのみであり、上記複数のランダム変数は、ＳＶモジュールに対応するランダム変数を含む。
【００８０】
ＳＶモジュールは、確率乗算器（Stochastic Product Operator；ＳＰＯ）と、確率線形正規化器（Stochastic Proportional Normalisator；ＳＰＮ）と、を備える。
【００８１】
ある実施形態において、図３に示されるように、ＳＶモジュールは、また、確率比例サンプラ（Stochastic Proportional Sampler；ＳＰＳ）も備える。
【００８２】
図３に示されるように、値ｘ1、ｘ2、…、ｘnを取るランダム変数に対応するＳＶモジュールは、入力として、ランダム変数Ｘの複数の異なる確率分布Ｐ1（Ｘ）、Ｐ2（Ｘ）、…、Ｐk（Ｘ）を表すサンプルベクトルを受け取り、出力として、上記ランダム変数Ｘの確率分布Ｐ（Ｘ）のサンプルベクトルの比例して正規化された時系列の形式の表現を生成できる。
【００８３】
ＳＶモジュールが、アクティブ化されたＳＰＳを備えるとき、ＳＶモジュールは、出力として、上記ランダム変数Ｘの確率分布Ｐ（Ｘ）のサンプル値の比例して正規化された時系列の形式の表現を生成できる。このような場合において、ＳＶモジュールは、上記ＳＶモジュールに対応するランダム変数のサンプリングされた値を表すサンプルの時系列を返すことができると明言される。
【００８４】
特に、ＳＶモジュールの出力として生成される確率分布の表現は、入力として受け取った確率分布の積確率分布の比例して正規化された表現である。
【００８５】
更に、ＳＶモジュールは、決定性レジーム（re’gime de’terministe）と呼ばれるレジームに従って動作することに適しており、そのレジームにおいて、ＳＶモジュールは、ランダム変数に対して設定された値を表す確率ビットストリームを送出する。
【００８６】
例えば、基数ｎＸ＝３のランダム変数Ｘが値Ｘ＝ｘ2に設定される場合、ランダム変数は決定性であると言われ、ＳＶモジュールは、決定性レジームにおいて動作するように構成される。このような場合において、ＳＶモジュールは、出力として下記のサンプル値を返す。
＜表５＞
【表５】
2019537173.tif 000007
【００８７】
ＳＶモジュールを形成する構成要素をここで記述する。
【００８８】
理解を容易にするために、以降では、ＳＶモジュールは、一方では、それぞれがＰ1（Ｘ）およびＰ2（Ｘ）と示されるランダム変数Ｘの第１および第２確率分布を受け取ることができ、他方では、確率分布Ｐ1（Ｘ）およびＰ2（Ｘ）の、Ｐ（Ｘ）と示される積確率分布（distribution de probabilite’s produit）を生成できると考える。
【００８９】
当業者であれば、下記のことが同様に、ＳＶモジュールが２つより多い確率分布を受け取る場合にも当てはまることを理解するであろう。例えば、ＳＶモジュールが３つの確率分布を受け取る場合、ＳＶモジュールは、例えば、下記に記述するように、２つのＳＶモジュールのカスケード配置である。
【００９０】
ＳＶモジュールを形成する構成要素を、ここで互いに独立して記載する。
【００９１】
４．１．１−ＳＰＯの説明
例としてのＳＰＯが図４に示される。
【００９２】
ＳＰＯは、出力として、同じランダム値Ｘの積確率分布の表現を返すために、入力として、第１確率分布Ｐ1（Ｘ）および第２確率分布Ｐ2（Ｘ）のそれぞれのサンプルベクトルの形式の表現を受け取ることができる。
【００９３】
ＳＰＯは、それぞれがランダム変数Ｘの１つの取り得る値に対応するＡＮＤ論理ゲートを備える。
【００９４】
ＡＮＤ論理ゲートは、「ＡＮＤ」関数を実施する構成要素である。「ＡＮＤ」関数は、入力として、ＴＲＵＥ値またはＦＡＬＳＥ値を取る２つの被演算子を使用し、両方の被演算子がＴＲＵＥ値を有する場合のみ、ＴＲＵＥ値を返すブール代数における論理演算子である。論理ゲートは、例えば、入力として、ゼロ電圧または５Ｖに等しい電圧のいずれかが供給される２つの端子を備え、ゼロ電圧または５Ｖに等しい電圧を有する出力を備える電子構成要素である。５Ｖの電圧値は、ＴＲＵＥ値に、すなわち、１であるビットに対応し、ゼロ電圧は、ＦＡＬＳＥ値に、すなわち、０であるビットに対応する。この場合、入力電圧が共に５Ｖに等しい場合のみ、出力電圧は、５Ｖに等しい。
【００９５】
図４に示されるように、ＳＰＯは、ＡＮＤ1、ＡＮＤ2、およびＡＮＤ3と示される３つのＡＮＤゲートを備える。ｉを１から３に変化する整数とすると、ゲートＡＮＤiは、ランダム変数Ｘの値ｘ1に対応する。
【００９６】
１から３に変化するインデックスｉに対して、ゲートＡＮＤiは、値Ｐ1（Ｘ＝ｘi）を表す第１確率ビットストリームと、値Ｐ2（Ｘ＝ｘi）を表す第２確率ビットストリームと、を受け取る。
【００９７】
ＡＮＤiゲートは、出力として、値Ｐ1（Ｘ＝ｘi）Ｐ2（Ｘ＝ｘi）を表す確率ビットストリームを返すために、受け取ったストリームのそれぞれのビットの積を１つずつ得る。
【００９８】
実際には、図４に示されるように、ＳＰＯは、下記の形式で表現されるサンプルベクトルの時系列を生成できる。
＜表６＞
【表６】
2019537173.tif 000008
【００９９】
異なる確率の積Ｐ1（Ｘ＝ｘi）Ｐ2（Ｘ＝ｘi）から、ＳＰＯの出力におけるサンプルベクトルは、必然的に、確率分布Ｐ1（Ｘ）およびＰ2（Ｘ）をそれぞれ表すサンプルベクトルよりも少ない数の１であるビットを備えることが明らかになる。
【０１００】
この現象は、時間的希釈（dilution temporelle）と呼ばれ、確率ビットストリームに対する１であるビットの割合の評価に必要な時間が増大するので、計算を遅くさせ得る。言い換えれば、１であるビットが生起する可能性の評価は、ますます長くなる確率ビットストリームを必要とする。
【０１０１】
４．１．２−ＳＰＮの説明
ＳＰＮは、入力として、確率分布Ｐ（Ｘ）のビット形式の表現を受け取ることができ、出力として、受け取った確率分布の比例して正規化された表現を返すことができ、比例して正規化された表現は、入力として受け取った表現よりも、より多くの１であるビットを備える。
【０１０２】
特に、比例して正規化された表現のサンプルベクトルのランクｉの座標は、確率Ｐ（［Ｘ＝ｘi］）の値に比例する、１である確率（probabilite’）を有する。
【０１０３】
１であるビットの加算は、比例して行われ、すなわち、サンプルベクトルの異なるランクに対する１であるビットの割合の間の関係は変わらない。
【０１０４】
ＳＰＮは、時間的希釈の問題を相殺するために特に適合される。
【０１０５】
ＳＶモジュールの場合、ＳＰＯの出力は、ＳＰＮの入力に接続され、ＳＰＮの入力として受け取られるサンプルベクトルは、ＳＰＯの出力において返されるサンプルベクトルである。
【０１０６】
例としてのＳＰＮが図５に示される。
【０１０７】
図５の例によれば、例示されるＳＰＮは、確率分布Ｐ（Ｘ）の最大確率に対応する座標がすべて１であるビットである確率分布Ｐ（Ｘ）を表すサンプルベクトルを生成できる。
【０１０８】
図５は、３つの値ｘ1、ｘ2、ｘ3を取るランダム変数と、下記のように定義されるランダム変数Ｘの確率分布Ｐ（Ｘ）と、の特定の場合を例示する。
Ｐ（［Ｘ＝ｘ1］）＝０．１
Ｐ（［Ｘ＝ｘ2］）＝０．１
Ｐ（［Ｘ＝ｘ3］）＝０．８
【０１０９】
ＳＰＮは、それぞれが値Ｘ＝ｘ1、Ｘ＝ｘ2およびＸ＝ｘ3に対応する、ＳＢＧ1、ＳＢＧ2およびＳＢＧ3と示される３つのＳＢＧを備える。
【０１１０】
ランダム変数Ｘの値に対応する各ＳＢＧは、座標に対応し、受け取ったサンプル値において、このランダム変数Ｘの同じ値に対応する、確率ビットストリームを受け取る。
【０１１１】
１から３に変化するｉに対して、ＳＢＧiは、確率分布Ｐ（Ｘ）表すサンプルベクトルのランクｉの座標、すなわち、Ｘ＝ｘ1の場合に対応する座標を受け取る。
【０１１２】
更に、各ＳＢＧ1、ＳＢＧ2およびＳＢＧ3は、それぞれＣ1、Ｃ2およびＣ3と示されるカウンタを備える。
【０１１３】
カウンタＣ1、Ｃ2およびＣ3は、すべて、Ｎmaxと示される同じ容量を有する。
【０１１４】
各カウンタＣ1、Ｃ2およびＣ3は、１であるビットを受け取ると増加させることができる。１から３に変化する整数ｉに対して、カウンタＣiの増加の数は、Ｎiと示され、カウンタＣiの内容（contenu）と呼ばれる。
【０１１５】
カウンタＣiは、Ｎi＝Ｎmaxのときフルである（rempli）という。
【０１１６】
図５の例において、ＳＰＮが、確率分布Ｐ（Ｘ）を表すサンプルベクトルを受け取り、Ｃ1、Ｃ2およびＣ3は、カウンタがフルになるまで増加される。
【０１１７】
いったんカウンタがフルになると、ＳＰＮは、他のカウンタの増加を停止できる。
【０１１８】
この例において、確率分布Ｐ（Ｘ）の最大確率は、Ｘ＝ｘ3の場合に対応する。実際には、Ｘ＝ｘ3の場合に対応するＳＢＧ3のカウンタＣ3は、最初にフルになるカウンタである。
【０１１９】
ＳＰＮが、他のカウンタの増加を停止すると、各ＳＢＧiは、１に等しいビットを有する確率が、カウンタの容量Ｎmaxで除算されたカウンタＣiの内容Ｎiと等しい確率ビットストリームを生成する。
【０１２０】
この例において、カウンタの容量Ｎmaxは、２００に等しいと考える。
【０１２１】
ＳＰＮは、他のカウンタの増加を、例えば、カウンタの内容が下記のようなときに停止する。
Ｎ1＝２５
Ｎ2＝２５
Ｎ3＝２００＝Ｎmax
【０１２２】
第１、第２、および第３座標の１であるビットの割合は、それぞれ下記に等しい。
２５／２００＝０．１２５
２５／２００＝０．１２５
２００／２００＝１
【０１２３】
０．１２５＋０．１２５＋１＝１．２５の値で正規化することにより、下記が得られる。
Ｐ（［Ｘ＝ｘ1］）＝０．１２５／１．２５＝０．１
Ｐ（［Ｘ＝ｘ2］）＝０．１２５／１．２５＝０．１
Ｐ（［Ｘ＝ｘ3］）＝１／１．２５＝０．８
【０１２４】
この例に示されるように、確率分布Ｐ（Ｘ）を表すＳＰＮの出力におけるサンプルベクトルは、同じ確率分布Ｐ（Ｘ）を表すＳＰＮの入力におけるサンプルベクトルよりも、より多くの１であるビットを備える。したがって、１であるビットの加算は、時間的分布を削減する利点を有する。
【０１２５】
他の変形例によれば、ＳＰＮは、また、前述した例とは異なり、その容量に到達し、生成されるビットが１であるときに減少させることができるカウンタも備える。
【０１２６】
４．１．３−ＳＰＳの説明
ＳＰＳは、出力として、同じ確率分布を表すサンプル値を返すために、確率の分布の比例して正規化された表現を形成するサンプルベクトルを受け取ることができる。
【０１２７】
ＳＶモジュールの場合、ＳＰＳは、入力として、ＳＰＮの出力に接続されることによって、確率分布Ｐ（Ｘ）の比例して正規化された表現を形成するサンプルベクトルを受け取り、出力として、同じ確率分布Ｐ（Ｘ）を表すサンプル値を返す。
【０１２８】
更に、ＳＰＳは、アクティブ化および非アクティブ化されることができる。
【０１２９】
ＳＰＳが非アクティブ化されると、ＳＰＳは、受動構成要素（composant passif）のように動作する。このような場合、ＳＶモジュールの出力は、ＳＰＮの出力に対応し、ＳＶモジュールは、ＳＶモジュールの入力において受け取った確率分布の表現の積確率分布を表す、比例して正規化されたサンプルベクトルを返す。
【０１３０】
ＳＰＳがアクティブ化されると、ＳＰＳは、サンプル値を返すために、入力において受け取ったサンプルベクトルの「変換」を行う。このような場合、ＳＰＳは、ＳＶモジュールに対応するランダム変数のサンプリングされた値を表すサンプル値を送出する。
【０１３１】
実際には、ＳＰＳがアクティブ化されると、ＳＶモジュールは、出力として、単一の１であるビットを備え、ランクｉの係数（coefficients）が１であるビットである確率が、ＳＶモジュールに対応するランダム変数が値ｘiを取る確率に比例するサンプル値を返す（le module SV retourne en sortie des e’chantillons-valeurs comprenant un unique bit a` 1 et pour lesquels la probabilite’ que les coefficients de rang i soient des bits a` 1 est proportionnelle a` la probabilite’ que la variable ale’atoire correspondant au module SV prenne la valeur xi）。
【０１３２】
４．２−ＳＶモジュールの動作
ＳＶモジュールは、ＳＰＯ、ＳＰＮ、およびＳＰＳを配置したものなので、ＳＶモジュールの動作は、前述したＳＰＯ、ＳＰＮ、およびＳＰＳのそれぞれの動作に起因する。
【０１３３】
以降、ＳＶモジュールは、決定性レジームでは動作しないと考える。
【０１３４】
ＳＶモジュールは、入力として、同じランダム変数の複数の異なる確率分布を表すサンプルベクトルのセットを受け取る。
【０１３５】
ＳＶモジュールの入力は、ＳＰＯの入力と結合され（confondue）、ＳＰＯは、出力として、入力として受け取った異なる確率分布の積確率分布を表すサンプルベクトルを返す。
【０１３６】
ＳＰＯの出力は、ＳＰＮの入力に接続され、ＳＰＮは、入力として、ＳＰＯにより生成され、ＳＶモジュールの入力として受け取った異なる確率分布の積確率分布を表すサンプルベクトルを受け取る。そして、ＳＰＯは、サンプルベクトルの形式で受け取った表現の正規化を行い、この正規化は、１であるビットの割合の間の関係を、ＳＶモジュールの入力において提供される表現の１であるビットの割合の間の関係と同一に保ちながら、１であるビットの加算から構成される。
【０１３７】
ＳＰＮの動作は、ＳＰＯにより引き起こされる時間的希釈を削減する結果となる。
【０１３８】
最後に、ＳＰＮの出力は、ＳＰＳの入力に接続され、ＳＰＳは、入力として、ＳＶモジュールの入力で受け取った異なる確率分布の積確率分布を表す、比例して正規化されたサンプルベクトルを受け取る。
【０１３９】
そして、２つの場合が起こる。
【０１４０】
第１の場合において、ＳＰＳは、非アクティブ化され、ＳＰＳは、受動構成要素のように動作する。この第１の場合において、ＳＶモジュールの出力は、ＳＰＮの出力に対応する。言い換えれば、ＳＶモジュールは、出力として、ＳＶモジュールの入力で受け取った異なる確率分布の積確率分布を表す、比例して正規化されたサンプルベクトルを返す。
【０１４１】
第２の場合において、ＳＰＳは、アクティブ化され、そしてＳＰＳは、入力において受け取ったサンプルベクトルを、サンプル値に変換する。このような場合、ＳＶモジュールの出力は、ＳＰＳの出力に対応し、ＳＶモジュールは、出力として、ＳＶモジュールに対応するランダム変数のサンプリングされた値を表すサンプル値を返す。
【０１４２】
ここで、ＳＶモジュールは、決定性レジームで動作すると考える。
【０１４３】
このような場合、ＳＶモジュールに対応するランダム変数に対する値が設定され、ＳＶモジュールは、出力として、ランダム変数の値を表すサンプル値を返す。
【０１４４】
５−データバス
データバスＢＤは、ＳＤモジュールとＳＶモジュールとを互いに接続できる。
【０１４５】
実施形態において、各データバスＢＤは、ＳＶモジュールに対応するランダム変数の基数と同じ数のワイヤを備える。
【０１４６】
例えば、ランダム変数Ｘに対応するＳＶモジュールは、ｎＸ個のワイヤを備えるデータバスにより、ランダム変数Ｘ、Ｙに対応するＳＤモジュールに接続される。
【０１４７】
他の実施形態において、データバスＢＤは、すべて同一であり、実際には、それぞれは、同じ数のワイヤを備える。
【０１４８】
データバスは、接続したり、または切断することができる。言い換えれば、各データバスは、アクティブ化されることができ、または、確率ビットが送られないように禁じることができる。
【０１４９】
データバスの接続または切断は、例えば、ＳＤモジュールまたはＳＶモジュールに統合された機能をアクティブ化することに起因する。
【０１５０】
データバスは、バイナリ情報を伝えることができる任意のタイプの物理媒体により形成される。例示として、データバスは、ワイヤ、回路上の焼き付け、または、電磁波もしくは光信号の交換に適した装置である。
【０１５１】
６−モジュラ確率マシン
６．１−モジュラ確率マシンの構造
モジュラ確率マシンは、少なくとも２つのランダム変数から、確率ビットストリームにおける確率計算を行うことができる。
【０１５２】
モジュラ確率マシンは、ＳＢＧと、少なくとも１つのＳＤモジュールと、少なくとも２つのＳＶモジュールと、ＳＤモジュールとＳＶモジュールとを互いに接続できるデータバスＢＤと、を備える。
【０１５３】
確率マシンは、ＳＤモジュール、ＳＶモジュール、およびデータバスＢＤのアセンブリであるので、モジュラ（modulaire）とみなされる。
【０１５４】
モジュラ確率マシンのアセンブリは、行われる確率計算に依存する。言い換えれば、所与のアセンブリは、確率計算のセットに対応し、アセンブリの特定の構成は、確率計算のセットの中から、特定の確率計算を行うことができる。
【０１５５】
モジュラ確率マシン１０の例は、図６に示される。
【０１５６】
この例において、マシン１０は、３つのＳＶモジュールと２つのＳＤモジュールとを備える。
【０１５７】
第１ＳＶモジュールはＳＶ1と示され、第２ＳＶモジュールはＳＶ2と示され、第３ＳＶモジュールはＳＶ3と示される。
【０１５８】
第１モジュールＳＶ1は、ランダム変数Ｏに対応し、第２モジュールＳＶ2は、ランダム変数Ｄに対応し、第３モジュールＳＶ3は、ランダム変数Ｚに対応する。
【０１５９】
第１ＳＤモジュールはＳＤ1と示され、第２ＳＤモジュールはＳＤ2と示される。
【０１６０】
第１モジュールＳＤ1は、ランダム変数Ｏ、Ｄに対応し、第２モジュールＳＤ2は、ランダム変数Ｏ、Ｄ、Ｚに対応する。
【０１６１】
図６に示されるように、マシン１０は、第１データバスＢＤ1、第２データバスＢＤ2、第３データバスＢＤ3、第４データバスＢＤ4、および第５データバスＢＤ5を備える。
【０１６２】
第１データバスＢＤ1は、第１モジュールＳＶ1を第１モジュールＳＤ1に接続する。
【０１６３】
第２データバスＢＤ2は、第１モジュールＳＶ1を第２モジュールＳＤ2に接続する。
【０１６４】
第３データバスＢＤ3は、第２モジュールＳＶ2を第１モジュールＳＤ1に接続する。
【０１６５】
第４データバスＢＤ4は、第２モジュールＳＶ2を第２モジュールＳＤ2に接続する。
【０１６６】
第５データバスＢＤ5は、第３モジュールＳＶ3を第２モジュールＳＤ2に接続する。
【０１６７】
ここで、マシン１０の動作を記述する。
【０１６８】
６．２−モジュラ確率マシンの動作
ここで、モジュラ確率マシンを使用する確率計算方法の実施例を、図７を参照して記述する。
【０１６９】
図７は、図６に対応し、図６のマシン１０に基づく計算の例を例示するために、データバスＢＤ1、ＢＤ2、ＢＤ3、ＢＤ4、およびＢＤ5は、異なって示される。
【０１７０】
以降、データバスに関する下記の取り決めが使用される。
−矢印の方向は、確率ビットストリームが送られる方向を示す。
−点線で示される矢印は、矢印の起点であるＳＶモジュールに対応するランダム変数によるサンプリングを表すサンプル値が送られることを示す。
−太線で示される矢印は、ランダム変数に対して設定される値を表す、すべて同一なサンプル値が送られることを示す。そして、
−細線で示される矢印は、確率分布を表すサンプルベクトルが送られることを示す。
【０１７１】
図７の例において、ランダム変数Ｏ、Ｄ、Ｚは、自動車に対する自動運転支援システムを記述する。
【０１７２】
車両の前の空間は、各セルに対して確率を計算するためにセンサが設置される異なるセルから構成される、確率占有グリッド（grille d'occupation probabiliste）により示される。
【０１７３】
ランダム変数Ｏは、バイナリであり、セルが占有される場合、１に等しい。
【０１７４】
ランダム変数Ｄは、バイナリであり、センサによる検出があった場合、１に等しい。
【０１７５】
ランダム変数Ｚは、センサにより提供される値に対応する、数字のランダム値である。
【０１７６】
この例において、解決すべき問題は、下記の通りである。センサからの測定値を既知として、セルが占有される確率は、いくつであるか？
【０１７７】
数学の表現で公式化すると（Formule’ en termes mathe’matiques）、問題は、センサから返される値を既知とする占有をモデル化したランダム変数の確率分布、すなわち、確率分布Ｐ（Ｏ｜Ｚ＝ｚ）を決定することになる。
【０１７８】
確率分布Ｐ（Ｏ、Ｄ）、Ｐ（Ｏ、Ｄ、Ｚ）は、例えば、テストを使用して周知であると考える。
【０１７９】
構成により、確率分布Ｐ（Ｏ、Ｄ）は、下記に対応する確率を示す。
｛Ｏ＝１、Ｄ＝１｝または｛Ｏ＝０、Ｄ＝０｝である場合に関わる、良好な検出。
｛Ｏ＝０、Ｄ＝１｝である場合に関わる、誤った検出。
｛Ｏ＝１、Ｄ＝０｝である場合に関わる、検出に失敗した対象（cibles rate’es）。
【０１８０】
構成により、確率分布Ｐ（Ｏ、Ｄ、Ｚ）は、良好な検出、誤った検出、および検出に失敗した対象の場合におけるセンサの動作を記述する。
【０１８１】
周知の様式において、所望の確率分布は、下記のように表される。
Ｐ（Ｏ｜Ｚ＝ｚ）＝ΣDＰ（Ｏ、Ｄ）Ｐ（Ｏ、Ｄ、Ｚ＝ｚ）
【０１８２】
上記の確率計算は、確率計算方法に従って、モジュラ確率マシンを使用して行われる。
【０１８３】
方法は、モジュラ確率マシンを提供するステップを備える。
【０１８４】
この提供ステップは、サブステップを備える。
【０１８５】
第１サブステップにおいて、ＳＶモジュールの数が決定される。３つのランダム変数Ｏ、Ｄ、Ｚに関わる、行われる計算、これらの３つのランダム変数Ｏ、Ｄ、Ｚにそれぞれ対応する３つのＳＶモジュールが提供される。
【０１８６】
そして、第２サブステップにおいて、ＳＤモジュールの数が決定される。確率分布Ｐ（Ｏ、Ｄ）、Ｐ（Ｏ、Ｄ、Ｚ）が周知であるので、それぞれがランダム変数Ｏ、ＤおよびＯ、Ｄ、Ｚに対応する２つのＳＤモジュールが提供される。
【０１８７】
最後に、第３サブステップにおいて、データバスＢＤの数が決定される。第３サブステップは、ＳＶモジュールが、ＳＶモジュールに対応するランダム変数を含む複数のランダム変数に対応するＳＤモジュールに接続されるだけであるという規則に基づいて実施される。このケースにおいて、５つのデータバスＢＤが必要である。
【０１８８】
提供ステップの最後において、図６のモジュラ確率マシンが得られる。
【０１８９】
特定の実施形態において、提供ステップは、ＳＤモジュールの数、ＳＶモジュールの数、データバスの数、並びにＳＤモジュール、ＳＶモジュールおよびデータバスの配置を最適化するアルゴリズムを実施することを備える。
【０１９０】
特定の実施形態において、提供ステップは、ＳＤモジュール、ＳＶモジュールおよびデータバスＢＤの最適な配置を作り出すのに所望される確率分布の分解構造を分析する（parcourir la structure de la de’composition de la distribution de probabilite’s）ことから構成されるソフトウェアの方法により自動的に行われる。
【０１９１】
そして、第１のステップセットが実行される。
【０１９２】
第１のステップセットは、行われる確率計算に基づいて、少なくとも１つのＳＶモジュールのＳＰＳをアクティブ化または非アクティブ化するサブステップを備える。
【０１９３】
この例において、第２モジュールＳＶ2のＳＰＳがアクティブ化される。この場合、第１および第２モジュールＳＤ1およびＳＤ2はそれぞれランダム変数Ｄに対応するので、第２モジュールＳＶ2は、一方では第１モジュールＳＤ1に送られ、他方では第２モジュールＳＤ2に送られる、ランダム変数Ｄのサンプリングされた値を表すサンプル値を送出する。
【０１９４】
そして、第２モジュールＳＶ2を第１モジュールＳＤ1に、他方では第２モジュールＳＶ2を第２モジュールＳＤ2に、接続する第３および第４データバスＢＤ3およびＢＤ4は、点線の矢印により示される。
【０１９５】
更に、第１のステップセットは、決定性レジームに従ってＳＶモジュールを動作させることから構成されるサブステップを備える。
【０１９６】
この例において、第３モジュールＳＶ3は、決定性レジームに従って動作するよう構成される。この場合、第２モジュールＳＤ2のみがランダム変数Ｚに対応するので、第３モジュールＳＶ3は、すべてが同一で、第２モジュールＳＤ2に送られる、ランダム変数Ｚに対して設定される値ｚを表すサンプル値を送出する。
【０１９７】
そして、第３モジュールＳＶ3を第２モジュールＳＤ2に接続する第５データバスＢＤ5は、太線の矢印により示される。
【０１９８】
モジュラ確率マシンのこの構成から、第１モジュールＳＤ1は、第２モジュールＳＶ2から、指定されたランダム変数Ｄのサンプリングされた値を受け取る。
【０１９９】
そして、モジュールＳＤ1は、下記のように表される第１確率分布Ｐ1（Ｏ）のサンプル値の形式の表現を生成する。
Ｐ1（Ｏ）＝Ｐ（Ｏ｜Ｄ＝ｄ）
ここで、ランダム変数Ｄが取る値ｄは、第２モジュールＳＶ2の出力において返されるランダム変数Ｄのサンプリングされた値を表すサンプル値に対応する。
【０２００】
この動作は、ランダム変数Ｄのサンプリングされた値を表すサンプル値を受け取ることにより可能である。
【０２０１】
第１確率分布Ｐ1（Ｏ）を表すサンプルベクトルは、細線の矢印で表される第１データバスＢＤ1により、第１モジュールＳＶ1に送られる。
【０２０２】
平行して、第２モジュールＳＤ2は、第３モジュールＳＶ3から、ランダム変数Ｚに対する設定値ｚを表す同一のサンプル値を受け取り、また、第２モジュールＳＶ2から、指定されたランダム変数Ｄのサンプリングされた値を表すサンプル値を受け取る。
【０２０３】
そして、モジュールＳＤ2は、下記のように表される第２確率分布Ｐ2（Ｏ）のサンプルベクトルの形式の表現を生成する。
Ｐ2（Ｏ）＝Ｐ（Ｏ｜Ｄ＝ｄ、Ｚ＝ｚ）
ここで、ランダム変数Ｄが取る値ｄは、第３モジュールＳＶ3の出力において返されるランダム変数Ｄのサンプリングされた値を表すサンプル値に対応し、ランダム変数Ｚが取る値ｚは、第３モジュールＳＶ3の出力において返されるランダム変数Ｚに対する設定値ｚを表す同一のサンプル値に対応する。
【０２０４】
この動作は、ランダム変数Ｄのサンプリングされた値を表すサンプル値と、ランダム変数Ｚに対して設定された値ｚを表すサンプル値と、を受けとることにより可能である。
【０２０５】
第２確率分布Ｐ2（Ｏ）のサンプルベクトルは、細い線の矢印で示される第２データバスＢＤ2により、第１モジュールＳＶ1に送られる。
【０２０６】
そして、第１モジュールＳＶ1は、下記の演算を行う。
Ｐ（Ｏ｜Ｚ＝ｚ）＝ΣDＰ（Ｏ｜Ｄ＝ｄ）Ｐ（Ｏ｜Ｄ＝ｄ、Ｚ＝ｚ）＝ΣDＰ1（Ｏ）Ｐ2（Ｏ）
【０２０７】
言い換えれば、第１モジュールＳＶ1は、出力として、確率分布Ｐ1（Ｏ）とＰ2（Ｏ）との積を比例して正規化した表現を返し、実際には、提起される問題に対する結果を提供する。
【０２０８】
モジュラ確率マシン１０は、例えば、確率分布Ｐ（Ｚ｜Ｏ＝ｏ、Ｄ＝ｄ）またはＰ（Ｚ｜Ｄ＝ｄ）を計算するために、多様な形態で構成可能である。
【０２０９】
このように、モジュラ確率マシンは、広く多様な確率計算を行う可能性を提供する。
【０２１０】
更に、モジュラ確率マシンの使用は、特に簡単で、多くの演算を必要としない。
【０２１１】
計算速度は、従来のマイクロプロセッサに対して、相当に増加する。
【図１】
2019537173.tif 000009
【図２】
2019537173.tif 000010
【図３】
2019537173.tif 000011
【図４】
2019537173.tif 000012
【図５】
2019537173.tif 000013
【図６】
2019537173.tif 000014
【図７】
2019537173.tif 000015
【国際調査報告】
2019537173.tif 000016
2019537173.tif 000017
2019537173.tif 000018
2019537173.tif 000019