Кіріспе

Автоматтар теориясы – абстрактілі машиналар мен автоматтарды, сондай-ақ оларды пайдалану арқылы шешілетін есептеу мәселелерін зерттеу. Бұл математикалық логикамен тығыз байланысты теориялық информатикадағы теория. "Автомат" сөзі грекше αὐτόματος сөзінен шыққан, яғни "өздігінен әрекет ететін, өз еркімен, өздігінен қозғалатын" дегенді білдіреді. Автомат (көпше түрі – автоматтар) – алдын ала белгіленген операциялар тізбесін автоматты түрде орындайтын, өзін-өзі қозғалтатын абстрактілі есептеу құрылғысы. Шекті сандағы күйлері бар автомат шекті автомат (FA) немесе шекті күй машинасы (FSM) деп аталады. Оң жақтағы сурет автоматтың белгілі бір түрі болып табылатын шекті күйдегі машинаны көрсетеді. Бұл автомат күйлерден (суретте шеңберлермен бейнеленген) және көшулерден (жебелермен бейнеленген) тұрады. Автомат кіріс символын қабылдағанда, өзінің көшу функциясы бойынша басқа күйге көшеді (немесе секіреді), ол алдыңғы күй мен ағымдағы кіріс символын аргументтер ретінде қабылдайды. Автоматтар теориясы формальды тілдер теориясымен тығыз байланысты. Осы контексте автоматтар шексіз болуы мүмкін формальды тілдердің шекті бейнелері ретінде қолданылады. Автоматтар көбінесе олар тани алатын формальды тілдер класы бойынша жіктеледі, мысалы, Чомски иерархиясында, ол автоматтардың негізгі кластары арасындағы ұялы қатынасты сипаттайды. Автоматтар есептеу теориясында, компилятор құрастыруда, жасанды интеллектте, синтаксистік талдауда және формальды тексеруде маңызды рөл атқарады.

Тарих

Абстрактты автоматтар теориясы 20 ғасырдың ортасында шекті автоматтармен байланысты дамыды. Автоматтар теориясы бастапқыда дискретті параметрлермен жұмыс істейтін жүйелердің мінез-құлқын зерттейтін математикалық жүйелер теориясының бір саласы саналды. Автоматтар теориясындағы алғашқы жұмыстар бұрынғы жүйелерді зерттеуден материалдық жүйелерді сипаттау үшін дифференциалдық есептеуді пайдаланудың орнына, ақпараттық жүйелерді сипаттау үшін абстрактілі алгебраны қолдану арқылы ерекшеленді. Шекті күйдегі түрлендіргіштер теориясы әртүрлі зерттеу қауымдастықтарында әртүрлі атаулармен әзірленді. Тьюринг машинасының алғашқы тұжырымдамасы, сондай-ақ pushdown автоматтар сияқты шексіз күйлерге ие автоматтардың жаңа түрлері де осы салада енгізілді. 1956 жылы Клод Шеннон, В. Росс Эшби, Джон фон Нейман, Марвин Мински, Эдвард Ф. Мур және Стивен Коул Клин сияқты ғалымдардың еңбектерін жинақтаған «Автоматтар туралы зерттеулер» атты еңбек жарық көрді. Осы томның жарық көргенімен «автоматтар теориясы салыстырмалы түрде дербес ғылым ретінде қалыптасты». Сол жылы Ноам Чомский автоматтар мен формальды грамматика арасындағы сәйкестікті көрсететін Чомский иерархиясын сипаттады, ал Росс Эшби «Кибернетикаға кіріспе» атты оқулығын жариялады, онда автоматтар мен ақпаратты негізгі жиын теориясын қолдана отырып түсіндірді. Сызықтық шектелген автоматтарды зерттеу Myhill–Nerode теоремасына әкелді, ол формальды тілдің реттелген болуы үшін қажетті және жеткілікті шартты көрсетеді, сонымен қатар тіл үшін ең кішкентай машинадағы күйлердің санын дәл анықтайды. Реттелген тілдер үшін қолданылатын сорғы леммасы, сондай-ақ реттелгендігін дәлелдеуде де пайдалы, бұл кезеңде Майкл О. Рабин мен Дана Скотт детерминистік және детерминистік емес шекті автоматтардың есептеулік эквиваленттілігін дәлелдеді. 1960 жылдары «құрылым теориясы» немесе «алгебралық декомпозиция теориясы» деп аталатын алгебралық нәтижелер жинағы пайда болды, ол кіші машиналарды өзара байланыс арқылы ретті машиналарды жүзеге асырумен айналысты. Кез келген шекті автоматты әмбебап логикалық элементтер жиынтығын пайдалана отырып симуляциялауға болады, бірақ бұл симуляциялық схемада кез келген күрделіліктегі циклдар болуы керек. Құрылым теориясы машиналардың «циклсыз» жүзеге асырылуымен айналысады. Онжылдықтың соңында автоматтар теориясы «компьютер ғылымының таза математикасы» ретінде қарастырыла бастады.

Қолданбалар

Автоматтар теориясындағы әрбір модель бірнеше қолданбалы салаларда маңызды рөл атқарады. Түпкі автоматтар мәтін өңдеуде, компиляторларда және аппараттық құрылымдау (дизайн) саласында қолданылады. Контекстсіз грамматика (CFG) бағдарламалау тілдерінде және жасанды интеллектте қолданылады. Алғашқыда CFG адам тілдерін зерттеу үшін пайдаланылған. Жасушалық автоматтар жасанды өмір саласында қолданылады, ең танымал мысалы – Джон Конвейдің «Өмір ойыны». Биологияда автоматтар теориясын қолдану арқылы түсіндірілетін басқа мысалдарға моллюскалар мен қарағай конусының өсуі және пигментация үлгілері жатады. Әрі баса, кейбір ғалымдар ғаламның барлығын қандай да бір дискретті автомат есептейді деген теорияны қолдайды. Бұл идея Конрад Цузе еңбегінде туындады және Америкада Эдвард Фредкин тарапынан танымал болды. Автоматтар шекті өрістер теориясында да кездеседі: екі дәрежелі полиномиалдардың композициясы түрінде жазыла алатын азайтылмайтын полиномиалдар жиыны – шындығында, тұрақты тіл болып табылады. Автоматтарды қолдануға болатын тағы бір мәселе – тұрақты тілдерді индукциялау.

Автоматты тренажерлер

Автоматты симуляторлар – автоматтар теориясын оқытуға, үйренуге және зерттеуге қолданылатын оқу құралдары. Автоматты симулятор автоматтың сипаттамасын кіріс ретінде қабылдап, кез келген кіріс жолы үшін оның жұмысын модельдейді. Автоматтың сипаттамасын әртүрлі тәсілдермен енгізуге болады. Автоматты символдық тілде анықтауға болады, немесе оның сипаттамасын алдын ала дайындалған нысанда енгізуге болады, немесе оның күйі өзгерту диаграммасын тышқанмен басып, сүйреу арқылы салуға болады. Белгілі автоматты симуляторларға Тьюринг әлемі, JFLAP, VAS, TAGS және SimStudio жатады.