有限オートマトンと有限状態マシンの違いは何ですか?


16

デジタル順序回路設計でFSMを使用しました。しかし、私は有限オートマトンに不慣れです。誰かが2つの「基本的な」違いを理解するのを手伝ってくれますか?


5
ウィキペディアから: "...オートマタ理論では、理論的コンピュータサイエンスの一分野である決定論的有限オートマトン(DFA)-決定論的有限状態マシンとしても知られています -は、シンボルの有限文字列を受け入れ/拒否する有限状態マシンです入力文字列ごとにオートマトンの一意の計算(または実行)... "。DFAはオートマトン理論で使用される優先語であり、FSMは実際のアプリケーションで使用される優先語です。
Vor

4
MealyおよびMooreオートマトンも含め、FSMはより包括的だと思います。NFAは特定のモデルの1つです。
ラファエル

@Raphael:私はあなたに同意します、FSMはもっと広いようです(ウィキペディアでさえ、トランスデューサー、アクセプター、分類子、およびシーケンサーを区別します)。"DFA"〜 "FSMアクセプター"(yes / no出力のみのFSM)...さらに、回路設計のFSMは、通常は出力を使用します...おそらく、コメントを回答に変換できます。
はVor

個人的に、私はFSMをDFA、NFA、MealyおよびMooreマシン、(有限状態)トランスデューサーなどを含む広範な用語として使用します。有限の状態空間を持ち、補助メモリがない単純なもの。
ダン

1
@Raphael形式理論(または計算理論)では、「オートマタ」という言葉を使用することを好みます-私たちのマシンが「自動」マシン(あなたのコンピューターのように自己移動する)であることを強調するために-「自動」移行ルールが定義されている場合、文字列を処理/分類するために明示的なインテリジェントを適用する必要はありません(各ステップで移行ルールを参照するだけです)。-一方、マシンという用語は(モデルよりも)デバイスのコンテキストで好まれます-両方とも互いに同義語です。
グリジェシュショーハン14

回答:


12

私の知る限り、どちらにも「状態」と「入力」があり、入力信号によりマシンをある状態から別の状態に移動させます。したがって、概念的な考え方は同じです。詳細には多少の違いがあります。

FSMの回路設計では、入力信号はほとんどビット(バイナリ)であると想定されますが、有限状態オートマトンでは、入力シンボルの一般的な「抽象」アルファベットを持つことができます。第二に、FSMは、到達した状態に関連付けられた、同じくバイナリの出力も生成します。オートマトンの用語では、この「拡張」はムーア機械と呼ばれます。ただし、オートマトンには最終的な(または受け入れの)状態があり、好ましい入力読み取りを示します。最後に、FSMはほとんど確定的です。つまり、特定の状態の各入力に対して、次の状態が1つあります。オートマトン理論では、移動する場所を選択できる非決定的なバリアントも考慮します。


6

私の経験とウィキペディアの記事に基づいて、いくつかの種類の有限状態マシンがあります

飛び回る概念のいくつかは、ほとんどモチベーションが異なります。言語および/または計算可能性理論から生じたものもあれば、コンピュータアーキテクチャから生じたものもあります。

また、いくつかのパラダイムを変更して、おそらく間違いなくまだ有限状態のオートマトンであるオートマトンを取得できることに注意してください。

ご覧のとおり、TCS 101で教えられているバニラ有限オートマトンは、それぞれ独自の(多かれ少なかれ)定義を備えた多くのフレーバーの1つにすぎません。


2

ただし、両者が依存する主な考え方は同じです。どちらも有限状態を使用し、入力フィードとして別の状態にジャンプします。ただし、FSMは全加算器やSRフリップフロップのようなマシンであり、入力および出力としてビットがあります。ええ、FSAにはビット出力もあります。0は非終了状態、1は終了状態ですが、これは抽象的なメカニズムであり、表示されません。それらを表すために描かれた有向グラフには違いがあります。FSMは論理および計算デバイスであり、FSMはデジタルロジックデバイスです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.