Мелкозернистый параллелизм клеточно-автоматных моделей пространственной динамики Лекция 2 Руководитель: д.т.н., проф., Бандман О.Л. Лектор: к.ф.-м.н.,

Slides:



Advertisements
Similar presentations
Английский язык. Настоящее совершенное длительное время.
Advertisements

Астрометрические каталоги К.В.Куимов, ГАИШ МГУ. Определение астрометрического каталога Астрометрический каталог – понятие неопределённое. Например, это.
Linguistic tools Лекция 5. ПОИСКОВЫЕ СИСТЕМЫ: предыстория Библейские индексы и конкордансы 1247 – Hugo de St. Caro – было задействовано 500 монахов для.
Введение в организацию белковой структуры и молекулярное моделирование Основы организации белковой структуры Молекулярная Динамика (MD) Броуновская Динамика.
Мелкозернистый параллелизм клеточно-автоматных моделей пространственной динамики Лекция 3 Руководитель: д.т.н., проф., Бандман О.Л. Лектор: к.ф.-м.н.,
Поиск оптимального набора параметров оптимизаций компилятора Брусенцов Леонид Евгеньевич студент 4 курса ФИТ НГУ Руководители:Илья.
Системы с наследованием. Если систему можно представить в виде : Где - непрерывные функции, то такая система называется системой с наследованием. Математическое.
Дипломная работа Ивановой О.О., группа 545 Научный руководитель: д. ф.-м. н., профессор Терехов А.Н. Генерация кода по диаграмме активностей.
Системы отбора. Условные обозначения (1) (2) (3) (4) (5) (6) (7) Математическое моделирование процессов отбора2.
Веремьёва Е. И.. Радиобиология — это самостоятельная комплексная, фундаментальная наука, состоящая из многих научных направлений, изучающая действие ионизирующих.
Савенко Мария Олеговна, 361 группа Научный руководитель: старший преподаватель В.С.Полозов.
«Основы учения о клетке»
R1R2R3R4R5R6R7R1R2R3R4R5R6R7. Аксиома R 1. В пространстве существуют плоскости. В каждой плоскости пространства выполняются все аксиомы планиметрии.
Астащенко Александр, 445 группа Научный руководитель: В.Г.Шистеров.
Некомпенсаторное агрегирование и рейтингование студентов Авторы: Гончаров Алексей Александрович, Чистяков Вячеслав Васильевич. НФ ГУ ВШЭ 2010 год.
Неотрицательное решение задачи Коши. Нередко постановка задачи требует чтобы фазовые переменные принимали лишь неотрицательные значения. Так, в физических.
Всевоволод Головизнин, MVC – паттерн проектирование, в котором бизнес - логика, управляющая логика и интерфейс разделены на три отдельных компонента.
Математические модели Динамические системы. “Модели” Математическое моделирование процессов отбора2.
Bank ownership and lending behavior Alejandro Micco, Ugo Panizza Politicians and banks: Political influences on government-owned banks in emerging markets.
Определение необходимого уровня запасов на складе.
Учитель математики Кулакова Т.М. МОУ ООШ №15 г.о Новокуйбышевск Самарской области Сентябрь 2011г.
Сохранение суммы фазовых координат. Важный частный случай представляют системы, в которых в течение всего процесса сохраняется постоянной сумма значений.
1 СПбГУ ИТМО, кафедра Компьютерных Технологий ПРИМЕНЕНИЕ АВТОМАТНОГО ПРОГРАММИРОВАНИЯ ДЛЯ ПОСТРОЕНИЯ СИСТЕМ УПРАВЛЕНИЯ БИЗНЕС- ПРОЦЕССАМИ Евгений Андреевич.
ООП Классы – 2. Ссылки Ссылка – еще одно имя объекта. Используйте ссылки вместо указателя. Это более безопасно. Complex c(10,10); Complex c2& = c; c2+=10;
Адаптивный метод распределения SPMD-заданий в грид Паньшенсков Михаил, 545 группа Научный руководитель: Лукичев А.С. Рецензент: Демьянович Ю.К июня.
Блок 3. Семейства белков I. Множественное выравнивание Первый курс, весна 2008, А.Б.Рахманинова.
To the Solution of a Bilinear Optimal Control Problem with State Constrains by the Doubled-Variations Method E.A. Rovenskaya Lomonosov Moscow State University,
Кафедра ЮНЕСКО по НИТ1 Формализация понятия «Алгоритм» Информатика.
Демидов А.В г. Операционные системы Лекция 3 Процессы.
1 Генерация контекстных ограничений для баз данных Выполнил: Жолудев В. Научный руководитель: Терехов А.Н. Рецензент: Иванов А.Н.
Введение в параллельные вычисления. Технология программирования MPI (день третий) Антонов Александр Сергеевич, к.ф.-м.н., н.с. лаборатории Параллельных.
Совместное применение генетического программирования и верификации моделей для построения автоматов управления системами со сложным поведением К. В. Егоров,
МЕХАНИКА Кинематика……………………………………….. Основы динамики……………………………… Взаимодействие тел……………………………
Основы цифровой обработки речевых сигналов. Общая схема процесса речеобразования x[n] – дискретные отсчеты сигнала возбуждения y[n] – дискретные отсчеты.
Growing Neural Gas Method Нейросетевой метод построения неструктурированных адаптивных сеток.
Сравнение различных методов хранения XML в реляционных базах данных и в разных системах. Нгуен Тхань Хуен- 545 группа Руководитель : Б.А. Новиков Рецензент:
Введение в параллельные вычисления. Технология программирования MPI (день второй) Антонов Александр Сергеевич, к.ф.-м.н., н.с. лаборатории Параллельных.
ЛЭТИ'20061 Семантическая классификация JPEG изображений Результаты экспериментального исследования.
Генерация вероятностных автоматов методами Reinforcement Learning Выполнил: Иринёв А. В. Руководитель: Шалыто А. А.
Формантный синтезатор речи. Часть 1. Полюсы и нули – иное понимание Полюс – это пара чисел (B, F), B – ширина форманты, F – частота форманты Нуль – это.
Лобанов Алексей Иванович Основы вычислительной математики Лекция 1 8 сентября 2009 года.
Автор: Новитская О.В.. Об авторе: Н Новитская Ольга Владимировна Студентка Кемеровского Государственного Университета физического факультета 4 курса группы.
Симулятор квантовых вычислений Выполнил: Гедерцев А.С. Руководитель, д.ф.-м.н., профессор: Граничин О.Н.
Диффузия в неограниченном теле. Интеграл по источникам фундаментальное решение уравнения диффузии:
Применение генетического программирования для генерации автомата в задаче об «Умном муравье» Царев Ф.Н., Шалыто А.А. IV Международная научно-практическая.
Взвешенные скелеты для простых многоугольников Дипломная работа студента 544 группы Игнатьевского Сергея Васильевича Научный руководитель: К.В. Вяткина.
Методы интерактивной визуализации динамики жидких и газообразных сред Елена Костикова, 521 гр.
Анализ использования нескольких функций приспособленности для построения автоматов с помощью генетических алгоритмов на примере задачи «Умный муравей 3»
Применение генетических алгоритмов для генерации автоматов Мура и систем взаимодействующих автоматов Мили в задаче об «Умном муравье» А. А. Давыдов, Д.
Применение метода представления функции переходов с помощью абстрактных конечных автоматов в генетическом программировании Царев Ф. Н. Научный руководитель.
Санкт-Петербургский Государственный Университет Математико-Механический факультет Кафедра системного программирования Применение диаграмм двоичных решений.
Диффузия в полуограниченном теле Неизвестная функция должна быть определена из граничных условий.
Анализ и Проектирование качественных приложений Презентация по книге Крэга Лармана.
Методы определения параметров вращения Земли
Применение генетических алгоритмов к генерации тестов для автоматных программ Законов Андрей Юрьевич Научный руководитель: Степанов Олег Георгиевич, к.т.н.,
Методы анализа данных. Статистическая проверка гипотез.
Разработка алгоритмов распознавания текста
ТЕОРИЯ И ПРАКТИКА МНОГОПОТОЧНОГО ПРОГРАММИРОВАНИЯ Тема 5 Некоторые понятия, используемые при разработке параллельных программ Д. ф.- м. н., профессор А.
Демидов А.В г. Операционные системы Лекция 4 Работа с файлами.
Введение в параллельные вычисления. Технология программирования MPI (день пятый) Антонов Александр Сергеевич, к.ф.-м.н., н.с. лаборатории Параллельных.
ВВЕДЕНИЕ В ВЫЧИСЛИТЕЛЬНУЮ МАТЕМАТИКУ Лекция 5 6 октября 2009 ВЫЧИСЛИТЕЛЬНАЯ ЛИНЕЙНАЯ АЛГЕБРА.
9 октября 2004 Поиск статических изображений по содержанию: использование текстового запроса Наталья Васильева
Проверка эквивалентности срединной и линейной осей многоугольника Дипломная работа студента 545 группы Подколзина Максима Валериевича Санкт-Петербургский.
Тема 8. «Векторы на плоскости и в пространстве»
Обработка исключений в C# Единая техника обнаружения ошибок времени выполнения и передачи информации о них.
INFSO-RI Enabling Grids for E-sciencE Управление заданиями в GRID. Н. Клопов ПИЯФ, Гатчина.
Применение графического метода для решения различных математических задач Учитель гимназии №3 Шахова Т. А.
Activity ANDROID CLUB Сегодня  Основные компоненты Android  Activity  Layout для Activity  Создание Activity  Launcher Activity  Activity.
Jokes Jokes Jokes Teacher: Where's your text book? Student: At home. Teacher: What's it doing there? Student: Having a.
Решение типовых расчетных задач по формулам. Определение массовой доли элементов Массовая доля элемента ω(Э) % - это отношение массы данного элемента.
Presentation transcript:

