Цель работы:
1. Изучить конечные автоматы,
2. Рассмотреть клеточные автоматы и игру «Жизнь» в качестве примера конечных автоматов,
3. Изучить методы работы с JavaScript,
4. Написать Web-приложение реализующий клеточный автомат, используя язык программирования JavaScript.
Применение конечных автоматов
Автоматное программирование широко применяется при построении лексических анализаторов (классические конечные автоматы) и синтаксических анализаторов (автоматы с магазинной памятью).
Кроме того, мышление в терминах конечных автоматов (то есть разбиение исполнения программы на шаги автомата и передача информации от шага к шагу через состояние) необходимо при построении событийно-ориентированных приложений. В этом случае программирование в стиле конечных автоматов оказывается единственной альтернативой порождению множества процессов или потоков управления.
Продуманное применение конечных автоматов облегчает организацию и сопровождение, как логики пользовательского интерфейса, так и логики приложения. Благодаря этому код будет более гибким и надежным
В процессе работы были получены следующие результаты:
1. Была рассмотрена и изучена стандартная модель Джона Конвея.
2. Придуманы способ настройки смены поколения двух популяций.
3. Были изучены методы работы с JavaScript.
4. При помощи средств JavaScript было разработано приложение, реализующее простой интерфейс управления клетками и полем.
5. При помощи средств JavaScript был написан скрипт, рисующий график.
Данная модель может применяться для ознакомления с разнообразием клеточных автоматов, а так же для развития теоретического аппарата клеточных автоматов с различными условиями смены поколений.