Главная » Просмотр файлов » Ю. Карпов - Иммитационное моделирование систем с AnyLogic 5

Ю. Карпов - Иммитационное моделирование систем с AnyLogic 5 (1124147), страница 68

Файл №1124147 Ю. Карпов - Иммитационное моделирование систем с AnyLogic 5 (Ю. Карпов - Иммитационное моделирование систем с AnyLogic 5) 68 страницаЮ. Карпов - Иммитационное моделирование систем с AnyLogic 5 (1124147) страница 682019-05-10СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

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

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

Рис. 19.1. Анимация процесса сазовых вычислений Часть И Лримеры моделей для равличнык областей и менения Класс сообщений Мевеаде Сообщения, которыми обмениваются машины, не несут никакой информации, однако они должны иметь номер адресата, чтобы посылка была адресной. Для отображения в анимации сообщения, передающегося от одной машины к другой, в сообщении хранится также и номер отправителя.

Класс сообщений мевваяе определен с полями воиксе и гтевсьпасьоп, Модель вычислителя Активный объект масььле включает две переменные: с (счетчик посланных и полученных сообщений) и ьавесо1ок (этот цвет показывает в анимации состояние машины в базовых вычислениях: активное оно либо пассивное). В поле Дополнительный код класса окна Код определены также следующие параметры: указатель на корневой объект омлет, число машин в модели и, номер этого экземпляра в массиве машин т, а также радиус а окружности, на которой будут в анимации располагаться изобрвкения машин. Все эти параметры будут определены в корневом объекте, они недоступны из класса масньле и могут быть определены только после компиляции.

Поэтому значения всех параметров получаются в поле Код инициализации этого активного объекта, когда станет известным корневой объект сипак. Объект масмьле имеет один стейтчарт с именем еаьл, который моделирует поведение машины в базовых вычислениях (рис. 19.2). Рис. 19.2. Стейтчерт, определяющий алгоритм базовых вычислений Стейтчарт имеет два состояния, активное нокиьпя, которым моделируется обработка машиной очередной порции информации, и пассивное м1е. Ясно, что для нашей цели работу машины нал очередной порцией вычислений можно смоделировать просто задержкой. Поэтому из рабочего состояния Глава 19. Информатика и комм никация зэк машина может перейти в пассивное по истечении таймауга раесеааьавтьае (переход е).

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

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

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

Модель среды передачи сообщений базового алгоритма ( СЬаппе!) Активный объект сиааае1 имеет порт, через который принимаются и посылаются сообщения типа иеаааде, а также динамический таймер. В качестве своего единственного параметра таймер имеет соабшение этого типа. Каждый раз, как только порт канала принимает сообшение, с ним связывается новый экземпляр таймера, который устанавливается на срабатывание по таймауту сиааае1петау. По истечении таймаута это сообшение отправляется через этот же порт всем объектам, с которыми этот порт соединен, т.

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

Порты машин соединены с портом канала. Параметры, определенные в этом объекте, используются как параметры экспоненциальных распределений, генерирующих случайные времена обработки порции вычислений, задержки СООбщсинй И т. П. В КаЧЕСтас арГуМЕНта фуНКМИИ еирппепега1() Задастея средняя частота наступления события, которал обратна среднему интервалу времени между событиями. Янимация Анимация в этой модели играет определяющу)о раль не только при проведении компьютерного эксперимента, но н для понимания функционирования системы (в данном случае — сложного распределенного алгоритма), а также для отладки самой модели. Анимация машины представлена прямоугольником, цвет которого ЬааеС01сх МЕНяЕтСя В ЗаВИСИМОСтИ От СОСтОяНИя МаШИНЫ вЂ” В СтсйтЧартс таьп этот параметр устанавливается в соответствующее значение при входе в каждое из двух состояний.

Прямоугольники всех экземпляров машин в корневом объекте маьп должны располагаться по окружности. Координаты и угол поворота изображения машины определяются номером 1 экземпляра МаШИНЫ. СтатИЧЕСКая фуНКцИя апд1е(1), ОПрсдЕЛЕННая В КОРНЕВОМ ОбЪЕКтЕ, вычисляет угол поворота вектора, направленного на изображение 1-й машины относительно оси Х (например, О-й экземпляр будет помещен на оси У, т. е. вектор к этому прямоугольнику повернут на 90 градусов).

Вычисляется также разворот изображения каждой машины относительно оси. В анимации корневого объекта мсс)е1 отметим технику визуализации базовых сообщений, находящихся в канале. Для этого в поле анимации определены н*н стрелок с координатами начала и конца, вычисляемыми для каждой пары машин (1,х) так, чтобы стрелка была направлена от 1-го прямоугольника к )с-му. Для этого в пале Дополнительный код класса определены четыре функции ьедгпх, ьедьпт, епбх, епс)т, определяющие координаты начала и конца стрелки, направленной от 1-й машины к к-й: с(пиЫе Ьед1пх[ ьпс 1 ) [ хепихп (В-40)"Мапь.сса( апд1е(1|Н) ); соиЬ1е Ьед1пт ( ьпе 1 ) ( сеппхп (я-40)*наСЬ.агп( апд1е(1/и) )) доиЫе епс)х( ьпс и ) ( хееихп (д-40) *Ма еь.

соа ( апд1е (КЪН) ); Глава Ж ИнФо тика и коммуникация ооиЬ1е епс)У< ъпе К ) ( геспгп (В-40)*наеь.е1п( апя1е[КЪИ) ); ФУНКцИя апд1е ОПРЕдЕЛЕНа КаК арИфМЕтИЧЕСКая фуНКцИя От цЕЛОй ПЕРЕ- менной (пдех: иаеь. Рх/2 + (2*вась. Р1/Б! " 1поех Каждая такая стрелка должна быть видима, только если сообщение от 1-й машины к к-й находится в канале. Для управления видимостью в поле Дополиителы(ый код класса определен массив опиау размером и*и, элементы которого вначале равны О, и каждый раз, как 1-я машина посылает базовое сообшение к-й машине (переход сз стейтчарта еаъп активного объекта иаоьгпе, рис. 19.2), соответствующий элемент массива опнау увеличивается на 1. При получении базового сообщения в порт активного объекта масьзпе, соответствуюший элемент массива опиау уменьшается на 1.

Видимость СтрЕЛКИ От МаШИНЫ 1 К МаШИНЕ К уСтаНОВЛЕНа В Егпе, ЕСЛИ СООтВЕтСтВуЮ- ший элемент массива опнау не равен О. 19.1.4. Модель алгоритма распределенного завершения Этот алгоритм строится над базовым алгоритмом, и оба алгоритма работают параллельно. Такую организацию параллельных процессов смоделировать в Апу1.ой(с очень просто. А именно, в каждой машине кроме стейтчарта аеьп, реализу)ошего базовые вычисления системы машин, добавляется новый стейтчарт„работающий параллельно с основным и реализуюший описанный ранее алгоритм.

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

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

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