Мелкозернистый параллелизм клеточно-автоматных моделей пространственной динамики Лекция 2 Руководитель: д.т.н., проф., Бандман О.Л. Лектор: к.ф.-м.н., Нечаева О. И. Ассистент: Бессмельцев М.В.

Два подхода при моделировании Классический подход – дифференциальные уравнения Альтернативный подход – дискретное моделирование Клеточный автомат

Основные определения А – алфавит состояний –Например, А B ={0,1}, A R =[0,1], A C ={a,b,c,…} М – множество имен клеток –Например, M={(i,j): i=1,…,N 1, j=1,…,N 2 } Клетка – это пара (а,m), где а  A и m  M Клеточный массив – это множество клеток  ={(а,m): а  A, m  M}

Подстановка Подстановка – это замена одной или нескольких клеток в клеточном массиве на одну или несколько других клеток по заданному правилу. a, m 2 a, m 4 b, m 3 b, m 7 a, m 5 b, m 9 d, m 6 d, m 10 a, m 8 a, m 1 a, m 3  (m 3 ) : {(b,m 3 )}  {(a,m 1 ), (a,m 4 ), (b,m 7 )}  {(a,m 3 )} база контекст база на следующем такте Подстановка должна быть определена для каждой клетки в клеточном массиве

Шаблон соседства Шаблон соседства для клетки (a,m) – это множество имен клеток текущего такта, участвующих в подстановке  (m), т.е. имен клеток базы и контекста: T={m, m 1, m 2, …, m n } Например, T={m 3, m 1, m 4, m 7 } Чтобы не задавать шаблон перебором, вводятся именующие функции. Каждая именующая функция клетки (a,m) указывает на имя одного из соседа этой клетки: Тогда шаблон задается так: T={m,  1 (m),  2 (m), …,  n (m)} a, m 2 a, m 4 b, m 3 b, m 7 a, m 5 b, m 9 d, m 6 d, m 10 a, m 8 a, m 1 a, m 3 m 1 =  1 (m), m 2 =  2 (m), … m n =  n (m)

