Лекция 25 при работе с дискретными моделями

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

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

В соответствии с принципом формирования системного времени языки имитационного моделирования можно разбить на языки непрерывного, дискретного и дискретно-непрерывного (комбинированного) представления систем. Области использования языков непрерывного и дискретного языков моделирования практически не пересекаются.

При работе с непрерывными моделями, как правило, интерес представляет не каждый элемент системы, а агрегированные переменные. При этом описание систем сводится к составлению систем дифференциальных и интегро-дифференциальных уравнений, структурных схем, графов связей. С их помощью устанавливается связь между зависимыми и независимыми переменными. В том случае, когда независимые переменные принимают дискретные значения, уравнения являются разностными. Типичным представителем таких языков является язык DYNAMO, в котором поведение системы описывается в терминах рекуррентных разностных уравнений. В «системных часах» непрерывных моделей используется постоянный шаг изменения системного времени (принцип «∆ t»). Продвижение системного времени зависит от численных методов решения дифференциальных уравнений. Обычно шаг изменения системного времени принимается равным шагу интегрирования. При этом динамика модели является дискретным приближением реальных непрерывных процессов.

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

В рамках дискретного представления систем выделяется несколько принципиально различных схем отсчета событий.

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

Представителем этих языков является язык SIMSCRIPT.

Механизм событий служит основой для использования в имитационных моделях таких понятий как работа и процесс.

Работа (действие) – это единичное действие систем по обработке входных данных. Работа характеризуется временем выполнения. Любая работа совершается путем выполнения активностей, которые проявляются в результате свершения событий. Активность – наименьшая единица работы.

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

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

Представителем этих языков является язык CSL.

Языки событий и работ создавались почти параллельно. Несколько позже появились языки процессов. Они возникли на основе универсальных языков (АЛГОЛ, FORTRAN) и рассмотренных выше языков.

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

Представителем этих языков является язык SIMULA.

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

Язык GPSS является одним из наиболее эффективных и распространенных специализированных языков имитационного моделирования сложных дискретных систем.

Таким образом, работу дискретной имитационной модели можно задать:

- определяя изменения состояния моделируемой системы, происходящие в моменты свершения событий (языки событий);

- описывая действия, в которых принимают участие элементы системы (языки работ);

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

 
 

Взаимосвязь между событиями, действиями и процессом можно иллюстрировать рисунком.

Далее появились языки, объединяющие и расширяющие три рассмотренных выше схемы отсчета событий – комбинированные языки.

Комбинированные языки включают в свой состав как непрерывное, так и дискретное представление систем. В них механизмы продвижения системного времени, характерные для этих двух представлений систем, совмещаются. Ярким представителем таких языков является язык GASP, представляющий собой совокупность подпрограмм, часть которых не зависит от структуры моделируемой системы. Состояние системы описывается набором переменных, часть которых изменяется во времени «непрерывно». Законы изменения этих переменных заложены в структуру, объединяющую дифференциальные уравнения и условия, касающиеся этих переменных.

Наряду с языком GASP широкое распространение получил язык SLAM.

Языки имитационного моделирования можно ранжировать:

- по возможностям

- по простоте применения


- по предпочтению пользователей

При использовании языков имитационного моделирования модель создается значительно быстрее, чем в случае применения универсальных алгоритмических языков программирования, и не требуется наличие программистов. Построенная модель обладает свойством концептуальной выразительности, так как используются специальные термины языка предметной области. При всем этом имеют место несколько большие вычислительные затраты на моделирование, необходимость сопровождения дополнительной системы и изучения дополнительного языка моделирования. К тому же модель обладает низкой гибкостью и универсальностью.

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: