Кіріспе
Автоматтар теориясы – абстрактілі машиналар мен автоматтарды, сондай-ақ оларды пайдалану арқылы шешілетін есептеу мәселелерін зерттеу. Бұл математикалық логикамен тығыз байланысты теориялық информатикадағы теория. "Автомат" сөзі грекше αὐτόματος сөзінен шыққан, яғни "өздігінен әрекет ететін, өз еркімен, өздігінен қозғалатын" дегенді білдіреді. Автомат (көпше түрі – автоматтар) – алдын ала белгіленген операциялар тізбесін автоматты түрде орындайтын, өзін-өзі қозғалтатын абстрактілі есептеу құрылғысы. Шекті сандағы күйлері бар автомат шекті автомат (FA) немесе шекті күй машинасы (FSM) деп аталады. Оң жақтағы сурет автоматтың белгілі бір түрі болып табылатын шекті күйдегі машинаны көрсетеді. Бұл автомат күйлерден (суретте шеңберлермен бейнеленген) және көшулерден (жебелермен бейнеленген) тұрады. Автомат кіріс символын қабылдағанда, өзінің көшу функциясы бойынша басқа күйге көшеді (немесе секіреді), ол алдыңғы күй мен ағымдағы кіріс символын аргументтер ретінде қабылдайды. Автоматтар теориясы формальды тілдер теориясымен тығыз байланысты. Осы контексте автоматтар шексіз болуы мүмкін формальды тілдердің шекті бейнелері ретінде қолданылады. Автоматтар көбінесе олар тани алатын формальды тілдер класы бойынша жіктеледі, мысалы, Чомски иерархиясында, ол автоматтардың негізгі кластары арасындағы ұялы қатынасты сипаттайды. Автоматтар есептеу теориясында, компилятор құрастыруда, жасанды интеллектте, синтаксистік талдауда және формальды тексеруде маңызды рөл атқарады.
Automata theory is the study of abstract machines and automata, as well as the computational problems that can be solved using them. It is a theory in theoretical computer science with close connections to mathematical logic. The word automata comes from the Greek word αὐτόματος, which means "self acting, self willed, self moving". An automaton (automata in plural) is an abstract self propelled computing device which follows a predetermined sequence of operations automatically. An automaton with a finite number of states is called a finite automaton (FA) or finite state machine (FSM). The figure on the right illustrates a finite state machine, which is a well known type of automaton. This automaton consists of states (represented in the figure by circles) and transitions (represented by arrows). As the automaton sees a symbol of input, it makes a transition (or jump) to another state, according to its transition function, which takes the previous state and current input symbol as its arguments. Automata theory is closely related to formal language theory. In this context, automata are used as finite representations of formal languages that may be infinite. Automata are often classified by the class of formal languages they can recognize, as in the Chomsky hierarchy, which describes a nesting relationship between major classes of automata. Automata play a major role in the theory of computation, compiler construction, artificial intelligence, parsing and formal verification.
Тарих
Абстрактты автоматтар теориясы 20 ғасырдың ортасында шекті автоматтармен байланысты дамыды. Автоматтар теориясы бастапқыда дискретті параметрлермен жұмыс істейтін жүйелердің мінез-құлқын зерттейтін математикалық жүйелер теориясының бір саласы саналды. Автоматтар теориясындағы алғашқы жұмыстар бұрынғы жүйелерді зерттеуден материалдық жүйелерді сипаттау үшін дифференциалдық есептеуді пайдаланудың орнына, ақпараттық жүйелерді сипаттау үшін абстрактілі алгебраны қолдану арқылы ерекшеленді. Шекті күйдегі түрлендіргіштер теориясы әртүрлі зерттеу қауымдастықтарында әртүрлі атаулармен әзірленді. Тьюринг машинасының алғашқы тұжырымдамасы, сондай-ақ pushdown автоматтар сияқты шексіз күйлерге ие автоматтардың жаңа түрлері де осы салада енгізілді. 1956 жылы Клод Шеннон, В. Росс Эшби, Джон фон Нейман, Марвин Мински, Эдвард Ф. Мур және Стивен Коул Клин сияқты ғалымдардың еңбектерін жинақтаған «Автоматтар туралы зерттеулер» атты еңбек жарық көрді. Осы томның жарық көргенімен «автоматтар теориясы салыстырмалы түрде дербес ғылым ретінде қалыптасты». Сол жылы Ноам Чомский автоматтар мен формальды грамматика арасындағы сәйкестікті көрсететін Чомский иерархиясын сипаттады, ал Росс Эшби «Кибернетикаға кіріспе» атты оқулығын жариялады, онда автоматтар мен ақпаратты негізгі жиын теориясын қолдана отырып түсіндірді. Сызықтық шектелген автоматтарды зерттеу Myhill–Nerode теоремасына әкелді, ол формальды тілдің реттелген болуы үшін қажетті және жеткілікті шартты көрсетеді, сонымен қатар тіл үшін ең кішкентай машинадағы күйлердің санын дәл анықтайды. Реттелген тілдер үшін қолданылатын сорғы леммасы, сондай-ақ реттелгендігін дәлелдеуде де пайдалы, бұл кезеңде Майкл О. Рабин мен Дана Скотт детерминистік және детерминистік емес шекті автоматтардың есептеулік эквиваленттілігін дәлелдеді. 1960 жылдары «құрылым теориясы» немесе «алгебралық декомпозиция теориясы» деп аталатын алгебралық нәтижелер жинағы пайда болды, ол кіші машиналарды өзара байланыс арқылы ретті машиналарды жүзеге асырумен айналысты. Кез келген шекті автоматты әмбебап логикалық элементтер жиынтығын пайдалана отырып симуляциялауға болады, бірақ бұл симуляциялық схемада кез келген күрделіліктегі циклдар болуы керек. Құрылым теориясы машиналардың «циклсыз» жүзеге асырылуымен айналысады. Онжылдықтың соңында автоматтар теориясы «компьютер ғылымының таза математикасы» ретінде қарастырыла бастады.
Қолданбалар
Автоматтар теориясындағы әрбір модель бірнеше қолданбалы салаларда маңызды рөл атқарады. Түпкі автоматтар мәтін өңдеуде, компиляторларда және аппараттық құрылымдау (дизайн) саласында қолданылады. Контекстсіз грамматика (CFG) бағдарламалау тілдерінде және жасанды интеллектте қолданылады. Алғашқыда CFG адам тілдерін зерттеу үшін пайдаланылған. Жасушалық автоматтар жасанды өмір саласында қолданылады, ең танымал мысалы – Джон Конвейдің «Өмір ойыны». Биологияда автоматтар теориясын қолдану арқылы түсіндірілетін басқа мысалдарға моллюскалар мен қарағай конусының өсуі және пигментация үлгілері жатады. Әрі баса, кейбір ғалымдар ғаламның барлығын қандай да бір дискретті автомат есептейді деген теорияны қолдайды. Бұл идея Конрад Цузе еңбегінде туындады және Америкада Эдвард Фредкин тарапынан танымал болды. Автоматтар шекті өрістер теориясында да кездеседі: екі дәрежелі полиномиалдардың композициясы түрінде жазыла алатын азайтылмайтын полиномиалдар жиыны – шындығында, тұрақты тіл болып табылады. Автоматтарды қолдануға болатын тағы бір мәселе – тұрақты тілдерді индукциялау.
Автоматты тренажерлер
Автоматты симуляторлар – автоматтар теориясын оқытуға, үйренуге және зерттеуге қолданылатын оқу құралдары. Автоматты симулятор автоматтың сипаттамасын кіріс ретінде қабылдап, кез келген кіріс жолы үшін оның жұмысын модельдейді. Автоматтың сипаттамасын әртүрлі тәсілдермен енгізуге болады. Автоматты символдық тілде анықтауға болады, немесе оның сипаттамасын алдын ала дайындалған нысанда енгізуге болады, немесе оның күйі өзгерту диаграммасын тышқанмен басып, сүйреу арқылы салуға болады. Белгілі автоматты симуляторларға Тьюринг әлемі, JFLAP, VAS, TAGS және SimStudio жатады.