КЛЕТОЧНЫЕ АВТОМАТЫ, КАК УНИВЕРСАЛЬНАЯ ВЫЧИСЛИТЕЛЬНАЯ СРЕДА ЛЕКЦИЯ 16 Введение Целью работы является ознакомление с клеточными автоматами, их видами, способами задания и применением. Из истории Идея клеточных автоматов появилась в конце сороковых годов 20 века. Она была задумана и сформулирована Джоном фон Нейманом и Конрадом Цусе независимо друг от друга как универсальная вычислительная среда для построения, анализа и сравнения характеристик алгоритмов. Клеточный автомат дискретная динамическая система, представляющая собой совокупность одинаковых клеток, одинаковым образом соединенных между собой. Решетка клеточного автомата Свойства клеточного автомата Изменения значений всех клеток происходят одновременно после вычисления нового состояния каждой клетки решетки. Решетка однородна. Невозможно отличить никакие два места на решетке по ландшафту. Взаимодействия локальны. Лишь клетки окрестности (как правило, соседние) способны повлиять на данную клетку. Множество состояний клетки конечно. Виды клеточных автоматов Решетка одномерного (линейного) клеточного автомата Решетка двумерного (плоскостного) клеточного автомата • Клеточные автоматы со структурой более высокого порядка • Клеточные автоматы без памяти Реализация клеточного автомата. Вводятся два массива для хранения состояний клеток Определяется функция переходов клетки решетки На нулевом шаге производится заполнение решетки (первого массива) начальными данными Для вычисления новых состояний вводится цикл После завершения итерации значения из всех элементов второго массива переносятся в первый массив Пример самовоспроизведения Начальная конфигурация Конфигурация через 8 шагов Игра «Жизнь» Живые микробы Микробы компьютерные Примеры стационарных структур реализующихся в игре «Жизнь» Клеточные автоматы и искусство Настоящая сгенерированна Слева настоящая раковина, справа – она же сгенерированная с помощью клеточного автомата Асинхронные компьютеры на основе клеточных автоматов В одном из последних выпусков журнала <Нанотехнология> опубликована любопытная статья японских исследователей, занимающихся созданием асинхронных компьютеров на основе клеточных автоматов (Nanotechnology, March 20, 2003, #10). «Тьюрмиты» Тьюрмит - это некий синтез клеточного автомата и машины Тьюринга. От клеточного автомата тьюрмит отличается тем, что в начальный момент времени его поле пусто и какая-то одна клетка считается начальной «Клеточная вселенная» Стартуя из произвольно выбранного исходного состояния, автомат демонстрирует четыре различные фазы, завершающиеся причудливыми кристаллическими образованиями, сильно напоминающими примитивные формы жизни. «Искры» - автомат серии «Поколения» Клеточные автоматы серии «Поколения» - автоматы с числом состояний более чем два. Примеры клеточных автоматов Применение клеточных автоматов Математика, физика, биология и др. Моделирования гидродинамических течений Сжатие данных Реализация эффективной системы распознавания образов Решения оптимизационных задач Составление генетических алгоритмов