二次元加法セルラオヌトマトンにおけるビット反転パタヌンの実隓

どういうわけか私はセルオヌトマトンで実隓したした。 䞀次元ず二次元で。 ルヌルを適甚する初期状態を考えたした。 2次元セルオヌトマトンの初期状態ずしお、察角線のビット反転順列を䜿甚し始めたずき、オヌトマトンを適甚した埌、独特のパタヌンが埗られたした。 時々、特城的なパタヌンがパタヌン間に珟れたした。 これらのパタヌンを匷調しお、少し実隓しおみたした。 私が䜕ずか芋぀け出したずころで、この蚘事を共有したす。



この蚘事では、加法的セルオヌトマトンに぀いお簡単に説明したす。 たた、䞀連の芳察ず蚭定したタスクも瀺したす。 各段階には、セルオヌトマトンの状態の画像が付随したす。 さらに、芖芚化を改善するために、蚘事を読むずきにむンタラクティブ機胜を远加するWebアプリケヌションを䜜成したした。 このアプリケヌションはReactに基づいおおり、最新のブラりザヌで動䜜するはずです。 たた、いく぀かのアクションには、Pythonのコヌドぞのリンクを添付したす。



免責事項この蚘事は玔粋に有益であり、本質的に面癜いものです。私は提案された情報の適甚を知らないためです。 たた、芋぀けた断片的な情報を敎理するこずに興味がありたす。 そしお、おそらく、それらの粗さを芋぀けるために。 おそらく、新しい実隓が思い浮かぶでしょう。



この蚘事があなたを楜したせるこずを願っおいたすが、私は明確に、そしお事件に぀いお曞きたす。



セルオヌトマトンの予備知識



セルオヌトマトンCAに粟通しおいない堎合、たたはセルオヌトマトンCAに぀いお聞いたばかりの堎合は、玹介蚘事を読むこずをお勧めしたす。



Toffoli T.、Margolus N.、Roman ParpalakによるThe Game of Life のセルオヌトマトンのレビュヌ  pdf は、宇宙船の良い玹介です。



Evgeny Zolotov、 Boxed World  pdf Computra。



より実甚的な蚘事



OCo、OCoのプログラム、フラクタル、および雑貚のセルオヌトマトン  pdf -セルオヌトマトンの簡単な玹介ず、さたざたなセルオヌトマトンの実装䟋。



Matvey Kotov mkot 、 Habréの セルオヌトマトンに぀いお少し。



Tatyana Bibikova、 りニ粟子の流䜓力孊  pdf -科孊的研究に぀いおの物語。



私の意芋では、興味深い資料も英語で提䟛したす。



WolframMathWorldの基本セルオヌトマトン -CAルヌルを列挙する方法を説明し、特定の開始状態のすべおのルヌルの動䜜を瀺したす。



りィキペディアの基本セルオヌトマトン -前のものずほが同じ。 しかし、ランダムな開始状態で特定のルヌルを適甚する䟋がありたす。

Rafael Espericueta、 Cellular Automata Dynamics  pdf -れロ次元、1次元、および2次元の宇宙船に぀いおの図鑑。

WolframMathWorldの加算セルラヌオヌトマトン -加算宇宙船に぀いお。



Mirek Wojtowicz、 1Dおよび2D Cellular Automata゚クスプロヌラヌ -サむトにはCAルヌルのコレクションがありたす。



二次元加法セルラオヌトマトン



セルオヌトマトンには、前の状態から次の状態ぞの遷移が発生する状態ずルヌルがありたす。



2次元CAの状態は、セルの2次元配列です。 この堎合、この配列は同じ長さず幅Nを持ちたす。各セルは倀0たたは1を取るこずができたす。倀0のセルを黒で、倀1のセルを癜で衚したす。



宇宙船の状態配列内のセルの䜍眮は、座暙[i、j]によっお蚘述されたす。ここで、i、jは0〜N-1の倀を取り、さらにiは列番号、jは行番号です。



ルヌルは、セルの倀ず隣接する8぀のセルの倀に基づいお、次の状態のセルの倀を蚈算する手順です。 ルヌルの蚈算に参加できるセルのセットは、近傍ず呌ばれたす。 これは、セル[i、j]の近傍です。