Пример шаблона соседства M={(i,j): i=1,…,N 1, j=1,…,N 2 }  1 (i,j) = (i,j+1)  2 (i,j) = (i,j-1)  3 (i,j) = (i+1,j)  4 (i,j) = (i+1,j+1)  5 (i,j) = (i+1,j-1)  6 (i,j) = (i-1,j)  7 (i,j) = (i-1,j+1)  8 (i,j) = (i-1,j-1) Шаблон : T={m,  1 (m),  2 (m), …,  8 (m)} - применяется ко всем внутренним клеткам.

Примеры шаблонов соседства u ij

Алгоритм параллельных подстановок Пусть дан шаблон T={m,  1 (m),  2 (m), …,  n (m)} { (a, m), (a 1,  1 (m)), (a 2,  2 (m)), …, (a n,  n (m)) } = S(m)  K(m), где –S(m) – база (клетки, которые будут заменены на следующем такте) –K(m) – контекст (клетки, которые учитываются при замене клеток из базы) Подстановка  (m) : S(m)  K(m)  S’(m) Состояние каждой клетки базы S’(m) есть функция от состояний всех клеток с именами из шаблона Т. Эта функция обычно называется правилом перехода клеточного автомата. Алгоритм параллельных подстановок – это параллельное выполнение подстановок для каждой клетки клеточного массива в каком-либо режиме (синхронный, асинхронный, блочно- синхронный и др.).

