Главная » Просмотр файлов » Введение в распределённые алгоритмы. Ж. Тель (2009) (не распознанно)

Введение в распределённые алгоритмы. Ж. Тель (2009) (не распознанно) (1185664), страница 89

Файл №1185664 Введение в распределённые алгоритмы. Ж. Тель (2009) (не распознанно) (Введение в распределённые алгоритмы. Ж. Тель (2009) (не распознанно).pdf) 89 страницаВведение в распределённые алгоритмы. Ж. Тель (2009) (не распознанно) (1185664) страница 892020-08-25СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 89)

9. Анонимные сети9.2. Детерминированные алгоритмыРассмотрим кольцо большего размера, содержащее сегмент S из K + 1 процессов, который обладает следующим свойством. Последний процесс сегмента S(т. е. процесс, расположенный в самом дальнем конце сегмента при его обходепо направлению часовой стрелки) получает на входе точно такое же значение,что и процесс p в ходе вычисления Cx ; обозначим этот процесс символом p0 .При этом i-й по порядку сосед процесса p0 , отстоящий от него против хода часовой стрелки, получает на входе такое же значение, что и i-й по порядку соседпроцесса p, отстоящий от него против хода часовой стрелки, в вычислении C x .Соответствие между процессами сегмента S и процессами рассмотренного ранеекольца с входными данными x представлено на рис.

9.2.Алгоритм A, функционируя на кольце, содержащем сегмент S, допускает вычисление, обладающее следующим свойством. Для каждого i, не превосходящегоK, i-й по порядку сосед процесса p0 , отстоящий от него против хода часовойстрелки, отправляет все те же сообщения, имеющие трассы длины не большеK + 1 − i, которые отправлялись i-м по порядку соседом процесса p, отстоящегоот него против хода часовой стрелки, на протяжении вычисления C x . Обоснуемэто свойство при помощи нисходящей индукции.u@pq u@@x@ur@@usp s ru qq u u Huuur s uup q ueSHHupA usAAuruqup (Процесс p0)Рис. 9.2.

Построение неправильного вычисленияСлучай i = K. Отметим, что K-й по порядку сосед q процесса p0 , отстоящийот него против хода часовой стрелки, имеет то же самое начальное состояние,какое в вычислении Cx имеет K-й по порядку сосед процесса p, отстоящий отнего против хода часовой стрелки; поэтому существует вычисление, в котором qотправляет то же самое множество сообщений с трассами единичной длины.Индуктивный переход.

Предположим, что в некотором вычислении (i + 1) -йпо порядку сосед процесса p0 , отстоящий от него против хода часовой стрелки,отправляет все те же самые сообщения, трассы которых имеют длину, не превосходящую K − i, что и i-й по порядку сосед процесса p, отстоящий от него противхода часовой стрелки, в вычислении Cx . В этом вычислении i-й по порядку соседq процесса p0 , отстоящий от него против хода часовой стрелки, имеет такое женачальное состояние, какое в вычислении Cx имеет i-й по порядку сосед процесса p, отстоящий от него против хода часовой стрелки, и при этом получает то жесамое множество сообщений, трассы которых имеют длину, не превосходящуюK − i. Поэтому существует вычисление, в котором процесс q отправляет такое жемножество сообщений, трассы которых имеют длину, не превосходящую K + 1 − i,337какое в вычислении Cx отправляет i-й по порядку сосед процесса p, отстоящийот него против хода часовой стрелки.В построенном вычислении процесс p0 получает такое же множество сообщений,какое в вычислении Cx получает процесс p, и при этом p0 имеет то же самоеначальное состояние, что и p; следовательно, существует вычисление, в которомp0 завершает работу с результатом resultp0 = a.Построенное нами вычисление «вводит в заблуждение» процесс p0 , заставляяего завершать работу с результатом resultp0 = f(x), хотя на самом деле входныеданные представлены более протяженной последовательностью x 0 , отличной отx.

Вычисление привело бы к правильному ответу, если бы имело место равенство f(x0) = f(x). Чтобы выявить противоречие, рассмотрим кольцо, содержащеесегмент, процессы которого моделируют вычисление C y , а процесс q0 при этомзавершает вычисление с результатом resultq0 = b. Для такого кольца существуетвычисление, в котором два процесса завершают работу с разными значениямиresult; и это является противоречием, ибо самое большее один из них можетбыть правильным.Теорема 9.9.