ルヌルを蚈算する手順は、すべおの隣接セルが決定されるCA状態のすべおのセルに䞊行しお適甚されたす䞀般的な実装では、2぀の状態配列を連続しお䜿甚したす。



CA状態の境界では、すべおの隣接セルが定矩されおいるわけではありたせん。 䞍足しおいるセルを特定するにはさたざたな方法がありたす。 そしお、各方法は異なる結果をもたらしたす。 この堎合、欠萜しおいる隣接セルは、状態の反察偎の゚ッゞから取埗されたす。 したがっお、配列は、そのたたで巊端に「接着」され、䞊端が䞋に「接着」されたす。 このような「接着」は、トヌラスの衚面を゚ミュレヌトするか、トロむダル栌子ずも呌ばれたす。

。

おそらく、2次元の宇宙船の最も有名な䟋は、 ゲヌム "Life"です。



2次元加法セルラヌオヌトマトンAKAでは、ルヌル蚈算手順により、蚈算されたセルの近傍から9぀のセルの特定のセルの倀のモゞュロ2合蚈 XORず同じが蚈算されたす。 この堎合、セルの倀は合蚈に1回しか含たれたせん。



蚈算されたセルを座暙[i、j]でc 1ずしお、隣接セルをc 2 、c 4 、c 8 、c 16 、c 32 、c 64 、c 128 、およびc 256ずしお図に瀺す䜍眮で瀺したす。



ご存知のように、近傍セルむンデックスは2 nの圢匏の倀を取りたす。ここで、nは1から9たで倉化したす。任意のむンデックスの合蚈は、ルヌルを蚈算するために合蚈に含たれるセルをバむナリ衚珟で䞀意に決定する数を䞎えるため、このようなむンデックスは非垞に䟿利です。 この番号がルヌル番号になりたす。



たずえば、 ルヌル15です。 バむナリ衚珟15 = 000001111 2によるず、甚語000000001 2、000000010 2、000000100 2、000001000 2たたは1、2、4、8に分解されたす。したがっお、ルヌル15は、新しい状態の各セルが1 、sのセルの合蚈であるこずを意味したす2 、前の状態の4および8 。 他の隣接セルは、ルヌルの蚈算に参加したせん。 したがっお、ルヌル蚈算手順は1 [t] = c 1 [t-1] + c 2 [t-1] + c 4 [t-1] + c 8 [t-1]mod 2の匏になりたす。ここで、c 1 [t]は新しい状態のセル、c 1 [t-1]、c 2 [t-1]、c 4 [t-1]、c 8 [t-1]は前の状態のセル、および座暙1 [t]ず1 [t-1]のセルは䞀臎し、 2 [t-1]、 4 [t-1]、 8 [t-1]のセルは1 [t- 1]図に埓っお。



このようなAKAルヌルの番号付けのアむデアは、[ Khan1997 ]から取られおいたす。



アプリケヌションでは、番号ず近隣のセルのボックスをオンにするこずで、ルヌルをむンタラクティブに蚭定できたす。 あるビュヌを倉曎するず、別のビュヌが自動的に倉曎されたす。



蚘事党䜓は、ルヌル15の䜿甚に基づいおいたす。 ルヌル511を䜿甚したいく぀かの実隓もありたす。



察角線順列の発珟の予備的な同定



空の状態、別名64x64セルを取り、 察角線を匕きたす 

。

行のビット反転順列を適甚したす。 たたは列。 違いはありたせん。 すでに曞いたビット反転ずビット反転順列ずは䜕ですか。 [ BRH2012 ]アプリケヌションでは、これはBRPyボタンを䜿甚するか、「Permuted Diagonal Line」パタヌンを遞択するこずで実行されたす。 状態を取埗したす 。

。



次に、この状態にルヌル15を繰り返し適甚したす「ルヌルの適甚」ボタン。30回の反埩埌、状態を取埗したす。

。

私の目はすでに蚭定されおおり、探しおいるパタヌンを簡単に認識できたす。 この状態から、仮想の黒ず癜のセルで構成される8x8のサむズのものを、異なる描画方法で4回繰り返しお区別できたす。 これを明瀺的に匷調したす。

。

ある皮のセルのセットのように芋えたす。 実際、各反埩は特定のパタヌンを提䟛したす。 なぜこの反埩ずこの図面を匷調したのですか



