자, 열 여섯번째 키워드인 '오토마타'를 알아 볼 것이다.
이번 키워드는 너무 생소한 개념이라 내용이 틀릴수도 있으니 양해 바랍니다..
오토마타는 추상적인 수학적 개념으로, 컴퓨터 과학에서 형식 언어를 인식하고 처리하는 데 사용된다.
여러 종류의 오토마타가 있지만, 그 중 가장 기본적인 형태는 유한 상태 오토마타(Finite State Automaton)이다.
앞에서 말했던 FSM과 같이 연관을 지을 수 있는 개념이다.
오토마타는 여러 종류가 있지만, 가장 일반적인 형태는 유한 상태 오토마타(Finite State Automata)이다.
이러한 오토마타는 상태(State)와 상태 간의 전이(Transition)로 구성된다.
각 상태에서 특정 입력을 받으면, 다른 상태로 전이된다. 유한 상태 오토마타는 유한한 수의 상태를 가지며,
입력 문자열을 읽는 동안 상태를 변경하여 입력을 처리한다.
FSM과 같이 연관을 지어서 정리하면 다음과 같다.
상태(State): 오토마타가 취할 수 있는 상태를 나타낸다. 각 상태는 특정 시점에 시스템이나 프로그램의 상태를 나타낸다.
전이(Transition): 상태 간의 이동을 정의한다. 특정 입력을 받으면 현재 상태에서 다른 상태로 이동한다.
시작 상태(Start State): 오토마타가 시작하는 상태이다.
종료 상태(Accepting/Final State): 입력 문자열을 모두 읽은 후 도달하게 되는 상태이다.
오토마타는 시작 상태에서 시작하여 입력 문자열을 하나씩 읽으면서 상태를 변경한다.
각 입력 문자는 특정 전이에 따라 상태를 변경시킨다.
입력 문자열을 모두 읽은 후에는 현재 상태가 종료 상태인지 확인한다. 종료 상태에 도달하면 입력 문자열을 인식했다는 의미이다.
하 진짜 이번키워드는 많은 자료와 영상을 찾아보았지만 제대로 이해가 되지 않는 키워드였다.
이 개념을 통해서 각종 맵을 구성하거나 유니티로 작업을 하는 영상을 보았다.
주말에 한번 해보면서 다시 익혀야 겠다.