Курс

:
Лектор:
E-mail:

Распределенные вычислительные модели
Ершов Н.М.
ershovnm@gmail.com

МЕМБРАННЫЕ
ВЫЧИСЛЕНИЯ
Лекция 3

Мотивация

Основная цель – моделирование параллельных
вычислений на клеточном уровне.
Побочная цель – моделирование процессов в
реальных клеточных структурах.
Мембранные вычисления относятся к разделу
естественных вычислительных моделей (Natural
Computing), наряду с искусственными нейронными
сетями, генетическими алгоритмами,
молекулярными компьютерами
(ДНК-компьютеры) и т.п.
Мембранные системы – относительно новая
модель (~10 лет).

МС представляет собой правильную скобочную запись: [ [ ] [ ] [ [ ] ] ].Мембранная структура     Мембранная структура (МС) определяется рекурсивно: 1) [ ] – мембранная структура. 3 5 4 2 1 Мембранная структура 1 2 3 4 5 Представление в виде дерева . то [s1s2…sk] – мембранная структура. например. 2) если s1. Для идентификации отдельных мембран МС каждой из них приписывается метка.s2.…. Относительное расположение мембран внутри любой другой мембраны является несущественным. По сути.sk – мембранные структуры. номер: [1 [2 ]2 [3 ]3 [4 [5 ]5 ]4 ]1.

Мембрана вместе со всеми вложенными в нее другими мембранами называется регионом. заряд: «0» (нейтральный). например.Терминология      Самая внешняя мембрана называется скин-мембраной. Элементарная мембрана – мембрана. «+» (положительный). Область вне скин-мембраны называется средой. «–» (отрицательный). не содержащая в себе других мембран. Элементарные мембраны 3 5 4 2 1 Регион Среда Скин-мембрана . Каждой мембране могут быть приписаны дополнительные атрибуты.

a.). a. a возможно наличие нескольких a b c одинаковых символов (причем b a порядок никак не важен). Обычно под объектами понимаются символы некоторого алфавита или строки символов. В стандартном случае символьных объектов содержимое мембраны трактуется как мультимножество (multiset). Иногда рассматриваются и более экзотические виды объектов. Например. .к. c. множество {a. b} кратко записывается как a3b2c (или b2ca3 и т.д. т. b.Объекты     Каждая мембрана может содержать внутри себя помимо других мембран некоторые объекты.

Если V содержит более одного символа. каждая мембрана имеет свой набор правил. где через обозначено пустое множество. где c – некоторый символ. Частный случай: V . которым мы и ограничимся) имеют вид V U. Если правило имеет вид Vc Uc. Причем. Простейшие правила (для случая мультимножеств. . то такой символ называется катализатором.Эволюция объектов     Содержимое мембран может меняться со временем – эволюционировать согласно специальным правилам. то правило называется кооперативным. где V и U – два мультимножества над заданным алфавитом.

т. правила применяются параллельно. когда к текущему множеству одновременно могут быть применены два (и более) взаимоисключающих правила. т. то. он разрешается вероятностным способом (например. В принципе. что такой шаг выполняется за один момент времени. Для исключения конфликтов в некоторых системах вводится приоритет. Пример: оба правила ab a. Считается.е. но только по отдельности (либо одно. возможно возникновение конфликтов.е. частичное отношение порядка на множестве правил. которые могут быть применены. либо другое).Порядок применения правил     В мембранных вычисления принята жадная стратегия применения правил эволюции: на каждом шаге применяются все правила. бросанием монеты). Если все же конфликт возникает. . a2 b применимы к мультимножеству a2b2. как правило.

Эволюция такой системы показана на рисунке 1.Пример эволюции объектов     Пусть исходное множество имеет вид a7c. Имеется два правила: R1: ca3 cx. используя систему правил R1: a3 x. R2: a z (R1 > R2). Тот же результат. но за один шаг (за один момент времени) можно было бы получить. причем R1 > R2. R2: ca z. a a a ac aa a x x x c x z c aa aa x ca Рисунок 1 a a a a a a c a x c Рисунок 2 x z . Эволюция такой системы показана на рисунке 2.

Метки here обычно не указываются. out here in1 in2 1 2 . вложенный в текущий регион (метка ink). 3) объект перемещается в регион k.Взаимодействие мембран     Объекты в процессе их эволюции могут перемещаться между регионами. 3) V [k U ]k V U (ink). Этот процесс регулируется специальными метками. 2) объект перемещается во внешний (по отношению к текущему) регион (метка out). Обычно допускаются три вида таких перемещений: 1) объект остается в том же самом регионе (метка here). приписываемыми к правилами эволюции. Альтернативные обозначения: 2) [k V ]k [k ]k U V U (out).

