Методы построения моделирующих алгоритмов

Принципы алгоритмизации процессов функционирования сложных систем

МОДЕЛИРУЮЩИЕ АЛГОРИТМЫ

 

План лекции

1. Принципы алгоритмизации процессов функционирования сложных систем.

2. Методы построения моделирующих алгоритмов.

3. Формы представлений логической структуры моделей

4. Пример построения схемы моделирующего алгоритма

 

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

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

Процесс функционирования сложной системы можно рассматривать как последовательную смену ее состояния во времени. Пусть вектор

(t)={(t),(t),..., (t)}

представляет собой полный набор характеристик, описывающих состояние системы в момент времени t. Задачей моделирования является расчет (t) и вычисление ряда величин - показателей эффективности, надежности и др., которые зависят от (t).

В нашем распоряжении имеются соотношения модели, связывающие (t) для различных моментов времени, а также начальные условия, отражающие исходное состояние системы =(0).

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

 

Метод "t".

Пусть требуется изучить поведение системы на промежутке времени (О, Т). Рассмотрим вначале случай детерминированной системы.

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

Выделим специальный счетчик для фиксации текущего времени t счетчик модельного времени. Тогда структура моделирующего алгоритма будет следующей:

1. В начале счетчик времени устанавливается на ноль и вектор полагается равным .

2. К счетчику времени прибавляется(t; пользуясь соотношениями модели, вычисляем(t).

3. Последовательно вычисляем вектор состояния системы в точках

(2t),(3t),...

до тех пор, пока модельное время не превышает Т.

В случае стохастической системы соотношения модели не определяют однозначно значение (t+t), а задают лишь условные распределения вероятностей тех или иных значений (t+t) при известных значениях () для . В начальный момент также известно распределение вектора . В этом случае вычисления сводятся к следующему:

в начальный момент в соответствии с распределением выбирается какое-либо его значение по жребию;

затем модельное время увеличивается на и вычисляется условное распределение при . По этому условному распределению выбирают по жребию;

далее предыдущий шаг повторяется до момента времени T.

 

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

Метод универсален, но неэкономичен по затратам машинного времени.

 

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

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

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

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

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