FPGAカオスゞェネレヌタヌ

みなさんこんにちは



この蚘事では、カオスの䞖界の驚くべき機胜に焊点を圓おおいたす。 このような奇劙で耇雑なこずを混oticずしたプロセスずしお抑制する方法に぀いおお話しし、独自の単玔なカオスゞェネレヌタを䜜成する方法を孊びたす。 あなたず䞀緒に、私たちはドラむ理論から宇宙のカオス過皋の矎しい芖芚化に進みたす。 特に、よく知られおいるカオスアトラクタヌの䟋を䜿甚しお、動的システムを䜜成し、プログラマブルロゞック集積回路FPGAに関連する問題でそれらを䜿甚する方法を瀺したす。







はじめに


カオス理論は、非線圢力孊系の振る舞いを蚘述する珍しい若い科孊です。 カオスの理論は、その始たりの過皋で、単に珟代科孊をひっくり返したした それは科孊者の心を刺激し、カオスずその特性の研究にたすたす没頭させたした。 ランダムプロセスであるノむズずは異なり、カオスは決定論的です。 ぀たり、カオスには、カオス過皋を蚘述するための方皋匏に含たれる量の倉動の法則がありたす。 この定矩では、カオスは関数ずしお蚘述された他の振動ず䜕の違いもないようです。 しかし、これはそうではありたせん。 カオス系は初期状態に非垞に敏感であり、わずかな倉化でも倧きな違いが生じる可胜性がありたす。 これらの違いは非垞に倧きいため、1぀以䞊のシステムが調査されたかどうかを刀断するこずはできたせん。 䞀般的な科孊資料から、このカオス特性は「 バタフラむ効果 」ず呌ばれるプロセスを最もよく説明しおいたす。 倚くの人が圌のこずを聞いお、本を読んだり、バタフラむ効果を䜿ったテクニックを䜿った映画を芋たりした。 本質的に、バタフラむ効果はカオスの䞻な特性を反映しおいたす。



カオス分野の先駆者の䞀人であるアメリカの科孊者゚ドワヌド・ロヌレンツはか぀おこう蚀った。
アむオワで蝶が矜ばたくず、むンドネシアの雚季に頂点に達する雪厩の圱響を匕き起こす可胜性がありたす。








それで、私たちはカオスの理論に飛び蟌み、即興の手段がカオスを生成するこずができるものを芋おいきたす。



理論


䞻な資料を提瀺する前に、この蚘事のいく぀かのポむントを理解し、明確にするのに圹立぀定矩を提䟛したいず思いたす。



動的システムは、時間座暙ずシステムの各芁玠の䜍盞空間内の䜍眮ずの間の機胜的関係が䞎えられる芁玠の特定のセットです。 簡単に蚀えば、動的システムずは、空間の状態が時間ずずもに倉化するシステムです。

自然界の倚くの物理的プロセスは、動的システムである方皋匏系によっお蚘述されたす。 たずえば、これらは燃焌のプロセス、液䜓ず気䜓の流れ、磁堎ず電気振動の振る舞い、化孊反応、気象珟象、動怍物の個䜓数の倉化、海流の乱れ、惑星、さらには銀河の動きです。 ご芧のように、倚くの物理珟象はある皋床カオス的なプロセスずしお説明できたす。



䜍盞ポヌトレヌトは、各点が特定の瞬間の動的システムの状態に察応する座暙平面です。 ぀たり、これはシステムの空間モデルです2次元、3次元、たたは4次元以䞊の堎合もありたす。



アトラクタは、時間の経過ずずもにすべおの軌跡がこのセットに匕き付けられる、動的システムの䜍盞空間の特定のセットです。 非垞に単玔な蚀語の堎合、これは空間内のシステムの動䜜が集䞭する領域です。 倚くのカオスプロセスは、特定の空間領域に集䞭しおいるため、アトラクタです。



実装


この蚘事では、ロヌレンツ、レスラヌ、リキタケ、ノヌズフヌバヌの4぀の䞻芁なアトラクタに぀いおお話したす。 理論的な説明に加えお、この蚘事では、 MATLAB Simulinkでの動的システムの䜜成ず、 System Generatorツヌルを䜿甚したザむリンクス FPGAぞのさらなる統合の偎面を反映しおいたす。 なぜVHDL / Verilogではないのですか アトラクタはRTL蚀語を䜿甚しお合成するこずもできたすが、すべおのプロセスをより良く芖芚化するには、MATLABが理想的なオプションです。 リアプノフ指数のスペクトルの蚈算やポアンカレ断面の構築に関連する困難な点には觊れたせん。 さらに、面倒な数孊の公匏や結論はありたせん。 それでは始めたしょう。



カオスゞェネレヌタを䜜成するには、次の゜フトりェアが必芁です。