аналогичный предыдущему. Начальная конфигурация: [0[1aaaaaaa]1[2]2[3]3]0. R4: [0z]0 a(in3). Правила: R1: [1aaa]1 x(out).Пример взаимодействия     Пример. В результате. R3: [0x]0 a (in2). Эволюция показана на рисунке. a a a a a a a 1 1 2 3 x x z 2 3 a a2 1 a3 . R1 > R 2 R2: [1a]1 z(out). но с переносом символов в отдельные мембраны. в мембране 2 оказывается целая часть от деления на 3. в мембране 3 – остаток.

позволяющих менять в процессе эволюции структуру мембран. Смысл – если в k-ом регионе возникает комбинация V. содержащиеся в данном регионе (и все вложенные мембраны) оказываются во внешнем регионе. Простейшее правило такого типа приводит к уничтожению мембраны. . Обозначение: [kV]k U. то 1) эта комбинация заменяется на U. При этом все символы.Уничтожение мембраны     Существует несколько специальных типов правил. и все ее содержимое оказываются во внешнем по отношению к ней регионе. 2) k-ая мембрана исчезает.

все остальные символы копируются в обе мембраны полностью. причем в первой комбинация V заменяется на U.Деление мембран      Еще одна операция. . Предполагается. Обозначение: [kV]k [kU]k [kW]k. Смысл – при возникновении в k-ом регионе комбинации V происходит деление данной мембраны на две. после чего и выполняется ее деление. что сначала производятся все возможные эволюции внутри мембраны. Простейший случай – деление элементарных мембран. во второй – на W. приводящая к изменению мембранной структуры – деление мембран.

R7: q . R6 > R 7 a a a a a a a d 1 xx 1 1 z q xx z 1 p xx z 1 q xx 1 p x xx 1 1 z q z 1 . R3: [1d]1 [1p]1 [1q]1. Приоритеты: R1 > R2 > R3.Пример эволюции структуры   Рассмотрим систему правил: R1: aaa x. R5: p . R6: xq q. R4 > R5. R4: zp p. R2: a z.

состоящий из алфавита V. При этом. является выходной для заданного входа. либо часть такого мультимножества. мембранной структуры M. пока это возможно. процесс завершается.н. состоящая из т. набора правил R эволюции (с указанием приоритетов). результатом является либо состояние (мультимножество) одной из мембран. Как только возникает ситуация. что никакое правило не может быть применено. …. терминальных символов (часть алфавита V). либо состояние среды. возникающая после останова. Процесс применения правил продолжается до тех пор. Конфигурация. AM для каждого региона (входные данные). .-системы     -системой называется набор. набора мультимножеств A1.

что МС эквивалентны т. Например. 3) HALT – останов программы.н. 2) DEC(a.Алгоритмическая универсальность     Один из основных вопросов в теории мембранных вычислений – являются ли мембранные системы (при тех или иных ограничениях) универсальной алгоритмической моделью. l) – если значение регистра a больше нуля. в которых хранятся целые неотрицательные числа. Для введенных выше типов правил эволюции доказать алгоритмическую универсальность достаточно просто. то уменьшает значение регистра a на 1 и переходит к k-ой команде.е. т. Известно. что такая машина эквивалентна машине Тьюринга. если a = 0. а производится переход к l-ой команде. является алгоритмически универсальной. регистровой машине Минского (Counter Machine). В такой системе имеется конечное число регистров. . можно показать. k. то регистр не меняется. Программа для такой машине состоит из пронумерованной последовательности команд трех типов: 1) INC(a. k) – увеличивает значение регистра a на 1 и переходит к выполнению k-ой команды.