Функции OR и AND вычислимы детерминированным алгоритмом, завершающим вычисление по признаку окончания обмена сообщениями, с использованием не более N сообщений в случае, когда размеркольца заранее неизвестен.Д о к а з а т е л ь с т в о. Значение функции OR равно true, если на вход хотя бы одного процесса подается true; значение этой функции равно false, еслина вход всех процессов подается false. При инициализации процесс p выполняет присваивание resultp := xp и в том случае, когда xp равно true, отправляетсообщение hyesi своему соседу по ходу часовой стрелки. Когда такое сообщение поступает процессу p, то оно игнорируется, если result p имеет значение true;в противном случае resultp полагается равным true, а само сообщение отправляется далее по часовой стрелке (см.

алгоритм 9.3).var resultpxp: bool;: bool;(* Результат вычисления *)(* Входные данные процесса p *)begin resultp := xp ;if xp is true then send hyesi to Nextp ;receive hyesi ;if resultp is false thenbegin resultp := true ; send hyesi to Nextp endendАлгоритм 9.3. Детерминированное вычисление функции ORРассмотрим вначале случай, когда на вход каждого процесса подается false.Каждый процесс p присваивает переменной result p значение false и начинаетожидать поступления сообщения. Коль скоро ни один процесс не отправляет никакого сообщения, конфигурация, в которой все процессы ожидают поступления338Гл.

9. Анонимные сетисообщения, является заключительной, и, помимо того, в этом случае значениемпеременной resultp является правильный ответ false.Теперь рассмотрим случай, когда есть процесс, на вход которого подаетсяtrue. Процесс p, на вход которого поступает true, присваивает переменной result pзначение true и отправляет следующему процессу сообщение hyesi. Так как каждый процесс отправляет не более одного сообщения (см. описание алгоритма),заключительная конфигурация будет достигнута и в этом случае. Если в заключительной конфигурации выполняется равенство result p = true, то справедливотакже и равенство resultNextp = true, поскольку сообщение, отправленное процессом p будет получено процессом Nextp .

Значит, если resultp = true хотя быдля одного процесса p, то и для каждого процесса p будет выполняться равенствоresultp = true, и поэтому в этом случае алгоритм завершит работу с правильнымответом для каждого процесса.Вычисление функции AND проводится аналогично, но при этом все вхождения true и false следует поменять местами.Частичная осведомленность о размере кольца. В качестве компромиссамежду полной осведомленостью и неосведомленностью о размере кольца можнорассмотреть такую ситуацию, при которой точное значение N неизвестно, но зато известны пределы, в которых оно заключено. Модифицировав доказательства,приведенные в настоящем параграфе, можно показать справедливость следующих утверждений.1.

Не существует детерминированного алгоритма вычисления функции SUM,который был бы корректным для двух колец разного размера.2. Не существует детерминированного алгоритма вычисления функции XOR,который был бы корректным для колец, размер которых задается как четным,так и нечетным числом.3. Если известна верхняя оценка S размера кольца, то функции AND и ORмогут быть вычислены детерминированно с использованием N(S − 1) сообщений.Другие топологии.

Метод воспроизведения можно применять и для другихклассов сетевых топологий, но при этом требуется, чтобы небольшой граф можно было «обернуть» несколько раз вокруг графа большего размер. Такой типотображения одного графа в другой называется покрытием.Алгоритмы вычисления функций на анонимных сетях были построены такжеи для других топологий. Бем и Бодлаендер в работе [25] показали, что детерминированный сбор входных данных возможен на торе размера n × n с использованием O(n3) сообщений, а также, что величина Ω (n3) является нижней оценкойсложности по числу сообщений для некоторых функций, включая AND и OR.Кранакис и Кризанц установили, что сбор входных данных возможен на n-мерном гиперкубе с использованием O(2n n4) битов (см. [121]).9.3.

Вероятностный алгоритм избрания лидераЕсли размер сети известен, то можно построить частично корректный алгоритм избрания, который завершает работу с вероятностью, равной единице, т. е.9.3. Вероятностный алгоритм избрания лидера339относится к типу Лас-Вегас. Поскольку детерминированных алгоритмов не существует (см. теорему 9.5), алгоритм типа Лас-Вегас является наилучшим возможным. Мы приведем также алгоритм проведения выборов на анонимных кольцахнеизвестного размера, предложенный Айтаи и Роде в работе [111] . В основу данного алгоритма положены те же принципы, которые использовались в алгоритмеЧеня—Робертса (алгоритм 7.3), но для его применения потребуются некоторыеизменения.Поскольку в алгоритме Ченя—Робертса предполагается доступность отличительных признаков, всякий (анонимный) процесс p, который выступает в ролиинициатора, прежде всего выбирает отличительный признак id p случайным образом из множества {1, .

. . , N}. Благодаря этому становится возможным проводитьсравнение между маркерами различных процессов, но вместе с тем возникаюти дополнительные трудности, связанные с тем, что несколько процессов могутвыбрать один и тот же отличительный признак. В алгоритме Ченя —Робертсапроцесс узнает, что он получил свой собственный маркер, если отличительныйпризнак маркера совпадает с отличительным признаком самого процесса, и этослужит достаточным условием для того, чтобы процесс стал лидером.Так как несколько процессов могут выбрать один и тот же отличительныйпризнак, встроенный в маркер счетчик передач позволяет процессам распознавать получение их собственных маркеров; процесс p получает свой собственныймаркер, если показатель счетчика переходов равен N.

Характеристики

Тип файла
PDF-файл
Размер
2,78 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6510
Авторов
на СтудИзбе
302
Средний доход
с одного платного файла
Обучение Подробнее