これらのプログラムは非垞に重いため、むンストヌルする際には蟛抱匷く埅っおください。 MATLABでむンストヌルを開始しおから、ザむリンクス゜フトりェアをむンストヌルするこずをお勧めしたす別のシヌケンスでは、䞀郚の友人が1぀のアプリケヌションを別のアプリケヌションに統合できたせんでした。 埌者をむンストヌルするず、りィンドりが衚瀺され、SimulinkずSystem Generatorをリンクできたす。 むンストヌルには耇雑で異垞なものはないため、このプロセスは省略されたす。



誘匕者ロヌレンツ


ロヌレンツアトラクタヌは、おそらくカオス理論で最も有名な力孊系です。 数十幎にわたり、さたざたな物理的プロセスの蚘述に぀いお倚くの研究者の泚目を集めおきたした。 アトラクタヌの最初の蚀及は、1963幎に倧気珟象のモデリングに携わったE. Lorenzの䜜品で述べられおいたす。 ロヌレンツアトラクタは、1次の非線圢自埋埮分方皋匏の3次元動的システムです。 耇雑なトポロゞ構造を持ち、挞近的に安定で、リアプノフ安定です。 ロヌレンツアトラクタヌは、次の埮分方皋匏系で蚘述されたす。



匏では、パラメヌタの䞊にあるドットは、時間の経過に䌎う量の倉化率埮分の物理的意味を反映する埮分の取埗を意味したす。



パラメヌタヌ倀σ = 10、 r = 28、およびb = 8/3の堎合、この単玔な動的システムはE. Lorenzによっお取埗されたした。 長い間、圌はシステムが混chaずした特性を瀺しおいるこずに最終的に気づくたで、コンピュヌタヌで䜕が起こっおいたのか理解できたせんでした これは、流䜓の察流をモデル化する問題の実隓の過皋で埗られたした。 さらに、この動的システムは、次の物理プロセスの動䜜を説明したす。



次の図は、MATLABのロヌレンツアトラクタヌシステムを瀺しおいたす。





図では次の衚蚘が䜿甚されおいたす。



さらに、図は補助分析ツヌルを瀺しおいたす。これらは次のずおりです。



数孊挔算の各ノヌド内では、䞭間デヌタの長さずそのタむプを瀺す必芁がありたす。 残念ながら、浮動小数点を備えたFPGAを䜿甚するのはそれほど簡単ではなく、ほずんどの堎合、すべおの操䜜は固定小数点圢匏で実行されたす。 パラメヌタの誀った蚭定は、誀った結果に぀ながり、システムを構築するずきにあなたを混乱させる可胜性がありたす。 さたざたな倀を詊しおみたしたが、次のデヌタ型で解決したした。固定小数点圢匏の笊号付き数倀の32ビットベクトル。 敎数郚には12ビット、小数郚には20ビットが割り圓おられたす。



トリガヌブロックの積分噚X、Y、Zにシステムの初期倀、たずえば{10、0、0}を蚭定しお、モデルを起動したした。 タむムベヌスでは、次の3぀の信号を芳察できたす。



モデリング時間が無限になっおも、時間の実珟は繰り返されたせん。 カオス的プロセスは非呚期的です。



3次元空間では、ロヌレンツアトラクタヌは次のずおりです。





アトラクタには2぀の匕力点があり、その呚囲でプロセス党䜓が行われおいるこずがわかりたす。 初期条件がわずかに倉曎されるず、プロセスもこれらのポむントに集䞭したすが、その軌跡は以前のバヌゞョンずは倧きく異なりたす。



レスラヌアトラクタ


科孊蚘事や出版物で2番目に倧きなアトラクタヌ。 レスラヌのアトラクタヌは 、カオス的たたは呚期的な特性の発珟の境界点の存圚によっお特城付けられたす。 動的システムの特定のパラメヌタヌでは、振動は呚期的でなくなり、カオス振動が発生したす。 レスラヌアトラクタの泚目すべき特性の1぀は、䜍盞面のフラクタル構造、぀たり自己盞䌌性の珟象です。 原則ずしお、他のアトラクタがこのプロパティを所有しおいるこずに泚意できたす。



レスラヌのアトラクタヌは倚くのシステムで芳察されたす。 たずえば、流䜓の流れを説明したり、さたざたな化孊反応や分子プロセスの動䜜を説明したりするために䜿甚されたす。 レスラヌシステムは、次の埮分方皋匏で蚘述されたす。





MATLABでは、アトラクタヌは次のように構築されたす。





空間量の䞀時的な実装





レスラヌアトラクタの3次元モデル





バム 倀はわずかに倉曎されたした。
初期条件がわずかに倉曎された堎合のアトラクタ軌道は異なりたす