i {1. R2: [i ]i [i ]i[i ]i.2. Правила эволюции МС . прибавляющей содержимое регистра b к регистру a (регистр b при этом обнуляется).2.3} R5: Dr [r ]r.1) 3: HALT Программа для РМ R1: xi [i ]i. b} R6: [r 1]r . r {a. R7: [r ]r . R4: Ir [r1]r. R6 > R7 R8: i–j+ j. R3: [i ]i x.3) 2: INC(a. 1 Db 2+ 3– x1 Ia1 2 3 111 a H b 11 Начальная конфигурация МС 1: DEC(b. R9: i–j+ i. рассмотрим. реализацию простой программы для РМ.Реализация РМ с помощью МС  В качестве примера преобразования РМ МС.

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

Гамильтона. цикл и граф названы в честь ирландского математика У. который впервые определил эти классы. называется гамильтоновым циклом. что задача проверки того. для нее пока не придуман ни один (последовательный) полиномиальный алгоритм решения.е. принадлежит классу NP-полных задач. содержащий каждую вершину графа ровно один раз. т. . Известно. является ли заданный граф гамильтоновым. то такой граф называется гамильтоновым. Гамильтоновы путь. узловые вершины которого символизировали крупнейшие города Земли.Задача о гамильтоновом пути   Гамильтонов путь (или гамильтонова цепь) – путь (цепь). Гамильтонов путь. начальная и конечная вершины которого совпадают. а рёбра – соединяющие их дороги. исследовав задачу «кругосветного путешествия» по додекаэдру. Если в графе имеется гамильтонов путь (или цикл).

Это достигается за счет применения правил: R1: [ Ai] [ AiP1X1] [ Ai+1] (i=1.n).Этап 1: инициализация      Пусть число вершин графа равно n.. A1 A2 A3 A1P1X1 A2P1X1 A3P1X1 1 3 2 Пример графа n=3 A4 . Начальная конфигурация МС имеет вид [ A1] (имеется только один вид мембран). Этот этап выполняется ровно за n элементарных шагов. На первом этапе производится создание начальных вершин различных путей.

Этап 2: Генерация путей    На следующем этапе производится генерация всех путей длины n. R3: [ AiPjXk] [ AiPj+1Xk]. j). исходящих из всех n начальных вершин. j. Этот этап требует n2 элементарных шагов. R4: [ AiP1Xn] [ BiD0]. A1P1X1 B1 A3P1X2 B1B3 A1P1X3 B1B3B1 D0 A1P2X1 A1P3X1 B1 A3P2X2 B1 A3P3X2 B2B3B1 D0 3 2 Пример графа n=3 A1P4X1 B1 A3P4X2 B1B3 A2P2X3 B1B3B2 D0 1 B3B1B3 D0 B2B3B2 D0 B3B2B3 D0 . i. R2: [ AiPjXk] [ AiPj+1Xk] [Bi AjP1Xk+1]. k *1…n+ – если имеется ребро (i. j. j). i. k *1…n+ – если нет ребра (i.

R5: [ Bi+1Di] [ Di+1]. что в графе имеется гамильтонов путь. B1B3B1 D0 B1B3 D1 B1B3B2 D0 B3B2 D1 B3 D 2 D3 1 3 2 Пример графа n=3 Y . т. Общая сложность O(n2). Если после завершения всех процессов хотя бы в одной мембране будет находится символ Y. иначе – нет.е. Этот этап требует также n элементарных шагов. то граф гамильтонов. R6: [ Dn] [Y].Этап 3: Проверка      На третьем (последнем этапе) производится проверка найденных путей: если мембрана содержит все n символов B1 … Bn (ровно n вершин). i *0…n-1]. то это значит. задача поиска гамильтонова пути решается за полиномиальное время.

Предполагается.е.н. . вложенных в среду. После завершения эволюции системы количество и месторасположение терминальных символов рассматривается. Например. Tissue P Systems («тканевые» мембранные системы. Каждая клетка содержит некоторые объекты. что один из символов – пустой). ТМС представляет собой граф. что среда содержит неограниченное количество некоторых символов из алфавита E O. и в клетке i имеется символ x. ТМС). а в клетке j – символ y. Клетки соединяются каналами. Кроме того. Такая система представляет собой набор клеток (одного уровня). символьные мультимножества из алфавита O.Другие типы мембранных систем     Рассматриваются и другие типы мембранных систем. Правила эволюции имеют вид: xi yj. Популярная разновидность МС – т. Такое правило имеет следующий смысл: если i-ая и j-ая клетки связаны каналом. Т. то эти символы меняются местами. на основе МС строятся нейронные сети. как результат работы системы. некоторое подмножество T O объявляется терминальным. например. где x и y – символы из алфавита системы (возможно.

psystems.php/Papers – доступные публикации по теме http://psystems.Ссылки. pdf – Solving NP Complete Problems Using P Systems with Active Membranes: Решение NP-полных задач с помощью активных мембран http://psystems.disco.it/download/Antiport1tP. публикации      http://ppage.pdf – Introduction to Membrane Computing: вводная статья от «изобретателя» мембранных вычислений http://psystems.it/download/MembIntro2004.unimib.unimib.unimib.psystems.disco.eu/ – домашняя страница мембранных систем http://ppage.eu/index.disco.it/download/SolvNPwithActiveMem.pdf – Tissue P Systems with Symport/Antiport Rules of One Symbol Are Computationally Complete: Алгоритмическая полнота «тканевых» мембранных систем .

Sign up to vote on this title
UsefulNot useful