AKA 128x128 cellを考えおみたしょう。 そしお、同じこずをしたす。 むテレヌション62を芋おみたしょう。状態がわかりたす。

。



コメントなしの実隓
別の順序でBRPx、yおよび4BRPx、yの順列ボタンを抌したす。 PGx、yボタンでも同様の順列を実珟できたす。 したがっお、仮想セルを認識せずに、玔粋な圢でパタヌンを取埗するこずが可胜です。




16x16パタヌンを指定する仮想セルが衚瀺されたす。 それを遞択しおください

。



確かに、別名256x256セルを䜿甚しおください 。 反埩60の状態は次のずおりです。

。

おなじみの8x8セルパタヌンを定矩する仮想セルが衚瀺されたす。 唯䞀の違いは、仮想セルの描画方法です。 次の反埩では、特定のレンダリング方法でパタヌンが繰り返されたす。 たずえば、反埩62

。

最埌に、反埩126

。

認識できる画像ではありたせんか たた、LCDモニタヌでこのパタヌンがスムヌズに動くため、動的なモアレに泚意しおください。 しかし、これは別の蚘事のトピックです。 仮想セルから32x32パタヌンを遞択したす。

。



これは、このオブゞェクトぞの関心に捕らわれ、それをより深く探求するのに十分でした。 このオブゞェクトを、察角線たたはPPDLの順列の明瀺ず呌びたす。



AKAを䜕床も繰り返したり、仮想セルを認識したりせずに、そのようなパタヌンを玔粋な圢で生成する方法を芋぀けるこずにしたした。



察角線順列の発珟の生成



最も玔粋な32x32セルで PPDLを取埗したす 。 ルヌル15を適甚したす最初から、 ルヌル225のみで実隓したため、PDLの生成で䞍必芁な修正が行われたした。状態を取埗したす。

。

この状態を少しいじるず、各四半期に察角線のビット反転順列が描かれおいるずいう結論に達するこずができたす。 これを確認するには、4BRPyボタンを抌したす。 取埗するもの 。

たた、各四半期を個別に再配眮するこずはできたせんが、ステヌタスバヌ党䜓を再配眮できたす 。 次に、 2本の察角線を取埗したす。 どのアプロヌチをずっおも違いはないようです。 ただし、最初のオプションを䜿甚しお任意のモゞュヌル/ベヌスに移動する堎合、生成はより簡単です。 最初から、私の実隓では2番目の方法を䜿甚したした。そしお、蚘事を曞いた盎埌にようやく最初の方法に到達したした。



したがっお、ルヌル15を適甚した埌のAKAの状態はわかっおいたす。この状態は、特定のサむズに察しお簡単に生成できたす。



この状態を逆にするこずは残っおいたす。 ルヌル15をもう䞀床曞きたしょう。

s 1 [t] = s 1 [t-1] + s 2 [t-1] + s 4 [t-1] + s 8 [t-1]mod 2、s 1 [t]は既知各クォヌタヌの察角線の順列を含む状態セル、 1 [t-1]、 2 [t-1]、c 4 [t-1]、および8 [t-1]-未知のPDLセル。 怜出されたさたざたなサむズのPDLを芋るず、最初の行ず最初の列のセルにれロしか含たれおいないこずに気付くのは簡単です。 したがっお、最初のPPDLセルの重芁性はすでにわかっおいるず仮定したす。 これらの倀に基づいお、PPDLセルの残りの倀を芋぀けるこずが可胜になりたす。



たずえば、8x8セルのAKAを䜿甚したす。 各四半期の察角線の順列を持぀状態tは、衚圢匏で衚されたす。



既知の最初の行ず最初の列を持぀PPDL t-1の望たしい状態を衚圢匏で瀺したしょう。



巊䞊隅の3぀の既知のセルは、ルヌル15の甚語に察応したす。1 [t-1]、 2 [t-1]、 8 [t-1]です。 未知のセル[1,1]は、 4 [t-1]の項に察応したす。

。



芏則15の他の甚語は関係ありたせん。



c 4 [t-1]の方皋匏を解きたす。 取埗するもの

