Лекция 4 :: Марковские...

70
Естественные модели параллельных вычислений Лекция 4 :: Марковские системы Ершов Н.М. [email protected] Проект комиссии Президента РФ по модернизации и техническому развитию экономики России Создание системы подготовки высококвалифицированных кадров в области суперкомпьютерных технологий и специализированного программного обеспечения Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 1 / 48

Upload: others

Post on 10-Aug-2020

15 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Естественные моделипараллельных вычислений

Лекция 4 :: Марковские системы

Ершов Н.М.

[email protected]

Проект комиссии Президента РФпо модернизации и техническому развитию экономики России

«Создание системы подготовки высококвалифицированных кадров вобласти суперкомпьютерных технологий и специализированного

программного обеспечения»

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 1 / 48

Page 2: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Марковские системы

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

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 2 / 48

Page 3: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Понятие M-системы

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

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 3 / 48

Page 4: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Подстановки

Назовем подстановкой тройку σ = (α, β, p), в которой α и β —цепочки в некотором алфавите, цепочка α называется левойчастью подстановки, цепочка β — ее правой частью; p —действительное число из интервала (0, 1], называемоевероятностью применения подстановки.Для подстановки σ будем использовать обозначение

σ : αp−→ β или σ : α→ β, если p = 1.

Назовем M–системой набор подстановок

Σ = {σi , i ∈ [1 . . .N]},

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

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 4 / 48

Page 5: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Алгоритм применения подстановок

Алгоритм состоит из трех шагов:I Разбиение цепочки случайным образом на подцепочки: для

каждого символа цепочки, кроме последнего, с некоторойзаданной вероятностью ω решается вопрос — присоединяется лиэтот символ к следующему символу цепочки или нет.

I Каждая подцепочка α, полученная на первом шаге, заменяется нановую с помощью заданной системы подстановок. Для этоговыбираются все подстановки, левая часть которых совпадает с α.Из них выбирается одна с вероятностью равной вероятности этойподстановки.

I Все новые подцепочки соединяются вместе и образуютрезультирующую цепочку.

Моделирование с помощью марковской системы заключается ввыборе начальной цепочки и последовательном применении к нейописанного алгоритма.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 5 / 48

Page 6: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Алгоритм применения подстановок

100010100101001101X t =

Σ =

