Студопедия

КАТЕГОРИИ:



Мы поможем в написании ваших работ!

Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Мы поможем в написании ваших работ!

Альтернативные подходы к созданию имитационных моделей


 

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

 

5.1. Параллельное и распределенное моделирование

 

Большинство моделей действуют приблизительно одинаково. Часы модельного времени взаи­модействуют со списком событий, в результате чего определяется, какое событие будет обрабатываться следующим. Часы переводятся на время возникновения этого события, а компьютер выполняет логику события, которая может потребо­вать: обновить переменные, обработать списки очередей и событий, сгенерировать случайные числа и величины, собрать статистику. Данная логика выполняется в соответствии с модельным временем возникновения событий, то есть в этих слу­чаях моделирование является последовательным.

В последние годы компьютерная технология позволила связывать отдельные компьютеры или процессоры в параллельную или распределенную вычислитель­ную среду. Например, несколько относительно недорогих мини-компьютеров (или даже микрокомпьютеров) могут быть связаны друг с другом с помощью сети, а в более крупном компьютере можно разместить несколько процессоров, которые будут работать как сами по себе, так и во взаимодействии друг с другом. Такая вы­числительная среда позволяет распределять различные части задачи между от­дельными процессорами, работающими одновременно или параллельно, и таким образом уменьшать общее время, необходимое для решения данной задачи. Конеч­но, такая возможность во многом зависит от сути самой задачи, а также от доступ­ного компьютерного оборудования и программного обеспечения. В настоящее время распределенная и параллельная обработка используется во многих облас­тях, например при оптимизации и проектировании баз данных.

Существует много способов разделить динамически моделируемые системы на части, то есть распределить работу между различными процессорами. Пожалуй, самый прямой способ — это распределение отдельных «функций поддержки» (на­пример, генерирования случайных чисел, генерирования случайных величин, об­работки списка событий, обработки списков и очередей, а также сбора статисти­ки) по различным процессорам. Логическое выполнение моделирования все же остается последовательным, однако теперь «главная» моделирующая программа может передавать выполнение функций поддержки другим процессорам и продолжать свою работу.



Другой способ распределения имитационной модели между различными про­цессорами — декомпозиция модели на отдельные подмодели, которые выполняют­ся несколькими процессорами. Например, производственное оборудование очень часто моделируется как сеть взаимосвязанных станций обслуживания, каждая из них представляет отдельный тип операций. Отдельные подмодели (или их группы) распределены между различными процессорами, и каждый из них моделирует свою часть системы. Необходимость обеспечивать соответствую­щие логические отношения между подмоделями предусматривает обмен инфор­мацией между процессорами. В примере с производственным оборудованием это происходит, когда деталь покидает одну станцию и переходит к другой станции, моделируемой на другом процессоре. Но не следует забывать о необходимости со­блюдать правильную временную последовательность выполнения операций, то есть о синхронизации обработки подмоделей различными процессорами для пра­вильного представления общих действий модели.Одно из основных преимуществ такого вида распределенного моделирования заключается в отсутствии глобаль­ных часов модельного времени и полного списка событий. Поскольку обработка списка событий при традиционном имитационном моделировании может занять много времени, возможность выполнения программы без списка событий — весь­ма привлекательная идея. Место часов модельного времени и спи­ска событий занимает система для передачи сообщений между процессорами, где каждое сообщение содержит «отметку времени». Недостаток такого метода за­ключается в том, что при моделировании может возникнуть тупик — два процес­сора будут вынуждены ожидать сообщения друг от друга для продолжения работы (даже если в реальной моделируемой системе такое не произойдет). Аналогичная ситуация может привести к остановке моделирования, поэтому должен приме­няться метод нахождения и устранения тупиков (или возможность их избегать).

Другая концепция, связанная с распределением подмоделей между параллель­ными процессорами, известна как концепция виртуального времени, реализован­ная через механизм изменения шкалы времени. Выше указывалось, что каждый процессор моделирует свою часть системы по времени, но не ожидает получения сообщений от других процессоров, обладающих возможностью рабо­тать одновременно с ним, хотя и с различной скоростью. Такое ожидание неизбеж­но при описанном подходе с передачей сообщений. Если подмодель, создаваемая отдельным процессором, получает сообщение, которое она должна была получить ранее (и оно потенциально влияет на ее действия с того момента времени), для этой подмодели выполняется откат путем возвращения ее времени к более ран­нему моменту получения сообщения. Например, подмодель Б моделировалась до момента времени 87, и в это время поступило сообщение от подмодели А, которое модель Б должна была получить в момент времени 61. Тогда часы для подмодели переводятся назад на момент времени 61, а моделирование подмодели Б между мо­ментами времени 61 и 87 отменяется, поскольку без учета сообщения от момента времени 61 оно могло быть выполнено неправильно. При этом к отмененной части моделирования могут относиться сообщения другим подмоделям, теперь каждое из них аннулируется посредством отправки соответствующего антисообщения. Антисообщения, в свою очередь, могут генерировать вторичные откаты в полу­чающих подмоделях и т. д. Подход, когда, во-первых, работа, выполненная между моментами времени 61 и 87, утрачивается, а во-вторых, в связи с откатом модели­рования возникают дополнительные расходы, может показаться неудачным. Од­нако при этом процессоры все время заняты моделированием (за исключением времени отката), вместо того чтобы бездействовать в ожидании, сообщения перед дальнейшим «правильным» продвижением моделирования по времени. В стохасти­ческом моделировании нельзя точно определить, понадобится ли откат, поэтому механизм изменения шкалы времени называют «рулеткой». Его недостаток заклю­чается в возникновении расходов на дополнительную память и обработку возмож­ных откатов, а преимущество состоит в том, что откаты могут быть редкими, и все процессоры будут продолжать продвижение вперед в моделировании. Более того, при использовании механизма изменения шкалы времени не появляются тупики. Вопросы разработки и оценки распределенной обработки при моделировании активно исследуются. Однако уже теперь ясно, что, насколько удачным окажется тот или иной метод (и будет ли он работать вообще), зависит от структуры и пара­метров модели, а также от доступной компьютерной среды. Например, если мо­дель можно поделить на подмодели, слабо связанные между собой (в частности сеть очередей, в которой требования редко переходят из одной очереди в другую), тогда любая из схем распределения моделирования, описанных выше, может пре­доставлять некоторые преимущества.



<== предыдущая лекция | следующая лекция ==>
Одноканальная СМО с ожиданием | Непрерывное моделирование

Дата добавления: 2014-01-04; Просмотров: 709; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



ПОИСК ПО САЙТУ:


Рекомендуемые страницы:

Читайте также:
studopedia.su - Студопедия (2013 - 2021) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление
Генерация страницы за: 0.005 сек.