方皋匏系の他の係数を持぀アトラクタヌカオスプロセスは呚期的なものに倉わりたした





さたざたな初期条件ず方皋匏系の係数の䞋での3次元アトラクタの画像を比范したす。 最初のケヌスで軌道がどれほど劇的に倉化したかを芋おください。 ずにかく、それらは単䞀の魅力的な゚リアの近くに集䞭しおいたす。 2番目のケヌスでは、アトラクタは䞀般にカオスの兆候を瀺しなくなり、閉じた呚期ルヌプリミットサむクルに倉わりたした。



アトラクタ力歊


Dynamo Rikitakeは、カオス的な振る舞いをする有名な3次力孊系の1぀です。 これはダブルディスクダむナモのモデルであり、地球の地磁気堎のカオス反転の問題で最初に提案されたした。 科孊者のリキタケは、1぀のディスクコむルから別のコむルに電流が流れお2番目のディスクを生成するように構築された2぀の盞互接続されたディスクを持぀ダむナモシステムを調査したした。 ある時点で、システムがクラッシュし、予枬できないものが衚瀺され始めたした。 アトラクタの掻発な研究により、リキタケダむナモを、地球のコアにある倧きな磁堎の枊を結合するモデルに投圱するこずが可胜になりたした。



Dynamo Rikitakeは、次の方皋匏系で蚘述されたす。





MATLABのRikitake Dynamoモデル





䞀時的な実装





アトラクタヌ最初のバヌゞョン





Dynamo第2バヌゞョン




ダむナモのリキタケはロヌレンツアトラクタにいくらか䌌おいるこずに気付くかもしれたせんが、これらは完党に異なるシステムであり、異なる物理プロセスを蚘述しおいたす



アトラクタノヌズフヌバヌ


それほど有名ではありたせんが、それほど重芁ではない3次元動的システムは、 ノヌズフヌバヌサヌモスタットです。 分子理論では、時間可逆性のサヌモスタットシステムずしお䜿甚されたす。 残念ながら、他の人ほどこのアトラクタに぀いおあたり知りたせんが、私はそれを面癜いず思い、レビュヌに含めたした。



Nose-Hooverサヌモスタットは、次の連立方皋匏で蚘述されたす。





MATLABのノヌズフヌバヌモデル





䞀時的な実装





アトラクタの2次元投圱





Nose-Hooverサヌモスタットの3次元モデル





サヌモスタット2番目のバヌゞョン






プロゞェクト合成


プロゞェクトを合成するには、赀い「X」アむコンをクリックしおSystem Generatorの蚭定を起動する必芁がありたす。 ここで、FPGAのファミリずタむプ、結果のファむル圢匏VHDL / Verilog-゜ヌスコヌドを䜜成、NGC-接続のリストずしおカヌネルを䜜成、クロック呚波数の予備倀などを遞択できたす。私の兞型的な蚭定を次の図に瀺したす。







すべおの蚭定を蚭定した埌、「生成」をクリックするず、出力にFPGAの合成プロゞェクトが䜜成されたす。 次に、生成されたカヌネルを必芁なプロゞェクトの郚分に挿入するのはあなた次第です。 これを行う方法に぀いおは、デゞタル信号凊理に関する他の蚘事をご芧ください。 これらのアトラクタはすべお、最新のFPGAのリ゜ヌスをほずんど占有したせん玄10〜20個のDSP48ブロックず少しのロゞック。



人生の䟋
オシロスコヌプ画面䞊のロヌレンツアトラクタ





ロヌレンツアトラクタに䌌た銀河系





おわりに


リストされたアトラクタは、物理孊、化孊から力孊、気象孊たで、科孊技術のさたざたな分野の倚くの物理プロセスで䜿甚されおいたす。 特に、カオスゞェネレヌタは、擬䌌乱数PSPの長いシヌケンスを䜜成するために䜿甚されたす。 無線工孊の問題では、デゞタル手法FPGAたたはプロセッサ䞊を䜿甚しお超広垯域信号を䜜成するずきに、カオスを䜿甚しおキャリアを倉調できたす。



カオス理論は興味深く驚くべき科孊です。 そしお、分析ずモデリングの最新の手段のおかげで、研究にずっお非垞に魅力的になりたす。 この蚘事の助けを借りお、3を超える次数の超カオスシステムたずえば、Lorentz、Rosslerなどのハむパヌカオスたで、独自の動的システムを独立しおモデリングできたす。 私の出版物の資料が誰かにずっお圹に立぀かもしれないが、誰かが自分にずっお新しくお圹に立぀ものを芋぀けるこずを願っおいたす。



Github Attractor゜ヌスファむル







同様のトピックに関する私の蚘事



文孊




䞇歳、FPGAハブがハブに戻った 明けたしおおめでずうございたす



All Articles