{01

1/2−−→ 10,0→ 1.

система подстановок

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 6 / 48

Page 7: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Алгоритм применения подстановок

100010100101001101X t =

100 0 10 10 0 101 0 011 01Σ =

{01

1/2−−→ 10,0→ 1.

система подстановок

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 6 / 48

Page 8: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Алгоритм применения подстановок

100010100101001101X t =

100 0 10 10 0 101 0 011 01

100 1 10 10 0 101 1 011 10

Σ =

{01

1/2−−→ 10,0→ 1.

система подстановок

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 6 / 48

Page 9: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Алгоритм применения подстановок

100010100101001101X t =

100 0 10 10 0 101 0 011 01

100 1 10 10 0 101 1 011 10

100110100101101110X t+1 =

Σ =

{01

1/2−−→ 10,0→ 1.

система подстановок

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 6 / 48

Page 10: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Экспоненциальное затухание

Σ ={

ap−→ λ.

Применение этой системы к цепочкесимволов an (символ a повторенный nраз) приводит к постепенной заменевсех символов a исходной цепочки на«пустые» символы λ. Так каквероятность такой замены все времясохраняется постоянной, токонцентрация символов a (ихколичество, отнесенное к длине n всейцепочки) будет убывать поэкспоненциальному закону. → λ; → a.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 7 / 48

Page 11: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Экспоненциальное затухание

Σ ={

ap−→ λ.

Применение этой системы к цепочкесимволов an (символ a повторенный nраз) приводит к постепенной заменевсех символов a исходной цепочки на«пустые» символы λ. Так каквероятность такой замены все времясохраняется постоянной, токонцентрация символов a (ихколичество, отнесенное к длине n всейцепочки) будет убывать поэкспоненциальному закону.

Зависимость концентрациисимволов a от времени

маркеры — M-система,линия — теоретическая оценка.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 7 / 48

Page 12: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Диффузия

Σ ={

aλ↔ λa.

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

→ λ; → a.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 8 / 48

Page 13: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Сепарация

Σ ={

ab → ba.

Под действием этой системы символыa будут двигаться вправо до тех пор,пока там будут оставаться свободныеместа.

→ a; → b.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 9 / 48

Page 14: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Волновая модель

Σ =

r1 : uλ

p−→ λu,r2 : λv

p−→ vλ,r3 : uv → vu,r4 : ux → vx ,r5 : xv → xu.

Непустые символы — частицы, вотсутствие помех движущиеся (r1 иr2) с постоянной скоростью вправо (u)или влево (v). При столкновениичастицы обмениваются скоростями(r3). Цепочка ограничена справа ислева символами x — стенками, откоторых упруго отражаются частицы(r4 и r5).

→ λ; → u, v .

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 10 / 48

Page 15: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Модель роста

Σ =

r1 : aλ

p←→ λa,r2 : aλ

q−→ aa,r3 : λa

q−→ aa,p + q ≤ 1.

Объекты (например, бактерии)представляются символами a.Каждый объект совершает случайныеперемещения с вероятностью p поцепочке (r1 и r2). С вероятностью qэти объекты создают свои копии, т.е.делятся на два объекта (r3 и r4), еслирядом с ними есть свободное место. → λ; → a.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 11 / 48

Page 16: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Модель роста

Σ =

r1 : aλ

p←→ λa,r2 : aλ

q−→ aa,r3 : λa

q−→ aa,p + q ≤ 1.

Объекты (например, бактерии)представляются символами a.Каждый объект совершает случайныеперемещения с вероятностью p поцепочке (r1 и r2). С вероятностью qэти объекты создают свои копии, т.е.делятся на два объекта (r3 и r4), еслирядом с ними есть свободное место.

Зависимость концентрациисимволов a от времени

«+» – сигмоидальный рост (p > q),«×» – линейный рост (p < q).

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 11 / 48

Page 17: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Типы поведения M-систем

M-системы, несмотря на их принципиальную стохастичность,могут демонстрировать весьма широкий спектр типов поведения— от недетерминированного (неупорядоченного), додетерминированного (упорядоченного).Последнее оказывается возможным благодаря алгоритмическойуниверсальности данной модели.Более того, использование в M-системах специальныхсимволов–разделителей (мембран) позволяет совместить в однойM-системе сразу несколько типов различных поведений.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 12 / 48

Page 18: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Неупорядоченное поведение

Рассмотрим M-систему, которая содержит перемешивающуюподсистему подстановок вида

aiajθ−→ ajai ,

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

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 13 / 48

Page 19: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Кинетические уравнения

Можно показать, что скорость изменения концентрациисимвола ai , определяемая подстановкой вида

ai1ai2 . . . aimp−→ aj1aj2 . . . ajm ,

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

daidt

= K · ai1ai2 · · · aim , где K = (ri − li )ω2(1− ω)m−1p,

а ri и li — количество символов ai в правой и левой частях даннойподстановки.В химической кинетике такого рода уравнения называютсякинетическими.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 14 / 48

Page 20: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Экспоненциальное затухание

Например, для рассматривавшейся выше M-системы

Σ ={

ap−→ λ,

зависимость концентрации символов a от времени описываетсяуравнением

dadt

= −ω2pa.

Решением этого дифференциального уравнения являетсяэкспонента

a(t) = a0e−ω2pt ,

где a0 — начальная концентрация символов a.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 15 / 48

Page 21: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Модель «хищник–жертва»

В том случае, если в системе имеется несколько подстановок, топри составлении кинетических уравнений надо учитывать вкладкаждой из подстановок, просуммировав в правой частидифференциального уравнения соответствующие произведенияконцентраций.В качестве примера такой системы рассмотрим простую модельтипа «хищник–жертва», в которой жертвы представленысимволами x , хищники — символами y (перемешивающаяподсистема для краткости опущена):

Σ =

r1 : λx

p1−→ xx ,r2 : xy

p2−→ yy ,r3 : y

p3−→ λ.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 16 / 48

Page 22: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Модель «хищник–жертва»

Σ =

r1 : λx

p1−→ xx ,r2 : xy

p2−→ yy ,r3 : y

p3−→ λ.

С учетом того, что сумма концентраций всех трех символовравна 1, можно сразу положить, что λ = 1− x − y .Тогда система кинетических уравнений для данной модели будетвыглядеть следующим образом{

x = a(1− x − y)x − bxyy = bxy − cy .

Ее коэффициенты равны

a = ω2(1− ω)p1, b = ω2(1− ω)p2, c = ω2p3.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 17 / 48

Page 23: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Модель «хищник–жертва»

На рисунке представлен пример численного расчета для данноймодели.

На графике маркерами отмечены фазовые траектории, полученные численныммоделированием M–системы, кривыми — фазовые траектории, полученныерешением соответствующей системы кинетических уравнений.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 18 / 48

Page 24: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Модель «хищник–жертва»

Σ =

r1 : λx

p1−→ xx ,r2 : xy

p2−→ yy ,r3 : y

p3−→ λ,

r4 : xp4−→ λ.

Если понизить вероятностьперемешенивания θ, то системастанет чувствительна кпространственному расположениюотдельных символов. Болееподходящим средством непрерывногоописания таких систем являютсяуравнения в частных производных. → λ; → x ; → y .

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 19 / 48

Page 25: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Алгоритмическая универсальность

Для того, чтобы показать алгоритимическую полноту M-систем,рассмотрим каким образом машина Тьюринга может бытьсведена к соответствующей ей марковской системе.Пусть МТ задана стандартным образом в виде набора

{AT ,QT , q1, q0,PT},

где AT — внешний алфавит (алфавит символов ленты МТ),который содержит «пустой» символ Λ; QT — внутреннийалфавит, то есть множество состояний; q1, q0 ∈ QT — начальноеи конечное состояния; PT : AT × (QT\{q0})→ AT × QT ×M —программа для МТ, здесь M = {R, L,H} есть множестводвижений МТ (вправо, влево и на месте).Примем, что в начальный момент времени все ячейки ленты, заисключением конечного их числа, являются пустыми (λ), и приэтом автомат МТ указывает на первую непустую ячейку ленты.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 20 / 48

Page 26: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Построение M-системы

Алфавит A марковской системы, моделирующей заданную МТ,есть объединение внутреннего и внешнего алфавитов МТ идополнительного граничного символа β: A = AT ∪ QT ∪ {β}.Система подстановок M-системы Σ строится по следующемуалгоритму.

I Для каждой команды МТ вида ai , qj → ak ,H, ql в Σ добавляетсяподстановка qjai → qlak .

I Для каждой команды МТ вида ai , qj → ak ,R, ql в Σ добавляетсяподстановка qjai → akql .

I Для каждой команды МТ вида ai , qj → ak ,R, ql и для каждогосимвола as ∈ AT в Σ добавляется подстановка asqjai → qlasak .

I Для каждого состояния qj ∈ QT , за исключением конечного, в Σдобавляются подстановки qjβ → qjΛβ и βqj → βΛqj .

Начальная цепочка X 0 = βq1Sβ, где S — последовательностьсимволов в непустой части ленты МТ.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 21 / 48

Page 27: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Построение M-системы

Идея предложенного преобразования состоит в следующем. Вкаждый момент времени цепочка M-системы состоит (слеванаправо) из 1) символа β, представляющего левуюполубесконечную пустую часть ленты МТ, 2) последовательностисимволов из непустой части ленты (возможно с несколькимипустыми символами справа и слева), 3) еще одного символа β,представляющего теперь правую полубесконечную пустую частьленты.Автомат МТ, находящийся в состоянии qj и указывающий наячейку ленты с символом ai , представляется символом qj ,стоящим перед соответствующим символом ai .Подстановки, построенные согласно пунктам 1–3 вышеописанногоалгоритма, представляют программу МТ. Подстановки,полученные согласно пункту 4, обрабатывают ситуациюдостижения автоматом правого или левого края цепочки,вставляя в нее новые пустые символы.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 22 / 48

Page 28: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Построение M-системы

Машина Тьюринга, прибавляющая 1к числу в двоичной с/с:

λ 0 1S λRA 0LS 1LSA 1HX 1HX 0RA

Соответствующая ей M-система:

Σ =

S0→ 0S , 1S → 1S ,0Sλ→ A0λ, 1Sλ→ A1λA0→ X1, 0A1→ A001A1→ A10, λA1→ Aλ0Aλ→ X1, 0X → X01X → X1

→ λ; → 0; → 1;→ S ; → A; → X .

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 23 / 48

Page 29: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Алгоритмическая универсальность

Нетрудно убедиться, что поведение построенной M-системы будетполностью эквивалентным поведению моделируемой МТ.Единственное отличие состоит в том, что применение подстановокв M-системе проиходит в случайные моменты времени, в то времякак выполнение соответствующих команд программы для МТпроизводится строго регулярно.С другой стороны, выполнение шагов в M-системы представляетсобой алгоритм, который может быть реализован с помощьюлюбого вычислительного устройства, т. е. и с помощью МТ.Таким образом, показано, что марковские системы являютсяалгоритмически универсальными и могут служить модельюпараллельных вычислений.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 24 / 48

Page 30: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Параллельные вычисления с помощью M-систем

На рисунке приведен примерэволюции M-системы, реализующейпараллельное вычисление логическоговыражения, содержащего операцииконъюнкции, дизъюнкции иотрицания, логические константы 0и 1 и скобки для явного указанияпорядка вычисления:

Σ =

0∧0→ 0 0∧1→ 01∧0→ 0 1∧1→ 10∨0→ 0 0∨1→ 11∨0→ 1 1∨1→ 1¬0→ 1 ¬1→ 0(0)→ 0 (1)→ 1

→ 0; → 1; → ∧;→ ∨; → ¬; → (, ).

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 25 / 48

Page 31: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Мембраны

Пусть ΣA и ΣB два M-системы над алфавитами A и Bсоответственно, причем A ∩ B = ∅, и m — символ не входящий нив A, ни в B .Построим систему Σ над алфавитом A ∪ B ∪ {m}, включающуювсе подстановки из ΣA и ΣB , и применим ее к цепочке видаX = XAmXB , где XA ∈ A+ и XB ∈ B+.Очевидно, что процесс применения Σ к X сведется кпаралелльному и независимому применению систем ΣA и ΣB кподцепочкам XA и XB соответственно, так как символ m невходит ни в одну подстановку в Σ. Исходя из таких соображений,будем называть символ m (непроницаемой) мембраной.Таким образом, описанный способ объединения системподстановок позволяет реализовать в рамках одного автомата дваи более разных поведения, например, упорядоченное инеупорядоченное.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 26 / 48

Page 32: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Непроницаемая мембрана

Σ =

0λ↔ λ0,Rλ→ λR,RX → LX ,λL→ Lλ,XL→ XR.

→ λ; → X ; → 0;→ L,R .

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 27 / 48

Page 33: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Полунепроницаемые мембраны

Принципиальный недостаток предложенной выше схемызаключается в том, что отдельные подцепочки, разделенныемембранами, никак не влияют друг на друга.Чтобы организовать их взаимодействие, добавим в систему Σдополнительный набор подстановок ΣC вида

αmβ → αmβ,

где α, α ∈ A∗, β, β ∈ B∗.При наличии хотя бы одной нетривиальной подстановки такоговида, естественно будет говорить о символе m как ополунепроницаемой мембране. Такой символ обеспечиваетвзаимодействие символов из правой и левой подцепочек, но невсех подряд, а только тех, которые указаны явно в ΣC .

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 28 / 48

Page 34: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Полунепроницаемая мембрана

Σ =

0λ↔ λ0,1λ↔ λ1,01↔ 10,λX0→ 0Xλ.

→ λ; → X ; → 0;→ 1.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 29 / 48

Page 35: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Моделирование биологических систем

Использование мембран открываетвозможность моделированияпростейших биологических систем —клеток, окруженных мембраной ипомещенных в некоторую среду. Вкачестве простейшего примераиспользования мембран, рассмотримM-систему, моделирующую ростклетки, потребляющей изокружающей среды специальныепитательные символы a, используямембрану, представленнуюсимволами m:

Σ =

{aλ→ λa, λa→ aλ,ma→ Am, am→ mA.

→ λ; → m; → a;→ A.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 30 / 48

Page 36: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Расширения M-систем

Относительным недостатком рассмотренной выше стандартноймодели M-систем является ее одномерность.Вместе с тем, полноценное моделирование естественныхпроцессов (физических, химических, биологических) должновыполняться как минимум в двумерном пространстве, а в идеале,даже в трехмерном.Далее мы рассмотрим два простых обобщения марковскихсистем, позволяющих выйти за пределы одного измерения:

I двумерные M-системы;I M-системы на графах.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 31 / 48

Page 37: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Двумерные M-системы

Будем представлять пространство M-системы в видепрямоугольной решетки (матрицы) размера n ×m, в каждуюячейку которой помещен символ заданного алфавита.Состояние M-системы меняется со временем по следующемуалгоритму: на каждом шаге эволюции с вероятностью p = 1/2выбирается способ разбиения матрицы символов на цепочки —вертикально (на столбцы) или горизонтально (на строки), послечего, каждая цепочка преобразуется вышеописанным(одномерным) образом.По умолчанию предполагается ориентация слева-направо длястрок матрицы и сверху-вниз — для столбцов.Основное требование к набору подстановок такого рода систем —каждая подстановка должна сохранять длину цепочки.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 32 / 48

Page 38: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Разбиение матрицы

а) разбиение на строки б) разбиение на столбцы

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 33 / 48

Page 39: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Двумерная диффузия

Σ ={

aλ↔ λa.

→ λ; → a.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 34 / 48

Page 40: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Двумерная диффузия

Σ ={

aλ↔ λa.

→ λ; → a.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 34 / 48

Page 41: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Дендритный рост

Σ =

{aλ↔ λa,ax → xx .

→ λ; → a; → x .

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 35 / 48

Page 42: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Дендритный рост

Σ =

{aλ↔ λa,ax → xx .

→ λ; → a; → x .

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 35 / 48

Page 43: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Дендритный рост

Σ =

{aλ↔ λa,ax → xx .

→ λ; → a; → x .

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 35 / 48

Page 44: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Модель «хищник–жертва»

Σ =

xλp←→ λx ,

yλp←→ λy ,

xyp←→ yx ,

xλq−→ xx ,

xyq−→ yy ,

yq−→ λ.

p = 0.02, q = 0.1.

→ λ; → x ; → y .

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 36 / 48

Page 45: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Модель «хищник–жертва»

Σ =

xλp←→ λx ,

yλp←→ λy ,

xyp←→ yx ,

xλq−→ xx ,

xyq−→ yy ,

yq−→ λ.

p = 0.02, q = 0.1.

→ λ; → x ; → y .

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 36 / 48

Page 46: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Полунепроницаемая мембрана

Σ =

aλ↔ λa,∗ma→ Amλ,A∗ ↔ ∗A.

→ λ; → a; → m;→ ∗; → A.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 37 / 48

Page 47: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Полунепроницаемая мембрана

Σ =

aλ↔ λa,∗ma→ Amλ,A∗ ↔ ∗A.

→ λ; → a; → m;→ ∗; → A.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 37 / 48

Page 48: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Моделирование вирусов

Σ =

aλ↔ λa,∗ma→ Amλ,A∗ q−→ ∗A,A∗ p−→ AA,Am

p−→ AM,

AMp−→ Aλ,

M → m,λmλ

p−→ λλλ,

∗λ p−→ λλ

Aλp−→ aλ.

p = 0.1, q = 1− p.

→ λ; → a; → m,M;→ ∗; → A.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 38 / 48

Page 49: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Моделирование вирусов

Σ =

aλ↔ λa,∗ma→ Amλ,A∗ q−→ ∗A,A∗ p−→ AA,Am

p−→ AM,

AMp−→ Aλ,

M → m,λmλ

p−→ λλλ,

∗λ p−→ λλ

Aλp−→ aλ.

p = 0.1, q = 1− p.

→ λ; → a; → m,M;→ ∗; → A.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 38 / 48

Page 50: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Алгоритм параллельных подстановок (АПП)

АПП представляет собой систему, аналогичную M-системам.Основой АПП также служит система подстановок, однако схемаих применения отличается: на каждом шаге применяются всеподстановки, которые могут быть применены к текущей цепочке(матрице) — принцип максимального параллелизма.Отсюда возникает проблема конфликтов, которая приводит кнетривиальной задаче составления бесконфликтных систем.Поведение АПП (в отличие от МА) является абсолютнодетерминированным.Классический пример АПП – параллельный двоичный сумматор.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 39 / 48

Page 51: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

АПП: параллельный двоичный сумматор

Система подстановок:

0 00 1

11 0

010

01

→ ; →

Пример работы сумматора:

0 0 0 0 0

0 0 1 0 1

0 1 1 1 1

0 1 0 0 1

5

15

9

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 40 / 48

Page 52: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

АПП: параллельный двоичный сумматор

Система подстановок:

0 00 1

11 0

010

01

→ ; →

Пример работы сумматора:

0 0 0 0 0

0 0 1 0 1

0 1 1 1 1

0 1 0 0 1

5

15

9

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 40 / 48

Page 53: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

АПП: параллельный двоичный сумматор

Система подстановок:

0 00 1

11 0

010

01

→ ; →

Пример работы сумматора:

0 0 0 0 0

0 1 0 1 0

1 0 0 0 0

0 0 0 1 1

10

16

3

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 40 / 48

Page 54: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

АПП: параллельный двоичный сумматор

Система подстановок:

0 00 1

11 0

010

01

→ ; →

Пример работы сумматора:

0 0 0 0 0

0 1 0 1 0

1 0 0 0 0

0 0 0 1 1

10

16

3

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 40 / 48

Page 55: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

АПП: параллельный двоичный сумматор

Система подстановок:

0 00 1

11 0

010

01

→ ; →

Пример работы сумматора:

0 0 0 0 0

0 0 0 0 0

0 1 0 1 0

1 0 0 1 1

10

19

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 40 / 48

Page 56: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

АПП: параллельный двоичный сумматор

Система подстановок:

0 00 1

11 0

010

01

→ ; →

Пример работы сумматора:

0 0 0 0 0

0 0 0 0 0

0 1 0 1 0

1 0 0 1 1

10

19

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 40 / 48

Page 57: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

АПП: параллельный двоичный сумматор

Система подстановок:

0 00 1

11 0

010

01

→ ; →

Пример работы сумматора:

0 0 0 0 0

0 0 0 0 0

0 0 1 0 0

1 1 0 0 1

4

25

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 40 / 48

Page 58: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

АПП: параллельный двоичный сумматор

Система подстановок:

0 00 1

11 0

010

01

→ ; →

Пример работы сумматора:

0 0 0 0 0

0 0 0 0 0

0 0 1 0 0

1 1 0 0 1

4

25

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 40 / 48

Page 59: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

АПП: параллельный двоичный сумматор

Система подстановок:

0 00 1

11 0

010

01

→ ; →

Пример работы сумматора:

0 0 0 0 0

0 0 0 0 0

0 0 0 0 0

1 1 1 0 1 29

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 40 / 48

Page 60: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Параллельный сумматор

Вертикальный шаг:

Σ =

11 0.5−−→ 0∗,11 0.5−−→ ∗0,01→ 10.

Горизонтальный шаг:

Σ =

{0∗ → 10,1∗ → ∗0.

→ 0; → 1; → ∗.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 41 / 48

Page 61: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Параллельный сумматор

Вертикальный шаг:

Σ =

11 0.5−−→ 0∗,11 0.5−−→ ∗0,01→ 10.

Горизонтальный шаг:

Σ =

{0∗ → 10,1∗ → ∗0.

→ 0; → 1; → ∗.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 41 / 48

Page 62: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Параллельный сумматор

Вертикальный шаг:

Σ =

11 0.5−−→ 0∗,11 0.5−−→ ∗0,01→ 10.

Горизонтальный шаг:

Σ =

{0∗ → 10,1∗ → ∗0.

→ 0; → 1; → ∗.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 41 / 48

Page 63: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

M-системы на графах

Альтернативный вариант построения нелинейных M-систем —соединение отдельных символьных цепочек в графоподобнуюструктуру.Такая M-система представляет собой набор символьных цепочек,каждая из которых развивается по стандартным правилам дляодномерных M-систем.Информационная взаимосвязь между цепочками реализуется спомощью механизма общих точек. Назовем знакоместом пару,содержащую идентифкатор цепочки и номер символа в этойцепочке. Тогда, общей точкой будет называться любоеподмножество знакомест, размер которого больше одного.Изменение любого знакоместа, т.е. запись в него нового символа,приводит к тому, что этот же символ записывается и во всеостальные знакоместа той же общей точки.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 42 / 48

Page 64: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Эволюция графовых M-системы

Таким образом, структура описанной M-системы может бытьпредставлена графом, в котором вершинами являются всезнакоместа системы, и имеется два типа (направленных) ребер:одни ребра связывают символы в каждой цепочке в линейныйподграф, вторые — соединяют вершины принадлежащие однойобщей точке.Эволюция такой системы выполняется по следующей схеме: накаждом шаге в случайном порядке перебираются все цепочки,каждая цепочка преобразуется стандартным образом согласносистеме подстановок, если эта цепочка содержит какие-тосимволы из общих точек, то производится обновлениесоответствующих символов в других цепочках.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 43 / 48

Page 65: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Моделирование дорожного движения

В качестве простого примера рассмотрим систему,моделирующую дорожное движение со светофором.Дорога представляется цепочкой символов видаBλλ . . . λLλ . . . λλE , где B — источник, генерирующий машины(символы c), λ — пустой участок дороги, L — светофор, которыйможет находится в двух состояниях {R,G}, E — сток,поглощающий машины.Движение моделируется следующим набором подстановок:

Σ =

p1−→ Bc — генерация машины,cλ

p2−→ λc — поглощение машины,cE → λE — движение машины,cGλ→ λGc — проезд на зеленый свет.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 44 / 48

Page 66: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Дорожное движение: светофор

Светофор представляется отдельной цепочкой вида Axλλ . . . λL,эволюция которой описывается следующим набором подстановок:

Σ =

xλ→ λx , xG → yR,λy → yλ, xR → yG ,Ay → Ax .

Эти подстановки определяют движение специального символавправо (x) и влево (y) по цепочке. Когда этот символ доходит доправого конца цепочки, он переключает сигнал L с красного назеленый и обратно.Чем длинее будет длина цепочки, тем больше будет периодработы светофора.Общей точкой данной системы является символ L, которыйразделяется обеими цепочками.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 45 / 48

Page 67: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Дорожное движение: пример

→ λ; → c ; → G ; → R ; → A,B,E ; → x ; → y .

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 46 / 48

Page 68: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Дорожное движение: пример

→ λ; → c ; → G ; → R ; → A,B,E ; → x ; → y .

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 46 / 48

Page 69: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Библиография

1 Н.М. Ершов, Имитационное моделирование с помощьюмарковских систем — Научная конференция «Тихоновскиечтения», Москва, МГУ, 2011.

2 А.А. Марков, Н.М. Нагорный, Теория алгорифмов — М.: Наука,1984.

3 Т. Тоффоли, Н. Марголус, Машины клеточных автоматов — М.:Мир, 1991.

4 S. Achasova, O. Bandman, V. Markova, et al., Parallel SubstitutionAlgorithm. Theory and Application. — Singapore: World Scientific,1994.

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 47 / 48

Page 70: Лекция 4 :: Марковские системыhpc-education.ru/files/lectures/2011/ershov/ershov_2011_slides04.pdf · Лекция 4 :: Марковские системы

Спасибо за внимание!

Ершов Н.М. (ВМК МГУ) Лекция 4 :: Марковские системы ЕМПВ :: 2011 48 / 48