Я делаю презентацию о машинах Тьюринга, и я хотел бы рассказать о FSM, прежде чем представлять машины Тьюринга. Проблема в том, что я действительно не знаю, что ОЧЕНЬ отличается друг от друга.
Вот что я знаю, это другое:
FSM имеет последовательные состояния в зависимости от соответствующего условия, в то время как машины Тьюринга работают на бесконечной «ленте» с головкой, которая читает и пишет.
В FSM больше места для ошибок, поскольку мы можем легко перейти в бесконечное состояние, в то время как для машин Тьюринга это не так много, поскольку мы можем вернуться назад и что-то изменить.
Но кроме этого, я не знаю намного больше различий, которые делают машины Тьюринга лучше, чем машины FSM.
Не могли бы вы мне помочь?
terminology
turing-machines
finite-automata
machine-models
Хулио Гарсия
источник
источник
Ответы:
Основное различие между тем, как работают DFA (детерминированный конечный автомат) и TM, заключается в том, как они используют память.
Интуитивно понятно, что DFA вообще не имеют «царапины» памяти; конфигурация DFA полностью определяется состоянием, в котором он находится в данный момент, и текущим прогрессом в чтении ввода.
Интуитивно понятно, что ТМ имеют «скретч» память в виде ленты; конфигурация ТМ состоит из ее текущего состояния и текущего содержимого ленты, которое ТМ может изменить при выполнении.
DFA можно рассматривать как TM, который не меняет символы ленты и не перемещает голову влево. Эти ограничения делают невозможным распознавание определенных языков, которые могут быть приняты ТМ.
Обратите внимание, что я использую термин «DFA», а не «FSM», поскольку технически я бы рассматривал TM как машину с конечным числом состояний, поскольку TM по определению имеет конечное число состояний. Разница между DFA и TM заключается в количестве конфигураций, которое равно количеству состояний для DFA, но бесконечно велико для TM.
источник
Машины Тьюринга описывают гораздо больший класс языков, класс рекурсивно перечислимых языков. Конечные автоматы описывают класс регулярных языков.
У конечных автоматов нет «памяти», она ограничена своими состояниями.
Конечный автомат - это ограниченная машина Тьюринга, в которой головка может выполнять только операции «чтения» и всегда перемещается слева направо.
Возьмите этот язык в качестве примера:
Поскольку машины с конечным состоянием ограничены в том смысле, что у них нет памяти, FSM, принимающий L, не может быть создан.
Обобщить:
Конечные автоматы описывают небольшой класс языков, в которых не требуется память.
Машины Тьюринга представляют собой математическое описание компьютера и принимают гораздо больший класс языков, чем это делают автоматы.
Машины Тьюринга обладают большей вычислительной мощностью, чем FSM. Есть задачи, которые не может выполнить ни один FSM, но которые могут выполнять машины Тьюринга.
источник
У меня было то же самое сомнение, и я увидел два очень поучительных видео и одно объяснение по Quora следующим образом:
Из этого я понял, что машина Тьюринга использует / имеет конечный автомат в качестве части своей операционной процедуры, а также добавляет к ней немного редактируемой памяти.
Пожалуйста, посмотрите также эти два видео, они освещают!
https://youtu.be/gJQTFhkhwPA
https://youtu.be/E3keLeMwfHY
источник
Насколько я понимаю различия между (стандартная модель) Тьюринга и (стандартная модель) Мили машинами:
источник
Машина Тьюринга может хранить как часть ленты то, что она хочет запомнить.
источник