Научная статья Original article
МАШИНА ТЬЮРИНГА. ПРИНЦИПЫ РАБОТЫ И РАЗЛИЧНЫЕ
ВАРИАЦИИ
THE TURING MACHINE. PRINCIPLES OF OPERATION AND VARIOUS
VARIATIONS
Еш
Колесников Павел Олегович, Студент 4 курса, Хакасский государственный университет им. Н.Ф. Катанова (655017 Россия, г. Абакан, ул. проспект Ленина д.92/1), тел. 89235854405, pasha. [email protected]
Голубничий Артем Александрович, Старший преподаватель кафедры ПОВТиАС ХГУ им Н. Ф. Катанова (655017 Россия, г. Абакан, ул. проспект Ленина д.92/1)
Pavel O. Kolesnikov, 4th year student, N.F. Katanov Khakass State University (92/1 Lenin Avenue, Abakan, 655017 Russia), tel. 89235854405, [email protected]
Artem A. Golubnichy, Senior Lecturer of the Department of POVTiAS of N. F. Katanov KSU (92/1 Lenin Avenue, Abakan, 655017 Russia)
Аннотация. Статья рассказывает об истории развития машины Тьюринга и описывает её основные принципы работы. Представлены различные вариации машины Тьюринга, в том числе, описан алгоритм работы муравья Лэнгтона. Abstract. The article tells about the history of the development of the Turing machine and describes its basic principles of operation. Various variations of the
Turing machine are presented, including the algorithm of operation of the Langton ant.
Ключевые слова: Машина Тьюринга, алгоритм, правила, Алан Тьюринг, бесконечная лента.
Keywords: Turing machine, algorithm, rules, Alan Turing, infinite tape.
В 1936 году математик Алан Тьюринг предложил абстрактную вычислительную машину для выполнения программ. Основной идеей Тьюринга было создание программы, которая хранится в памяти какой-либо универсальной машины. Отсюда появились идеи по созданию компьютерных программ, такое построение должно было быть поэтапным исполнением инструкций. По своей сути, машина Тьюринга состоит из управляющего устройства и бесконечной ленты. Из бесконечной ленту могут считываться и записываться символы, а управляющее устройство позволяет двигаться вправо и влево по самой ленте.
Сам Тьюринг считал, что его машина нужна для формализации понятия алгоритма, если задачу и можно решить с помощью какого-то алгоритма, то только тогда, когда ее решение можно представить в виде программы для машины Тьюринга.
Управляющее устройство, или как его еще называют «каретка» следует правилам перехода. Каждое такое правило предписывает машине Тьюринга, в зависимости от текущего состояния и наблюдаемого в текущей ячейке символа, записать в эту ячейку новый символ, перейти в новое состояние и переместиться на одну ячейку вправо или влево. Также ячейка может быть помечена как терминальная, это означает, что переход в любую подобную ячейку приводит к концу работы машины и остановки алгоритма.
Сама машина может называться недетерминированной, если существует пара «ленточный символ - состояние», и для нее существует две и более
команд, или детерминированной, если каждой комбинации состояния и ленточного символа в таблице соответствует не более одного правила.
Алонзо Чёрч и Алан Тьюринг утверждали, что с помощью некоторой машины Тьюринга любая интуитивно вычислимая функция является частично вычислимой. Данный тезис невозможно опровергнуть или доказать, считается, что он устанавливает «равенство» между неформальным понятием «интуитивно вычислимой функции» и формализованным понятием частично вычислимой функции [1]. Машина Тьюринга представлена на рисунке 1.
Рисунок 1 - Машина Тьюринга [2] Согласно формальным правилам, машина Тьюринга преобразует входные данные с помощью последовательности элементарных действий. Из-за того, что какое-то действие меняет лишь одну ячейку, и возможные действия не могут быть бесконечными, в этом и заключается элементарность действий. Какой бы простой не казалась эта машина, на ней возможно вычислить все, что можно было бы выполнить на другой машине, в которой вычисления происходят последовательно.
Также данная машина Тьюринга может имитировать работу различных других машин, например: машины Поста, нормальных алгоритмов Маркова или же любых других программ привычных всем компьютерам, которые
преобразуют входные данные в выходные по заданному алгоритму. Исполнители, для которых это возможно, называются полными по Тьюрингу.
Безусловно в настоящее время имеются и программы, которые могут имитировать работу данной машины, но происходит это не в полной мере, так как бесконечную ленту с данными невозможно имитировать на персональном компьютере, у которого память является конечной. Даже с учетом развития технологий, компании с каждым годом увеличивают объемы оперативной памяти, жестких дисков, кэш процессоров, но ограничение памяти никуда не уходит, она все также является конечной [3].
Существует множество различных вариаций машин Тьюринга:
- Универсальная - такая машина может заменить любую другую машину Тьюринга;
- Недетерминированная;
- Вероятностная - если для решения алгоритма имеется один из нескольких возможных переходов, то выбор осуществляется случайным образом;
- Квантовая - подразумевается, что любой квантовый алгоритм может быть описан;
- Муравей Лэнгтона;
- Машина Минского - у данной машины лента слева не надстраивается [4].
Одним из самых интересных аналогов является муравей Лэнгтона, который представляет собой двумерный клеточный автомат, его также принято считать двумерной машиной Тьюринга с четырьмя состояниями и двумя символами. Допустим имеется разбитая на клетки, бесконечная плоскость, где ячейки покрашены случайным образом в белый и черный цвет. Далее в одну из клеток «сажают муравья», который при каждом своем шаге может двигаться в одну из четырёх соседних клеток. При движении муравей следует определенным правилам:
Если попал на черный квадрат, то муравей поворачивает на 90 градусов влево, меняет цвет квадрата на белый и делает шаг вперед;
Если муравей попал на белый квадрат, то поворот на 90 градусов, изменение цвета квадрата на черный и опять же шаг вперед.
На первый взгляд простые правила, приводят к сложному поведению муравья, после некоторого времени работы, случайные движения муравья, приводят к тому, что начинается строительство дороги из 104 шагов, которые повторяются бесконечно, и что самое удивительно это не зависит от начальной раскраски клеток [5]. Магистраль муравья представлена на рисунке 2.
Рисунок 2 - Магистраль муравья Лэнгтона[6] Появление машины Тьюринга внесло огромный вклад в развитии информатики, допустим в бытовых приборах могут использоваться одни и те же микросхемы процессора.
Литература
1. Алан Тьюринг и его машина | Эрудит.Онлайн | Яндекс Дзен [Электронный ресурс]. - URL:
https://zen.yandex.ru/media/id/5e50e884n638a2a18c13e31/alan-tiuring-i-ego-mashina-60d2fe3879e5ef3dd632f68f (дата обращения 17.01.2022)
2. JavaScript Is Turing Complete— Explained | by rajaraodv [Электронный ресурс]. - URL: https://medium.com/free-code-camp/javascript-is-turing-complete-explained-41a34287d263 (дата обращения 17.01.2022)
3. Машина Тьюринга [Электронный ресурс]. - URL: https://studfile.net/preview/2428911/ (дата обращения 17.01.2022)
4. Машина Тьюринга — Википедия [Электронный ресурс]. - URL: https://ru.wikipedia.org/wiki/Машина_Тьюринга (дата обращения 17.01.2022)
5. Муравей Лэнгтона — Википедия [Электронный ресурс]. - URL: https://ru.wikipedia.org/wiki/Муравей_Лэнгтона (дата обращения 17.01.2022)
6. Муравей Лэнгтона — загадочный клеточный автомат / Хабр [Электронный ресурс]. - URL: https://habr.com/ru/post/599275/ (дата обращения 17.01.2022)
References
1. Alan Turing and his machine | A polymath.Online | Yandex Zen [Electronic resource]. - URL: https://zen.yandex.ru/media/id/5e50e88411638a2a18c13e31/alan-tiuring-i-ego-mashina-60d2fe3879e5ef3dd632f68f (дата обращения 17.01.2022)
2. JavaScript Is Turing Complete— Explained | by rajaraodv [Electronic resource]. - URL: https://medium.com/free-code-camp/javascript-is-turing-complete-explained-41a34287d263 (дата обращения 17.01.2022)
3. Turing Machine [Electronic resource]. - URL: https://studfile.net/preview/2428911/ (дата обращения 17.01.2022)
4. Turing Machine - Wikipedia [Electronic resource]. - URL: https://ru.wikipedia.org/wiki/Машина_Тьюринга (дата обращения 17.01.2022)
5. Langton's Ant - Wikipedia [Electronic resource]. - URL: https://ruwikipedia.org/wiki/Муравей_Лэнгтона (дата обращения 17.01.2022)
6. Langton's Ant - a mysterious cellular automaton / Habr [Electronic resource]. - URL: https://habr.com/ru/post/599275/ (дата обращения 17.01.2022)
© Колесников П.О., Голубничий А.А., 2022 Научно-образовательный журнал для студентов и преподавателей «StudNet» №1/2022.
Для цитирования: Колесников П.О., Голубничий А.А. МАШИНА ТЬЮРИНГА. ПРИНЦИПЫ РАБОТЫ И РАЗЛИЧНЫЕ ВАРИАЦИИ // Научно-образовательный журнал для студентов и преподавателей №1/2022.