Алгоритм параллельных подстановок – это формальная система, позволяющая моделировать процессы в дискретном пространстве и дискретном времени. S. Achasova, O.Bandman, V.Markova, S Piskunov. Parallel Substitution Algorithm. Theory and Applications. World Scientific, 1994.

Игра жизнь u0’=u0’= 1, если (u 0 =0 ) & (  u k = 3) 0, если (u 0 =1) & (  u k 3) M={(i,j): i=1,…,N 1, j=1,…,N 2 }  1 (i,j) = (i,j+1)  2 (i,j) = (i,j-1)  3 (i,j) = (i+1,j)  4 (i,j) = (i+1,j+1)  5 (i,j) = (i+1,j-1)  6 (i,j) = (i-1,j)  7 (i,j) = (i-1,j+1)  8 (i,j) = (i-1,j-1) База S(m) = {(a,m)} Контекст K(m) = { (a 1,  1 (m)), (a 2,  2 (m)), …, (a 8,  8 (m)) }

Обобщенная формальная модель : Алгоритм параллельных подстановок Замечательный пример: Параллельный сумматор многих чисел j i = =

Эволюция клеточного автомата Глобальный оператор Ф(  ) – это применение локальных операторов подстановки ко всем клеткам клеточного массива. Одно применение глобального оператора Ф(  ) – это итерация.  (t) – это клеточный массив на итерации t. Эволюция клеточного автомата:  (0),  (1),...,  (t),...,  (Т) Естественное завершение процесса моделирования: Если  (t) =  (t+1) =…=  (t+n) для некоторого n, то t = T.

Управляющий контекст (контекст 2 рода) Контекст 2 рода – это множество клеток, которое не содержится в , но влияет на результаты работы локального оператора подстановки. K=3  : (rand,(i,j)’)  (k,(i,j)’ ) k= 1, if 0 < rand  1/4 2, if ¼ <rand  1/2 3, if ½ <rand  3/4 4, if ¾ <rand  1 Вероятностный контекст  : (t,m)  (t’,m) t’ = 1, if t(mod2)=1 0, if t(mod2)=0 Тактирующий контекст  : ((i,j),m)  ( ,m)  = 1, if (i,j)  M’ 0, if (i,j)  M’ Маскирующий контекст  : (u 0,u 1,u 2,u 3,u 4 )  (u 3,u 1,u 2,u 0,u 4 ) u1u0u1u0 u2u2 u3u3 u4u4 k  u0u0 u3u3 u4u4 u1u1 u2u2 (i,j)  M

Режимы функционирования КА Синхронный  t=  Асинхронный  t= |M|  Блочно-синхронный (n синхр.стадий)  t= k  Упорядоченный асинхронный  t= |M|  Режим Виртуальный параллелизм t - номер итерации  t = n    - время применения одного локального оператора) Реальный параллелизм Для всех режимов  t  |M|  / P P – число процессоров

Блочно-синхронная диффузия (Марголус) A={0,1}, M = { (i,j) : 200x200 } i,j=even t=even i,j=odd t=odd P=1/2 p=1/2 1  (ij): u t = d(u xx + u yy ) C=d  / h 2 <1/4 C= 3/2

Солитон - одинокая волна, которая - распространяется с постоянной скоростью - сохраняет форму - при столкновении с другим солитоном не меняет ни скорости и ни формы - возникает благодаря нелинейным свойствам среды Уравнение Кортиега-де Фриза (Korteweg-de Vries)  u(t;x)  [u(t;x)] 2  3 u(t;x)  t  x  x 3 = -3-

Солитон t= 0: … t= 6: … t=30: … t=36: … d=12, p=6 d=7,p=2 A 1 ={0,1}, M 1 = {0,1,2,…,i,..,N}  1 : (u,i)  {(u -5,i-5),…(u 5,i+5)}  (u’,i) 1, если u i-5 +,…u i + u i+5 =0(mod2 ), но u i-5 +,…u i + u i+5  0 0 в остальных случаях u’= Режим: упорядоченный асинхронный A 2 =[0,1], M 2 = {0,1,2,..,i’,…,N}  2 : (v,i’)  {(u -r,i-r),…(u r,i+r)}  (v’,i) u’ =  r -r u i 1 2r+1 Режим: синхронный

? 0 Противоречие ! Поведенческая корректность  = {(u,(i,j),(v(i,j+1)}  {(v,(i,j),(u(i,j+1)} Пример некорректного поведения: A={0,1}, M={(i,j)}, синхронный режим j i  (2,2): S’(2,2)={( 1,(2,2))(1(2,3))}  (2,3): S’(2,3)={( 0, (2,3))(1(2,4))} T(2,2)  T(2,3) = (2,3)

Условия корректности КА-алгоритма 1. Непротиворечивость (safeness): На каждом такте к каждой клетке базовой конфигурации может быть применен только один локальный оператор Достаточное условие: 2. Равноправие клеток (fairness) На каждой итерации локальный оператор должен быть применен к каждой клетке и только один раз T(i,j)  T(k,l) =   (i,j),(k,l)  M Классический синхронный - корректный, |S(i,j)| =1 Асинхронный - корректный,   применяется только к одной клетке Синхронный с |S(i,j)| >1 - некорректный и должен быть приведен к блочно-синхронному

Обобщенная формальная модель : Алгоритм параллельных подстановок Замечательный пример: Параллельный сумматор многих чисел j i = =

КА «разделение фаз» A={0,1) M={(i,j): i,j=0,…,200} Synchronous mode of operation 8 1,if u0u0 u1u1 u2u2 u3u3 u4u4 u5u5 u6u6 u7u7 u8u8 u’ 0 1, if  u k >5 or  u k =4 0, otherwise u’= u t =0.2(u xx +u yy ) -0.2(u-0.1)(u-0.5)(u-0.9); Asynchronous mode of operation R Крит. d(0) = 0.5, T=400, d(T)=0.7 t итер = 0, 18сек Крит. D(0)= , T=220, d(T)=1 t итер = 0.19 сек

Содержание курса Первая часть Экскурс в историю развития КА-моделирования Основные понятия и формальная модель клеточного автомата Параллельная реализация клеточно-автоматных алгоритмов Вторая часть Классификация клеточных автоматов –по поведенческим свойствам, –по свойствам процессов, которые они моделируют, –по способам построения КА моделей. Композиция КА-моделей с введением операций на множестве клеточных автоматов. Третья часть Рассмотрение конкретных КА-моделей в гидродинамике, поверхностной химии, биологии, кинетике и синтезе нано систем, и др. Вычислительные свойства клеточных автоматов