Форма входа

Наша реклама

Помогите сайту просмотрите рекламу

Поиск

Календарь

«  Апрель 2024  »
ПнВтСрЧтПтСбВс
1234567
891011121314
15161718192021
22232425262728
2930

Наш опрос

Оцените мой сайт
Всего ответов: 122

Статистика


Онлайн всего: 1
Гостей: 1
Пользователей: 0




Среда, 24.04.2024, 07:28
Приветствую Вас Гость | RSS
Скорая помощь для студентов
Главная | Регистрация | Вход
Лекция 9


МОДЕЛИРОВАНИЕ СИСТЕМ

Лекция 9

 

Детерминированное и стохастическое моделирование на ЭВМ

 

Лабораторная работа № 4

Словарь модуля

Литература модуля

 

Оглавление модуля

1) Понятие детерминированной системы

2) Моделирование детерминированных систем

3) Анализ результатов моделирования детерминированных систем

4) Причины стохастичности реальных систем

5) Оценка степени стохастичности отдельных факторов и системы в целом

6) Моделирование стохастических процессов и систем

7) Анализ результатов моделирования стохастических систем

8) Особенности имитационного моделирования информационных систем и телекоммуникационных сетей

 

1) Понятие детерминированной системы

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

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

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

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

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

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

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

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

Например, для Call-центра (центра обслуживания телефонных звонков в некоторой организации) событиями могут быть:

- поступление очередного телефонного звонка;

- окончание обслуживания очередного телефонного звонка.

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

Если оператор свободен, то начинается обслуживание звонка, а если занят – то следует отказ в обслуживании (если не предусмотрен буфер ожидания обслуживания).

 

2) Моделирование детерминированных систем

Под термином "детерминированное моделирование" понимается моделирование детерминированных процессов и систем.

Методологии моделирования систем с непрерывным и дискретным изменением состояний во времени серьезно различаются. Эти различия приводят к тому, что:

- состав общераспространенных программных средств для моделирования непрерывных и дискретных во времени процессов – разный (или по крайней мере различаются программы-надстройки к основным пакетам);

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

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

Детерминированные модели могут описываться (задаваться) разными способами. Отметим, в частности следующие варианты:

- аналитические зависимости (той или иной степени сложности) в виде алгебраических или иных выражений;

- в виде графиков и табличных зависимостей;

- с помощью обыкновенных дифференциальных уравнений;

- системами обыкновенных дифференциальных уравнений;

- дифференциальными уравнениями в частных производных;

- системами дифференциальных уравнений в частных производных;

- описание поведения системы в виде некоторых формализованных правил ее перехода от предыдущих состояний к последующим;

-  в виде алгоритмов ее поведения при различных внешних условиях плюс набор внешних условий.

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

3) Анализ результатов моделирования детерминированных систем

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

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

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

Результатом моделирования системы (вычислительного эксперимента над компьютерной моделью системы) может быть:

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

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

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

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

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

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

            Поэтому в ряде случаев вывод информации на дисплей по ходу моделирования программно организуется не на каждом шаге по времени, а, например, на шагах кратных "5", "10", "20", "100" и т.д.

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

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

В рамках программирования задач при моделировании на VBA для цели "затормаживания" может быть использован оператор "wait". Он позволяет указать величину задержки, кратную целому числу секунд (задержки менее 1 сек он не допускает). Такое решение обеспечивает временные задержки вне зависимости от быстродействия компьютера, что может быть существенным, если моделирующую программу предполагается эксплуатировать на ЭВМ с разными уровнями производительности.

Альтернативным способом является использование оператора "timer", который позволяет организовать временную задержку и на нецелое число секунд, в т.ч. и меньшее 1 секунды.

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

4) Причины стохастичности реальных систем

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

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

- максимально возможные диапазоны изменения по каждому из параметров ("от" и "до");

- средние значения параметров;

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

В принципе возможен и иной подход – диапазон изменения задается с заданным "уровнем обеспеченности". Например, вероятность изменения переменной "Р" внутри диапазона от 1.0 до 10.0 составляет 99%, причем внутри этого диапазона возможны различные статистические распределения. Такой подход может быть целесообразен, если максимально возможное значение параметра находится в области больших значений, а основная масса "реализаций" случайных значений параметра располагается в области небольших значений.

