유한 오토마타와 유한 상태 머신의 차이점은 무엇입니까?


16

디지털 순차 회로 설계에서 FSM을 사용했습니다. 그러나 나는 유한 Automata에 익숙하지 않습니다. 누군가가 둘 사이의 '기본'차이를 이해하는 데 도움을 줄 수 있습니까?


5
에서 위키 백과 : "... 오토마타 이론에서, 이론 컴퓨터 과학의 한 분야가하는 결정적 유한 오토 마톤 (DFA) - 또한 결정적 유한 상태 기계로 알려진이 - 받아들이는 유한 상태 기계 / 기호 유한 문자열을 거부하고 단지 생산 각 입력 문자열에 대한 오토 마톤의 고유 한 계산 (또는 실행) ... ". DFA는 오토마타 이론에 사용되는 선호되는 용어이고, FSM은 실제 응용에 사용되는 선호되는 용어입니다.
Vor

4
Mealy와 Moore automata를 포함하여 FSM이 더 포괄적이라고 생각합니다. NFA는 하나의 특정 모델입니다.
라파엘

@Raphael : FSM이 더 넓어 보인다는 것에 동의합니다 (위키 백과도 트랜스 듀서, 수락 자, 분류 자 ​​및 시퀀서 사이를 구분합니다). "DFA"~ "FSM 수락 자"(예 / 아니요 출력 만있는 FSM) ... 또한 회로 설계의 FSM은 일반적으로 출력을 사용합니다. 아마도 의견을 답변으로 변환 할 수 있습니다.
Vor

개인적으로 저는 FSM을 DFA, NFA, Mealy 및 Moore 기계, (유한 상태) 변환기 등을 포함하는 광범위한 용어로 사용합니다. 유한 상태 공간과 보조 메모리가없는 모든 것.
Dan

1
@Raphael 공식 이론 (또는 계산 이론)에서 우리는 "Automata"라는 단어를 사용하는 것을 선호합니다. 즉, 우리 기계는 '자동'기계 (컴퓨터와 같은 자체 이동)- "자동"이라는 의미입니다. 전이 규칙을 정의한 경우 문자열을 처리 / 분류하기 위해 명시 적 지능을 적용 할 필요가 없습니다 (각 단계에서 전이 규칙을 참조하면 됨). -기계 용어는 모델이 아닌 장치의 맥락에서 선호되지만 둘 다 서로 동의어입니다.
Grijesh Chauhan

답변:


12

내가 이해하는 한, 입력 신호에 따라 기계가 한 상태에서 다른 상태로 이동하게하는 "상태"와 "동작"이 있습니다. 따라서 개념적 아이디어는 동일합니다. 세부 사항에 약간의 차이가 있습니다.

회로 설계를위한 FSM에서 입력 신호는 대부분 비트 (바이너리) 인 것으로 가정되는 반면 유한 상태 오토마타에서는 일반적인 "추상"알파벳 입력 기호를 가질 수 있습니다. 둘째, FSM은 또한 이진 상태에 도달 한 상태와 관련된 출력도 생성합니다. 오토마타 용어에서이 '확장자'를 무어 머신이라고합니다. 그러나 오토마타는 최종 (또는 수락) 상태를 가지고있어 유리한 입력 판독을 나타냅니다. 마지막으로 FSM은 대부분 결정적입니다. 즉 특정 상태의 각 입력에 대해 하나의 다음 상태가 있습니다. 오토마타 이론에서 우리는 또한 어디로 옮길 지 선택할 수있는 비 결정적 변형을 고려합니다.


6

내 경험과 Wikipedia 기사를 기반으로 여러 종류의 유한 상태 머신이 있습니다 .

날아 다니는 일부 개념은 동기 부여가 다릅니다. 일부는 언어 및 / 또는 계산 가능성 이론에서, 다른 일부는 컴퓨터 아키텍처에서 발생했습니다.

예를 들어 여전히 유한 상태 오토마타 인 오토마타를 얻기 위해 여러 패러다임을 변경할 수도 있습니다.

보시다시피, TCS 101에서 가르치는 바닐라 유한 오토마타는 각각 고유 한 (정식적인) 정의를 가진 많은 맛 중 하나 일뿐입니다.


2

둘 다 의존하는 주요 아이디어는 동일하지만. 둘 다 유한 상태를 사용하고 입력 피드로 다른 상태로 점프합니다. 그러나 Full adder 또는 SR flipflop와 같은 시스템 인 FSM에는 비트가 입력 및 출력으로 사용됩니다. 예, FSA에는 비트 출력이 있습니다. 비 종료 상태의 경우 0, 종료 상태의 경우 1이지만 추상 메커니즘이므로 볼 수 없습니다. 그것들을 나타 내기 위해 그려진 그림들에는 차이가 있습니다. FSA는 논리 및 계산 장치이고 FSM은 디지털 논리 장치입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.