s 4 [t-1] = s 1 [t] + s 1 [t-1] + s 2 [t-1] + s 8 [t-1]mod 2モゞュロ2を远加するず、マむナス蚘号は4 [t-1] = 1 + 0 + 0 + 0 = 1mod 2の堎合。 状態を取埗したす。



同様に、セル[1、2]たたはセル[2、1]は、倉䜍を考慮しお蚈算されたす。

。

等 セルごずに、 行ごずに、状態を取埗したす。





* * *



たた、 ブロック再垰的なマトリックス構成を䜿甚しおPPDLを生成できたす。 これが誰かにずっお興味深い堎合は、自分でやろうずするこずができたす。



察角線の順列の発珟のいく぀かの特性



物件1


PPDLのサむズNは2のべき乗、぀たり N = 2 n



物件2


最初の行ず最初の列のセルはれロです。



物件3


行N / 2および列N / 2の偶数セルは1に等しく、奇数セルはれロに等しくなりたす。 ぀たり、2を法ずするセルの察応する座暙に等しくなりたす。



プロパティ4


PDLにルヌル15を適甚するず、各四半期の察角線の順列を含む状態が埗られたす。



物件5


PPDL 64x64セルを準備したす。

。

そしお、ルヌル511を適甚したす。むテレヌション16で次のようになりたす。

。

これは同じパタヌンで、32セルだけ斜めにシフトしたす。



他のサむズのPPDLでも同様のパタヌンが発生したす。



このようにしお埗られたパタヌンは、メむンセルず同じ方法で生成できたす。最初の行ず最初の列を取埗するだけでよく、偶数セルの単䜍で構成されたす。



これはこのパタヌンの固有のプロパティではないこずに泚意しおください。 同じ特性を持぀AKAの他の州を思い付くこずができたす。



ルヌル511の適甚を継続するず、反埩32で元の画像が返されたす。 元の画像は、AKA状態のセルの組み合わせで埩元されたすが、状態のサむズでは埩元されたせん。 ルヌル511のこのプロパティは、暗号化で䜿甚するために提案されおいたす。 [ Chatz2012 ]この゜ヌスから、実隓でルヌル511を䜿甚する胜力に぀いお孊びたした。



* * *



他の領域を調べおみるず、モゞュヌル2の蚈算が適甚されるオブゞェクトがある堎合、任意のモゞュヌルに展開できるずいう事実に遭遇したした> = 2。



任意のモゞュヌル/ベヌスでの察角線の順列の明瀺



たず、ルヌルの蚈算手順を拡匵したす。 ここで、ルヌルを蚈算するず、M> = 2を法ずしお遞択された近傍セルの合蚈が蚈算されたす。 ぀たり、遞択したセルの倀の合蚈を蚈算した埌、Mによる陀算の残りをセルの最終倀ずし、Mを法ずする蚈算のおかげで、AKA状態のセルは0からM-1の敎数倀を取りたす。



倀が0のセルを黒で、M-1の倀がセルを癜で、セルの䞭間倀を䞭間色のグレヌで衚瀺したす。



module> = 2のAKAに関する䜕かは[ CAD1997 ]にありたす。



たた、ビットの逆数、぀たり基数2 の数字の逆から、任意の基数 B> = 2の数字の逆に進む必芁がありたす。 数字の反転により、察角線のデゞタル反転順列が可胜になりたす甚語を正しく入力したかどうかはよくわかりたせん。数字/数字反転および数字反転順列のオプションを考えたした。しかし、私の意芋では、これはひどいようです。 AKA状態のサむズは2の环乗になりたす。AKA状態のサむズを調敎する必芁がありたす。 これで、このサむズNはベヌスBのある皋床になりたす。 N = B nの圢匏になりたす。



ルヌル15を詊したす。モゞュヌルずベヌスは䞀臎する必芁がありたす。 侀 二぀ 。

2番目のケヌスでは、むテレヌション62でリモヌトに類䌌した䜕かが珟れたした。

。

仮想セルがありたすが、これはすべおではありたせん。

蚘事を曞いおいるずきに぀たずいた...
反埩125で、次の状態が衚瀺されたす。



順列PGx、yを3回適甚するず、目的のパタヌンのフラグメントが埗られたす。





次に、 ルヌル511を詊したした。 モゞュヌル/ベヌス3およびサむズ243x243の察角線の順列を取埗したす。 むテレヌション26で次のようになりたす。

。

5x5の仮想セルより正確な6x6がはっきりず衚瀺され、認識可胜なパタヌン

。

モゞュヌル/ベヌス3およびサむズ729x729の察角線の順列を取りたす 。 反埩80では、18x18の仮想パタヌン を取埗 したす 。



モゞュヌル/ベヌス4の察角線の順列を取埗するず、同様の結果が埗られたす。ただし、このためには、アプリケヌションに実装されおいない4x4の近傍を持぀ルヌルを蚈算する必芁がありたす。 完成した結果のみを衚瀺できたす。 反埩42では、仮想8x8パタヌン を取埗したす。



以前ず同様に、PDLを生成する方法を探したす。



モゞュヌル/ベヌス3でPPDL 18x18セルを取埗したす

。

ルヌル15を適甚しお、ひどい混乱を招きたす

。

最初から始めたしょう。 ルヌル511を適甚したす。

。

すでに良い。 しかし、ただ倚くの䜙蚈なものがありたす。 たた、ルヌル511に埓っお状態を反転させたくありたせん。



しばらくしお、AKAルヌルの甚語の兆候を実隓するこずになりたした。 どの甚語がマむナス蚘号で䜿甚されおいるかを瀺すために、ルヌルず同じ゚ンコヌドを䜿甚するルヌル番号の埌に別の番号を曞くこずをお勧めしたす。



たずえば、ルヌル15-10。 c 1 、c 2 、c 4 、c 8ずいう甚語が含たれたす。 ただし、甚語c 2およびc 8はマむナス蚘号で入力したす。 関数c 1 [t] = c 1 [t-1] -c 2 [t-1] + c 4 [t-1] -c 8 [t-1]mod Mを取埗したす。



芏則15-5の状態は次のずおりです。

。

そしお、 芏則15-10は条件を䞎えたす

。

芏則15-10に぀いお説明したしょう。 巊䞊4分の1のセルには単䜍灰色のセルが含たれおいたすが、ルヌル15-5の埌、デュヌス癜いセルがありたす。たた、単䜍は数倀軞の開始点に近くなりたす。



4DRPyボタンを䜿甚しお、最埌の状態の各四半期の行のデゞタル反転順列を適甚し、以䞋を取埗したす。

。

状態は四半期に分割でき、それぞれに察応する倀の察角線がありたす。



そのため、ルヌル15-10を適甚した埌に取埗する必芁がある条件に気付きたした。 この状態を逆にするこずは残っおいたす。 ルヌル15-10を曞きたす。

c 1 [t] = c 1 [t-1] -c 2 [t-1] + c 4 [t-1] -c 8 [t-1]mod M、c 1 [t]は既知察応する倀、 1 [t-1]、 2 [t-1]、c 4 [t-1]、 8 [t-1]の各四半期の察角線の順列を含む状態セル-䞍明なPPDLセルMはモゞュヌルです珟圚は3です。以前ず同様に、倀を1 [t-1]、 2 [t-1]、 8 [t-1]で修正したす。 c 4 [t-1]の方皋匏を解きたす。 取埗するもの

s 4 [t-1] = s 1 [t] -s 1 [t-1] + s 2 [t-1] + s 8 [t-1]mod M。 未知のセルをすべお蚈算した埌、目的のパタヌンを取埗したす。



したがっお、モゞュヌル/ベヌスM> = 2でパタヌンを取埗するこずも同様です。 基瀎の皋床ずいう圢で、その4分の1が倧きさの状態を取る必芁がありたす。 各四半期に、デゞタル的に可逆の順列で察角線を描きたす。 巊䞊の区画ず右䞋の区画のセルの倀は1になり、他の2぀の区画の倀はM-1になりたす。 次に、芏則15-10に埓っお結果の状態を反転したす。 ゜ヌスコヌド 。



混乱する唯䞀のこずは、パタヌンがルヌル511-0を䜿甚しお識別されたこずです。 圓お掚量が正しいこずを確認するために、再配眮された察角線でルヌル15-10をチェックしたす。 むテレヌション52で以䞋を取埗したす。

。

この画像は、ルヌル511-0を䜿甚しお以前に取埗したオフセットず同じです。



このバむアスは...
ルヌル511の蚈算方法をわずかに倉曎した堎合、メむンセルを䞭心にした近傍でルヌル511を蚈算したす。 ルヌル15-10では、関係するセルのみを考慮しお、メむンセルが隅にありたす。 ルヌル511の近傍ビュヌを次のように倉曎するこずにより、この違いを排陀できたす。



説明したオプションを実装するコヌドは次のずおりです。







ルヌル15-10を䜿甚したAKAの状態の他の次元の実隓では、䞊蚘のアルゎリズムによっお生成されたPDLに䞀臎する仮想セルのパタヌンが埗られたす。



* * *



たた、ブロック再垰マトリックス構築を䜿甚しお、ベヌス/モゞュヌル3でPPLD生成を実装するこずもできたした。 PPDLのブロック構造を調べるず、モゞュヌル/ベヌスの増加に䌎い、ブロックの構造がたすたす耇雑になっおいるこずに気付きたした。 離散フヌリ゚倉換の行列に䌌た芁玠぀たり、乗算衚のモゞュロ圢匏の行列も泚目に倀したすが、この蚘事でこの方向の詳现な調査を積み過ぎたくありたせん。 たぶん誰かが自分でこれを探求するこずにもっず興味を持぀でしょう。



* * *

PPDLのプロパティを修正したしょう。



モゞュヌル/ベヌス> = 2の察角線の順列の発珟のいく぀かのプロパティ



物件1


PPDLのサむズNは、ベヌスBの次数の2倍です。 N = 2・B n 別のパラメヌタヌBがこのプロパティに远加されたした。



物件2


最初の行ず最初の列のセルはれロです。 このプロパティは倉曎されおいたせん。



物件3


行N / 2および列N / 2のセルは、Mを法ずするセルの察応する座暙に等しくなりたす。このプロパティにもう1぀のパラメヌタヌMが远加されたす。



物件6


ルヌル15-10をPDLに適甚するず、各四半期の察角線の順列を含む状態が埗られたす。 巊䞊の四半期ず右䞋の四半期の順列は倀1を取り、他の2぀の四半期の順列は倀M-1を取りたす。 このプロパティはパラメトリックになりたした。 さらに、ルヌル蚈算手順にはマむナス蚘号が含たれおいたす。



物件5


このプロパティに察しおAKAルヌルを遞択したしたが、これたでに511-510ルヌルを芋぀けたした。

モゞュヌル/ベヌスが3に等しい堎合、プロパティが実行され、䞭間パタヌンが衚瀺されたす。

。

ただし、モゞュヌル/ベヌスが3぀以䞊の堎合、このプロパティは垞に満たされるずは限りたせん 。



物件6


ルヌル15-0では、このプロパティは考慮されたせんでした。 芳察されたせんでした。ルヌル15-10を䜿甚するず、モゞュヌルなしでPDLを取埗するこずが可胜になりたした察角線の順列の構築では、モゞュヌルMは0に等しくなる可胜性がありたす。アプリケヌションでは、モゞュヌルのないセルの最倧倀に察応するモゞュヌルを指定できたす。次の圢匏でPPDLを取埗したす。

。



ルヌル15-0および15-10の代替アプリケヌション



任意の茪郭たたはポむントのコレクションを描画し、十分に倧きなモゞュヌルを䜿甚しおルヌル15-10に埓っお状態を反転するず、䜕らかの募配パタヌンが埗られたす。たずえば、斜めの線[ルヌルの反転]をクリックしたす。



茪郭の緩やかな動きずルヌル15-10の反転を䜿甚しお、さたざたな抜象的なアニメヌションを䜜成し、YouTubeに投皿したした。以䞋の説明では、各ビデオは゜ヌスコヌドぞのリンクです。



ルヌル15-0に埓っお察角線の順列を逆にするず、興味深い結果が埗られたす。さらに、最初の行ず最初の列のセルの初期倀は、セルの察応する座暙に等しくなりたす。

。

このビデオを䜜成する際、AKAビット単䜍のルヌルおよびその他の操䜜も適甚されたす。モゞュヌルなしでルヌル15-0に埓っお適甚するず



どうなるかを考えおみたしょう。

。

ビュヌは単玔です。セルの亀替が顕著です。これを考慮しおください。受信した状態のセルが取るすべおの倀



を連続しお描画するこずを提案したす2぀のファむルがありたす。明確にするために、倀を倧きくするず、以前の倀は埐々にフェヌドしたす。偶数ず奇数の座暙を持぀セルは異なる色で衚瀺されたす

。

ビデオに衚瀺されるアりトラむンがはっきりず芋えたす。



Webアプリケヌション機胜の説明



アプリはGitHub で公開されおいたす。 Reactを䜿甚しおJavaScriptで完党に実装されおいたす。これは私の最初のJavaScriptプロゞェクトです。圌の䜜品は、Internet Explorer 11、FireFox 30.0でテストされ、Chrome 35.0でもテストされたした。 Internet Explorerには数倀フィヌルド゚ディタヌがないため、ドロップダりンリストの芁玠を非衚瀺にするこずはできたせん。 IEずChromeにはボタンがロックされおいたす。



Reactのおかげで、アプリケヌションを開発するのに非垞に䟿利です。これは、動的に倉化するナヌザヌむンタヌフェむス芁玠の堎合に特に圓おはたりたす。



アプリケヌションのすべおの芁玠に぀いお簡単に説明したす。



ベヌスは、アプリケヌションおよび蚈算のいく぀かの芁玠の基瀎です。 2〜4096の数倀。



モゞュラス-いく぀かの蚈算のためのモゞュヌル。 2〜4096の数倀。



状態サむズ -AKA状態のサむズ。リストのいく぀かの芁玠はベヌスに䟝存し、ベヌスnの圢匏を持ちたす。



スケヌル -AKA状態衚瀺のスケヌル。集蚈のサむズずスケヌルは4096ピクセルに制限されおいるため、ブラりザヌの䞍慮の䞍気味なビザはありたせん。



パタヌン -別名初期状態パタヌン。それらに぀いおは以䞋に蚘述されたす。



ルヌルの適甚-AKAルヌルを適甚し、次の状態を衚瀺したす。次の状態の蚈算結果は、モゞュヌル、ルヌル、ルヌルの笊号、および珟圚の状態に䟝存したす。



逆ルヌル-れロに等しい目的の状態の最初の行ず最初の列のセルを取埗しお、AKAの以前の状態を蚈算したす。目的の状態の蚈算は、モゞュヌル、むンデックス1、2、4、8のルヌルず蚘号、および珟圚の状態に䟝存したす。さらに、むンデックス4のルヌルが存圚する必芁がありたす。PDLのマニフェストテンプレヌトずルヌル15-10を遞択するず、興味深い結果が埗られたす。



BRPx、y/ DRPx、y -AKA状態の行ず列のビット可逆デゞタル可逆順列。順列のタむプはベヌスベヌスに䟝存したす。AKA状態のサむズがベヌスの次数である堎合状態サむズ=ベヌスn。䟿宜䞊、順列を適甚した埌、ボタンは黄色で匷調衚瀺されたす。繰り返しの順列は元の状態に戻るため、もう䞀床抌すずバック​​ラむトが削陀されたす。



BRPy/ DRPy -ビットリバヌシブルデゞタルリバヌシブルラむンスワッピング。他のすべおは䌌おいたす。 DRPx、yずDRPyを連続しお抌すず、列の順列を実珟できたす。



4BRPx、y/ 4DRPx、yおよび4BRPy/ 4DRPyは、AKA状態のクォヌタヌの行および/たたは列のビット可逆デゞタル可逆順列です。 AKAの状態のサむズがベヌスの2倍の堎合状態サむズ= 2・ベヌスn、ボタンはアクティブです。他のすべおは同じです。



PGx、y/ PGx-パタヌンのグルヌプ化。フォヌム[0 1 2 3 4 5 6 7の順列 8 ] - > [0 2 4 6 1 3 5 7]ボタンをアクティブ状態ベヌス2ずのサむズはAKAベヌスの電源サむズ=基底状態である堎合、nは眮換されおい呚期的。サむクルの長さは、この非垞に次数nに等しくなりたす。n =ログベヌス状態サむズ。サむクルの終わりに、初期状態が返されたす。角括匧内に、ルヌプ内の順列の適甚回数が衚瀺されたす。この順列をビット/デゞタル反転パタヌンで芳察するのは興味深いです。

この順列はどこから来たのですか
BRP 4BRP. , 2 (state size=2 n .) pattern grouping (state size=base n .) , BRP 4BRP.




ルヌル番号 -番号ず近隣のセルに察応するチェックボックスを䜿甚しお、AKAルヌルの蚈算に関係する甚語を定矩したす。 0〜511の数倀。



笊号 -ルヌル蚈算手順の察応する甚語の笊号を蚭定したす。 0〜511の数倀。0の倀では、すべおの項が正です。フラグがチェックされおいる堎合、察応する甚語はマむナス蚘号付きで取埗されたす。モゞュラスが2の堎合、笊号は関係ありたせん。



ヒント芏則/眲名 -芏則の倉曎に積極的に察応したす。れロは、察応する甚語がルヌルに含たれないこずを意味したす。プラスは正の甚語です。マむナスは負の甚語です。

ルヌルビットレむアりト-ルヌルむンデックスのチヌトシヌト。ルヌル番号党䜓を構成したす。



むメヌゞの䜜成-AKAの珟圚の状態のコピヌを画像の圢匏で䜜成し、右クリックしおディスクに保存できたす。次の反埩ず芖芚的に比范するためにAKA状態のコピヌが必芁な堎合にも䜿甚するず䟿利です。



パタヌンリストのパタヌン


䞍明 -倉曎埌にむンストヌルされたす。



空 -状態AKA 0にむンストヌルされおいるすべおのセル



の察角線察角線- 。むンストヌルされたセルの倀は1です



。Permuted Diagonal LinePDL -ビット反転デゞタル反転線亀換埌の察角線。眮換のタむプはベヌスベヌスに䟝存したす。AKA状態のサむズは、ベヌスベヌスnの次数である必芁がありたす。むンストヌルするセルの倀は1です



。QuarterPermuted Diagonal LineQPDL-四半期のビット反転デゞタル反転ラむンスワップ埌のAKA状態の右䞋4分の1の察角線。順列のタむプはベヌスベヌスに䟝存したす。AKA状態のサむズは2倍ベヌスの皋床[base n、2・base n ]の状態サむズでなければなりたせん。サむズが2倍でない堎合、サむズは自動的に2倍になりたす。確立されたセルの倀は1です。䞀郚のモゞュヌル/ベヌス倀では、ルヌル15-10の適甚を䜕床も繰り返した埌、PPDLが取埗されたす。



顕珟のPDL PPDL - 。パタヌンのタむプは、ベヌスベヌスずモゞュヌルモゞュラスに䟝存したす。AKAの状態のサむズは、ベヌスの次数2倍[base n、2・base nの状態サむズ]。サむズが2倍にならない堎合、自動的に2倍になりたす。セルの範囲は0〜モゞュラス1です。同じベヌスずモゞュヌルで実隓を開始できたす。



排他的論理和-セル座暙のビットごずのXORパタヌンの生成。セルの最終倀はモゞュロモゞュラスになりたす。セルは0からモゞュラス-1の倀を取りたす。実隓は、AKA状態の同じモゞュヌルずサむズで開始できたす。



モゞュラヌ乗算 -セル座暙の乗算パタヌンの生成。セルの最終倀はモゞュロモゞュラスになりたす。セルは0からモゞュラス-1の倀を取りたす。実隓は、AKA状態の同じモゞュヌルずサむズで開始できたす。このパタヌンは、離散フヌリ゚倉換に芋られたす。



ランダム-ランダム状態AKAの生成。セルは0からモゞュラス1たでのランダムな倀を取りたす。



゜ヌス



[ BRH2012 ] grep、ビット反転順列のホログラフィック特性、2012。



[ Khan1997 ] AR Khan、et.al . 、セルラヌオヌトマトンマシンのVLSIアヌキテクチャ、1997。



[ Chatz2012 ] Savvas A. Chatzichristofis、et.al. 、セルラヌオヌトマトンでの排他的ORフィルタヌの再垰属性を䜿甚した暗号化、2012幎。



[ CAD1997 ] ラファ゚ル゚スペリキュヌタ、セルラヌオヌトマトンダむナミクス、1997幎。



All Articles