Чаще всего используются следующие статистические распределения случайных значений какого-то параметра:

- равномерное распределение для заданного интервала значений параметра;

- нормальное распределение с заданными параметрами (особенно стандартное нормальное распределение);

- распределение Пуассона.

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

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

Для стандартного нормального распределения максимум приходится на значение х=0, а сама кривая симметрична относительно х=0.

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

При моделировании систем могут использоваться как непрерывные статистические распределения, так и "интервальные". Последние:

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

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

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

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

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

         На практике при анализе экспериментальных распределений параметров по интервалам нередко необходимо решать две задачи:

- выбор распределения, наиболее подходящего для конкретных экспериментальных данных;

- подбор значений параметров для этого распределения.

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

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

Пример. Пуассоновскому распределению обычно соответствует распределение семей в конкретном регионе по интервалам среднедушевых доходов за год (интервалы доходов выбираются равные, причем "разрывов" между этими интервалами не должно быть). Например, первый интервал: 0 -10 тыс.руб; 2-ой – 10-20 тыс. руб. и т.д. Значения на границе интервала обычно относят к нижнему интервалу значений.

Понятно, что для такого распределения:

- значения аргумента (доходов) больше или равны нулю;

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

Решение о том, считать ли какой-то фактор детерминированным или случайным (стохастическим) на практике принимается исследователем в зависимости от целей моделирования задачи и того, насколько случайны значения этого фактора. Если "степень случайности" невелика, то часто возможна трактовка случайного фактора как детерминированного (с усредненным значением).

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

В общем случае в модели системы часть факторов может быть детерминированными, а часть (один или более) стохастическими. Такие модели систем трактуются как стохастические.

В учебной и профессиональной литературе по теме данной лекции часто употребляется и термин "стохастический процесс", т.е. процесс, имеющий в своем поведении случайную составляющую.

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

5) Оценка степени стохастичности отдельных факторов и системы в целом

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

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

Б) Среднеквадратичное отклонение

В) Коэффициент вариации, равный отношению среднеквадратичного отклонения к среднему значению.

Показатели А) и В) – относительные. Они могут выражаться в долях от единицы или в процентах. В этом их значительное преимущество, т.к. могут сравниваться разные параметры.

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

Для указанных двух критериев могут быть приняты границы при превышении которых параметр считается "стохастическим" (эти границы вообще говоря индивидуальны для каждого из параметров и целей моделирования задач).

Если же принятые критерии не превышены, то параметр можно считать детерминированным и брать его величину по "среднему" значению (с учетом оговорки, сделанной выше).

Степень стохастичности системы "в целом" может быть формально оценена следующим образом (эти варианты не единственные):

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

- средней величиной изменчивости по всем учитываемым в модели факторам с использованием критериев А или В (при этом детерминированные факторы считаются имеющими нулевые критерии изменчивости).

6) Моделирование стохастических процессов и систем

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

Когда построение аналитической модели случайного процесса невозможно или трудноосуществимо применяется подход называемый "методом статистических испытаний". Его более распространенное название – "метод Монте-Карло" (по месту расположения известного казино).

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

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

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

Для реализации метода Монте-Карло необходимо использовать тот или иной механизм случайного розыгрыша. В качестве таковых ранее использовались:

- бросание монеток;

- бросание костей;

- использование таблиц случайных чисел.

В настоящее время в связи с широким использованием ПЭВМ эти методы имеют историческое значение (иногда – методическое), а не практическое.

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

В рамках функций рабочего листа MsExcel случайные числа могут быть получены с помощью функции СЛЧИС( ). Просьба обратить внимание, что после того, как Вы сгенерировали  набор случайных чисел, они могут изменяться при каких-то последующих действиях пользователя. Чтобы "зафиксировать" сформированный набор случайных чисел необходимо по стандартным правилам заменить "формулы" на "значения" (через Правка-Копировать-Правка-Специальная вставка-Значения).

В программах на VBA для генерации случайных чисел используется оператор RND( ). Совместно с ним часто используется оператор RANDOMIZE ( ), который позволяет управлять начальным числом, с которого начинается генерация ряда псевдослучайных чисел.

В принципе могут использоваться и специальные подпрограммы пользователя для генерации случайных чисел, если предъя


Copyright MyCorp © 2024