Оглавление Дополнительное чтение Учебник "Моделирование систем. Искусственный интеллект"

Задача синхронизации

     В природе эта проблема имеет неоднократное применение, например - клетки биологического организма взаимодействуют друг с другом, синхронизируя свою работу.


Задача о стрелках (в технике)

     Есть цепь стрелков, причем каждый из стрелков может общаться только со своими соседями. Нужно выстрелить одновременно, то есть перейти из состояния S0 в S (выстрел). Для определенности предположим, что у нас 9 стрелков (автоматов). Автомат 9 посылает одновременно два сигнала (a1 и a2) в систему, распространяющиеся со скоростями 1 и 1/3 соответственно. Распространение сигнала по цепи со скоростью 1 означает, что автомат, получивший справа сигнал a1, передает его в том же направлении в следующем такте работы, а при скорости распространения 1/3 задерживает сигнал a2 на три такта. Сигналы отражаются от крайних автоматов и, с той же скоростью, двигаются вновь навстречу друг другу. Идет лавинообразный процесс установления синхронизации, на который конечно требуется некоторое время, но это небольшая величина. На рисунке 5.1 - временная диаграмма процесса установления синхронизации.
рис.5.1

     Данная процедура может быть построена на автомате с тремя состояниями S0, S1, S.  S0 - начальное состояние.

     Когда приходит сигнал, то автомат переходит в состояние S1. Если сигнал приходит, когда автомат в состоянии S1, и рядом с ним находятся соседи в состоянии S1, то он переходит в состояние S.

     Бывают синхронные и асинхронные автоматы. В асинхронных не требуется одновременного прихода сигнала.

     Правила работы асинхронного автомата для решения этой задачи
1)  Sit = 0 AND Sjt = 0 --> Sit+1 = 0; Sjt+1 = 0
2)  V=1 St=0 --> Sit+1=1;
3)  Sit<>0 OR Sjt<>0  -->  Sit+1 = min (Sit+1,Sjt+1)+1; Sit+1 = min (Sit+1,Sjt+1)+1;

     Автоматы можно заставить решить задачу (засинхронизироваться) за меньшее время. Для этого требуется увеличить количество состояний автомата.

     Примером самосинхронизирующейся системы является лазер, рассинхронизирующейся - транспортный поток.

     Наиболее остро проблема синхронизации стоит в системах ПВО и разработке чипов.



Задача вычисления

     Можно ли построить вычислительную машину из одинаковых (однородных) элементов? Проблему поставил фон Нейман , он же её и решил (см. Фон Нейман "Теория самоорганизующихся автоматов"). Т.к. машина Фон-Неймана к тому моменту уже существовала, в противовес она была названа не-фон-неймановской машиной.

     Умножение двоичных чисел состоит из двух операции - сдвига и сложения. Автомат, каждая клетка которого может иметь 27 состояний за 15 тактов перемножает два четырехзначных числа. n - количество разрядов. 3*(2n+1) - количество состоянии. (8n +2) - количество тактов. Подробнее

     НП-полные задачи требуют перебора всех данных (всё со всем надо сравнивать). Сложность этих задач растет экспоненциально в зависимости от количества элементов. Но на макаронных машинах решаются моментально - решение определяется линейно. Подробнее



Игра "Жизнь" (Конвей)

     Имеется некоторое поле клеток. У каждой клетки может быть два состояния - "жива" или "мертва". Состояние определяется по следующему алгоритму. Интервал (a,b) - интервал количества соседей.

рис.5.2

     Конвей исследовал интервал (2;3). Существуют стабильные комбинации, которые не меняются во времени, такие как, блок и улей. Стабильные динамические комбинации (семафор). Мировые часы (абсолютный метроном) определяет в этой системе скорость света (C)- за один такт они уменьшаются с обоих концов на одну клетку. Планер - аналог передачи бита информации; он превращается сам в себя через 4 такта сместившись в пространстве на одну клетку (скорость передачи бита информации - С/4).

                     
                     
                     
Блок   Улей Семафор
                     
                     
    ...                
                     
                     
Мировые часы Планер

Иллюстрации...



Свойства планера:

