Скачать Finite State Automaton Challenges на Windows, Mac

Жанры: Стратегии
Дата выхода: 30.10.2023
42.00 RUB

Описание Finite State Automaton Challenges

Автомат - это машина для ответа на конкретный вопрос без вмешательства человека после его включения, например,:
1. Является ли a + b = c?
2. Содержит ли строка символов "a"?
3. Означает ли "Может быть, мы могли бы выпить кофе" "я в тебя влюблен"? (Я не думаю, что был разработан автоматический ответ на этот вопрос.)

В этой игре мы поиграем с простейшей моделью автомата, конечным автоматом, и используем ее, чтобы справиться с 30 задачами. Они связаны с манипулированием символьными строками, двоичными числами и повседневной жизнью.

Не волнуйтесь, если вы не знакомы с Finite State Automaton, поскольку эта игра содержит руководство для быстрого начала работы. Кроме того, вы можете прочитать следующее введение и поискать Finite State Automaton онлайн, чтобы ознакомиться с ним.

Конечный автомат


Конечный автомат (FSA) является простейшим типом автомата. Конечный автомат состоит из нескольких состояний и правил перехода. Правило перехода описывает, когда одно состояние переходит в другое. Итак, это похоже на карту метро. Клиентами конечного автомата являются символьные строки. Он решает, какие строки принимаются, а какие отклоняются. Например, FSA может принимать действительные электронные письма, номера телефонов и т.д. Теперь давайте углубимся в первый пример:

У него есть два состояния: левое состояние "1" и правое состояние "2". "1", отмеченное зеленым цветом, означает, что автомат запускается здесь. "2", отмеченный синим цветом, означает, что автомат принимает входную строку только в том случае, если он остановится здесь и прочитает все символы в порядке следования строки. Следовательно, этот автомат должен принять "a" и отклонить любую другую строку.

Вопрос: попробуйте самостоятельно спроектировать FSA, принимающий "ab", и FSA, принимающий "a" или "b" (аббревиатура "a|b") (это две задачи в игре).

Недетерминированный
Наиболее существенная концепция FSA (и других типов автоматов) называется недетерминированной. Чтобы представить эту концепцию, приведем второй пример автомата. Он принимает все строки (состоящие только из 'a' и 'b'), заканчивающиеся на 'b':

Запустите этот автомат над буквой "b" в своей голове: (1) Он начинается с "1", запускает цикл "1", затем считывает все "b", а также останавливается на "1", поэтому отклоните "b"; (2) Он начинается с "1" и переходит к "2", затем считывает все "b", а также останавливается на "2", поэтому примите "b". Недетерминированный конечный автомат (NFA) принимает строку, если хотя бы одна трассировка заканчивается в состоянии, отмеченном синим цветом.

Запустите этот автомат над "ab" в своей голове: (1) Он начинается с "1", дважды запускает автоцикл "1", затем считывает все "ab", а также останавливается на "1", поэтому отклоните "ab"; (2) Он начинается с "1", один раз запускаем автоцикл "1" и переходим к "2", затем считываем все "b", а также останавливаемся на "2", поэтому принимаем "ab".

Недетерминированность важна, потому что она позволяет FSA угадывать, что позволяет нам проектировать автомат естественным образом (поскольку мы, люди, любим угадывать) и быстро.

Некоторые применения конечного автомата
Изучение конечного автомата может помочь вам войти в мир компьютерных наук. Кроме того, это может позволить вам создавать множество приложений, таких как:

NPC (неигровой персонаж) Реализация. Чтобы улучшить пользовательский опыт, во многих играх есть NPC, которые повторяют их фиксированную логику. Например, продавец едет с запада на восток, затем с востока на запад и просит реального игрока купить что-нибудь, когда они приблизятся. Логика настолько проста, что FSA может ее реализовать. Преимущество использования FSA вместо универсального языка программирования (такого как C и JAVA) заключается в том, что FSA более удобочитаем и требует меньше человеческих ресурсов для тестирования, модификации и обслуживания.

Отзывы

|

Пока нет отзывов. Оставьте первый.



Отзыв появится после модерации.

Скриншоты Finite State Automaton Challenges

Скриншот из Finite State Automaton Challenges
Скриншот из Finite State Automaton Challenges
Скриншот из Finite State Automaton Challenges
Скриншот из Finite State Automaton Challenges
Скриншот из Finite State Automaton Challenges
Скриншот из Finite State Automaton Challenges
Скриншот из Finite State Automaton Challenges
Бесплатно 40 секунд ⚡ Без регистрации ★ 4.9 • 12k+ подарков

Сделай песню которая реально порадует

Вводишь имя + пару фактов — нейросеть собирает персональный текст и голос. Получается подарок, который не выглядит “как у всех”.

Создать песню бесплатно
Сегодня 1500 ₽ 299 ₽
Пример звучания
«Для близкого человека»
превью
00:00
/ 00:00

«Твоя улыбка ярче весны, с 8 марта, любимая…»

🎙️ Голос
✍️ Текст
🎶 Стили