1)  Передвижение - имитирует передачу информации.
2)  При столкновении планеры могут разрушаться - имитация поглощения бита информации.
3)  Два планера, движущихся друг к другу под определенным углом образуют один планер - реализуется схема И.
4)  Существует генератор планеров (информации)- "ружье". Через 30 ходов вырабатывает один планер.
5)  Существует поглотитель планеров. При определенном угле может отражать информацию.

     На такой однородной структуре можно имитировать информационные структуры, имитировать информационные процессы, происходящие в них, построить вычислительную машину, в которой нет как такового процессора, или четко выраженных мест, где выполняются определенные функции.



Возможные вариации

     Варьировать можно следующие параметры: D - размерность пространства; R - радиус действия (чувствования состояния соседних клеток); S - число состояний клетки; N - память клетки;

     Таким образом, автомат описывается как четверка параметров - (D, R, S, M). (1D, 1R, 2S, 1M) - самый простой, игра происходит на линии. (2D, 1R, 2S, 1M) реализует "Жизнь" Конвея. Были найдены автоматы, которые могут использоваться в криптографии, в процессе восстановления разрушенных изображении, в геоинформационных системах. Также успешно их используют для генерации изображения и музыки (3D, 2R, 256S, 3M); моделирования процессов в химии, биологии, экономике. Подробнее



Эволюционное программирование (генетические алгоритмы)

     Для эволюционного программирования должны выполняться следующие требования:
Наличие пространства параметров x = {x1,x2,x3,...,xn}, называемое геномом.
Возможность вариации в геноме - мутации. Т.е случайное варьирование параметров.
Моделирование взаимодействия полученного варианта со средой. Оценка со стороны среды: либо    отбрасывание, либо запоминание генетического признака.

     Примеры

     Проектирование волнореза в Новороссийске. Требовалось сконструировать волнорез. Обычными средствами это сделать продолжительное время не удавалось. Тогда было использовано эволюционное программирование. В качестве генома использовались геометрические параметры волнореза. Была создана модель окружающей среды, на которой отрабатывались возникающие вариации.

рис.5.3

     Генерирование реалистичных изображений. Описание можно посмотреть в статьях:
"Компьютер моделирует эволюцию растений",
"Программы, моделирующие эволюцию биологических видов палеозоя и эволюцию английских   фамилий",
"Программирование и искусство."

     Компоновка ракеты по обтекаемости. Есть три компоненты. Требуется сложить их вместе для получения максимального объема и максимальной обтекаемостью. С помощью эволюционного программирования был получен следующий результат.

рис.5.4

     Геометрическое моделирование.

рис.5.5

     Набирая комбинации элементарных функций D1-D8, можно спроектировать множество различных геометрических областей. Например, ФОРМУЛА для картинки сложной области может иметь вид: D1*(1-D2)+D3*D4*D7+D8*D6*D4*(1-D5) или подобный этому. Вариации могут подвергнуться в формуле знаки, скобки, индексы. Будут получаться все новые фигуры.

     Требуется очень тщательно прорабатывать параметры генома. Он должен иметь как можно более общий вид. Варьировать параметры нужно непрерывней.

     На данной идее развился метод, получивший название "Искусственная жизнь" Artificial life.

     Artificial life - обобщенный метод построения динамических моделей, базирующихся на совокупности генетических алгоритмов, теории хаоса, системной динамики.
Черты метода:
-адаптация решения к условиям внешнего мира,
-передача черт по наследству,
-мутации,
-имитация выживаемости.

     Понятия метода.
Хромосома - вектор варьируемых параметров решения
Операции - получение новых решений из существующих
Скрещивание - получение параметров хромосомы от родителей, расширение области поиска
Мутация - случайное изменение параметров при копировании
Реакция мира - уничтожение процента худших особей (по критерию среды), сужение области поиска

     Чтобы решить задачу (например, синтез идеальной формы истребителя) необходимо построить среду, множество объектов, имитировать их взаимодействие, скрещивание и гибель. В смене поколений происходит процесс эволюции и переход к идеалу. Утверждается, что данному методу поддаются задачи, имеющие множество параметров, недоопределенные по множеству факторов, с крутыми фронтами в целевых функциях. То есть такие, с которыми не могут справиться теория системного анализа и оптимизации. Подробнее

Лекция 04 Лекция 06