Федеральное Государственное Образовательное Учреждение Высшего Профессионального Образования Ставропольский Государственный Аграрный Университет Лекция 3 на тему «Математические методы и модели» по дисциплине «Имитационное моделирование экономических процессов»
Вопросы: 1. Аналитические методы моделирования 2. Имитационные методы моделирования 3. Проблемы применения имитационного моделирования 4. Математические модели систем Контрольные вопросы
1. Аналитические методы моделирования Необходимость изучения количественных и качественных изменений исследуемых систем обусловило разработку и применение мощного математического аппарата для целей моделирования. На основе математического аппарата был создан целый класс методов моделирования, называемых аналитическими. Аналитические методы позволяют получить характеристики системы как некоторые функции параметров ее функционирования. Таким образом, аналитическая модель представляет собой систему уравнений, при решении которой получают параметры, необходимые для оценки системы (время ответа, пропускную способность и т.д.).
2. Имитационные методы моделирования С развитием вычислительной техники широкое применение получили имитационные методы моделирования для анализа систем, преобладающими в которых являются стохастические воздействия. Известный американский ученый Роберт Шеннон дает следующее определение: "Имитационное моделирование есть процесс конструирования модели реальной системы и постановки экспериментов на этой модели с целью либо понять поведение системы, либо оценить (в рамках ограничений, накладываемых некоторым критерием или совокупностью критериев) различные стратегии, обеспечивающие функционирование данной системы."
Имитационное моделирование как особая информационная технология состоит из следующих основных этапов 1. Структурный анализ процессов. Проводится формализация структуры сложного реального процесса путем разложения его на подпроцессы, выполняющие определенные функции и имеющие взаимные функциональные связи согласно легенде, разработанной рабочей экспертной группой. Выявленные подпроцессы, в свою очередь, могут разделяться на другие функциональные подпроцессы. Структура общего моделируемого процесса может быть представлена в виде графа, имеющего иерархическую многослойную структуру. В результате появляется формализованное изображение имитационной модели в графическом виде.
Структурный анализ особенно эффективен при моделировании экономических процессов, где (в отличие от технических) многие составляющие подпроцессы не имеют физической основы и протекают виртуально, поскольку оперируют с информацией, деньгами и логикой (законами) их обработки. 2. Формализованное описание модели. Графическое изображение имитационной модели, функции, выполняемые каждым подпроцессом, условия взаимодействия всех подпроцессов и особенности поведения моделируемого процесса (временная, пространственная и финансовая динамика) должны быть описаны на специальном языке для последующей трансляции. Для этого существуют различные способы:
описание вручную на языке типа GPSS, Pilgrim и даже на Visual Basic. Последний очень прост, на нем можно запрограммировать элементарные модели, но он не подходит для разработки реальных моделей сложных экономических процессов, так как описание модели средствами Pilgrim компактнее аналогичной алгоритмической модели на Visual Basic в десятки-сотни раз; автоматизированное описание с помощью компьютерного графического конструктора во время проведения структурного анализа, т.е. с очень незначительными затратами на программирование. Такой конструктор, создающий описание модели, имеется в составе системы моделирования в Pilgrim.
3. Построение модели (build). Обычно это трансляция и редактирование связей (сборка модели), верификация (калибровка) параметров. Трансляция осуществляется в различных режимах: в режиме интерпретации, характерном для систем типа GPSS, SLAM-II и ReThink; в режиме компиляции (характерен для системы Pilgrim). Каждый режим имеет свои особенности. Режим интерпретации проще в реализации. Специальная универсальная программа-интерпретатор на основании формализованного описания модели запускает все имитирующие подпрограммы. Данный режим не приводит к получению отдельной моделирующей программы, которую можно было бы передать или продать заказчику (продавать пришлось бы и модель, и систему моделирования, что не всегда возможно).
Режим компиляции сложнее реализуется при создании моделирующей системы. Однако это не усложняет процесс разработки модели. В результате можно получить отдельную моделирующую программу, которая работает независимо от системы моделирования в виде отдельного программного продукта. Верификация (калибровка) параметров модели выполняется в соответствии с легендой, на основании которой построена модель, с помощью специально выбранных тестовых примеров. 4. Проведение экстремального эксперимента для оптимизации определенных параметров реального процесса.
3. Проблемы применения имитационного моделирования Применение имитационного моделирования целесообразно при наличии определенного условия. Эти условия определяет Р. Шеннон: Не существует законченной математической постановки данной задачи, либо еще не разработаны аналитические методы решения сформулированной математической модели. К этой категории относятся многие модели массового обслуживания, связанные с рассмотрением очередей. Аналитические методы имеются, но математические процедуры столь сложны и трудоемки, что имитационное моделирование дает более простой способ решения задачи. Кроме оценки определенных параметров, желательно осуществить на имитационной модели наблюдение за ходом процесса в течение определенного периода.
Дополнительным преимуществом имитационного моделирования можно считать широчайшие возможности его применения в сфере образования и профессиональной подготовки. Разработка и использование имитационной модели позволяет экспериментатору видеть и "разыгрывать" на модели реальные процессы и ситуации. Первая проблема, которая касается и аналитических методов моделирования, состоит в нахождении "золотой середины" между упрощением и сложностью системы. По мнению Шеннона искусство моделирования в основном состоит в умении находить и отбрасывать факторы, не влияющие или незначительно влияющие на исследуемые характеристики системы. Нахождение этого "компромисса" во многом зависит от опыта, квалификации и интуиции исследователя.
Если модель слишком упрощена и в ней не учтены некоторые существенные факторы, то высока вероятность получить по этой модели ошибочные данные, с другой стороны, если модель сложная и в нее включены факторы, имеющие незначительное влияние на изучаемую систему, то резко повышаются затраты на создание такой модели и возрастает риск ошибки в логической структуре модели. Поэтому перед созданием модели необходимо проделать большой объем работы по анализу структуры системы и взаимосвязей между ее элементами, изучению совокупности входных воздействий, тщательной обработке имеющихся статистических данных об исследуемой системе.
Вторая проблема заключается в искусственном воспроизводстве случайных воздействий окружающей среды. Этот вопрос очень важен, так как большинство динамических производственных систем являются стохастическими, и при их моделировании необходимо качественное несмещенное воспроизведение случайности, в противном случае, результаты, полученные на модели, могут быть смещенными и не соответствовать действительности. Существует два основных направления разрешения этой проблемы: аппаратная; программная (псевдослучайная) генерация случайных последовательностей. При аппаратном способе генерации случайные числа вырабатываются специальным устройством. В качестве физического эффекта, лежащего в основе таких генераторов чисел, чаще всего используются шумы в электронных и полупроводниковых приборах, явления распада радиоактивных элементов и т.д.
Недостатками аппаратного способа получения случайных чисел является отсутствие возможности проверки (а значит гарантии) качества последовательности во время моделирования, а также невозможности получения одинаковых последовательностей случайных чисел. Программный способ основан на формировании случайных чисел с помощью специальных алгоритмов. Этот способ наиболее распространен, так как не требует специальных устройств и дает возможность многократного воспроизведения одинаковых последовательностей. Его недостатками являются погрешность в моделировании распределений случайных чисел, вносимую по причине того, что ЭВМ оперирует с n-разрядными числами (т.е. дискретными), и периодичность последовательностей, возникающую в силу их алгоритмического получения. Таким образом, необходима разработка методов улучшения и критериев проверки качества генераторов псевдослучайных последовательностей.
Таким образом, необходима разработка методов улучшения и критериев проверки качества генераторов псевдослучайных последовательностей. Третьей наиболее сложной проблемой является оценка качество модели и полученных с ее помощью результатов (этап проблема актуальна и для аналитических методов). Адекватность моделей может быть оценена методом экспертных оценок, сравнением с другими моделями (уже подтвердившими свою достоверность), по полученным результатам. В свою очередь, для проверки полученных результатов часть из них сравнивается с уже имеющимися данными.
4. Математические модели систем Важным этапом моделирования является создание математической модели исследуемой системы. На базе математической модели происходит анализ характеристик системы, при компьютерном моделировании на основе математической модели создается алгоритм программ для получения информации о поведении системы. Формальное описание объекта исследование необходимо также для взаимопонимания между специалистами разных областей, объединенных для решения какой-либо глобальной задачи. В общем случае математическую модель любой динамической системы можно представить в следующем виде:
где - совокупность входных воздействий на систему, - совокупность внутренних параметров системы, - совокупность выходных характеристик системы, F - закон функционирования системы.
При построении математических моделей процессов функционирования систем можно выделить следующие основные подходы: непрерывно-детерминированный; дискретно-детерминированный; дискретно-стохастический; непрерывно-стохастический; Сетевой; обобщенный (или универсальный). Соответственно этим подходам были разработаны типовые математические схемы создания моделей. 1. Непрерывно-детерминированный подход использует в качестве математических моделей системы дифференциальных уравнений.
Например, процесс малых колебаний маятника описывается обыкновенным дифференциальным уравнением: где m, l - масса и длина подвеса маятникаl; g - ускорение свободного падения; - угол отклонения маятника в момент времени t. Простейшую систему автоматического управления можно представить в следующем виде: Управляющ ая система Объект управления x(t) h'(t) y(t)
Разность между заданными yзад(t) и действительным y(t) законами изменения управляемой величины есть ошибка управления h'(t)=yзад(t)-y(t). Если предписанный закон изменения управляемой величины соответствует закону изменения входного (задающего) воздействия, т.е. x(t)=y(t), то h'(t)=x(t)-y(t).Принцип обратной связи (основной принцип систем автоматического управления): приведение в соответствие выходной переменной y(t) ее заданному значению используется информация об отклонении h'(t) между ними. Задачей системы автоматического управления является изменение выходных сигналов согласно заданному закону с определенной точностью (с допустимой ошибкой).
2. Дискретно-детерминированный подход реализуется с помощью математического аппарата теории автоматов. Система представляется в виде автомата, перерабатывающего дискретную информацию и меняющего свои внутренние состояния лишь в допустимые моменты времени. Математической моделью при этом подходе является конечный автомат, характеризующийся конечным множеством X входных сигналов, конечным множеством Y выходных сигналов, конечным множеством Z внутренних состояний, начальным состоянием Z0 Z; функцией переходов g(z,x); функцией выходов v(z,x). Автомат функционирует в дискретном автоматном времени, моментами которого являются такты (примыкающие друг к другу равные интервалы времени, каждому из которых соответствуют постоянные значения входного и выходного сигналов и внутренние состояния).
Работа конечного автомата происходит по следующей схеме: в каждом t-м такте на вход автомата, находящегося в состоянии z(t), подается некоторый сигнал x(t), на который он реагирует переходом в (t+1)-м такте в новое состояние z(t+1) и выдачей некоторого выходного сигнала. Различают автоматы с памятью (имеют более одного состояния) и автоматы без памяти (обладают одним состоянием), синхронные ("считывает" входные сигналы в моменты времени, которые определяются синхронизирующими сигналами) и асинхронные (считывают входной сигнал непрерывно) автоматы.
Существует несколько способов задания работы F- автоматов, но наиболее часто используются: табличный; графический; матричный. 3. Дискретно-стохастический подход использует в качестве математического аппарата вероятностные автоматы, которые можно определить как дискретные потактные преобразователи информации с памятью, функционирование которого в каждом такте зависит только от состояния памяти в нем и может быть описано статистически. Для такого автомата характерно задание таблицы вероятностей перехода автомата в некоторое состояние и появления некоторого выходного сигнала в зависимости от текущего состояния и входного сигнала.
4. Непрерывно-стохастический подход применяется для формализации процессов обслуживания. Этот подход наиболее известен ввиду того, что большинство производственных (и не только производственных - экономических, технических и т.д.) систем по своей сути являются системами массового обслуживания. Типовой математической схемой моделирования таких систем являются Q-схемы. В обслуживании можно выделить две элементарные составляющие: ожидание обслуживания и собственно обслуживание, а в любой системе массового обслуживания можно выделить элементарный прибор. Соответственно в этом приборе выделяют накопитель (Н) заявок, ожидающих обслуживания, некоторой емкостью; канал обслуживания (К); потоки событий (последовательность событий, происходящих одно за другим в какие-то случайные моменты времени): поток заявок на обслуживание wi, характеризующийся моментами времени поступления и атрибутами (признаками) заявок (например, приоритетами), и поток обслуживания ui,
характеризующийся моментами начала и окончания обслуживания заявок. Н К ui yi wi П Неоднородность заявок, отражающая процесс в той или иной реальной системе, учитывается с помощью введения классов приоритетов. Различают статические и динамические приоритеты. Статические приоритеты назначаются заранее и не зависят от состояний Q-схемы. Динамические приоритеты возникают при моделировании в зависимости от возникающих ситуаций..
Допустим процесс обслуживания начнется при отсутствии заявок в накопителе. Тогда состояния системы массового обслуживания описываются следующей системой уравнений: где - вероятность нахождения системы в состоянии z n (t) Z в момент времени t, т.е. когда в ней имеется n заявок..
Эти уравнения следуют из того, что вероятность нахождения в системе n заявок в момент времени (t+ t) равна вероятности нахождения в системе n заявок в момент t, умноженной на вероятность того, что за время t в систему не поступит ни одной заявки и ни одна заявка не будет обслужена, плюс вероятность нахождения в системе (n-1) заявок в момент времени t, умноженная на вероятность того, что за время t поступит одна заявка и ни одна заявка обслужена не будет, плюс вероятность нахождения в системе (n+1) заявок в момент t, умноженная на вероятность того, что за время t одна заявка покинет систему и не поступит ни одной заявки. Вероятность того, что за время t не поступит ни одной заявки и ни одна заявка не покинет систему, равна.
Член, содержащий ( t)2, при составлении дифференциального уравнения опускается. Следовательно, можно записать. Относительно остальных двух членов первого уравнения заметим, что Перенеся влево и устремив t к нулю, получим систему дифференциальных уравнений Относительно остальных двух членов первого уравнения заметим, что Перенеся влево и устремив t к нулю, получим систему дифференциальных уравнений
Найдем выражение для математического ожидания числа заявок, находящихся в накопителе, и среднего времени ожидания заявок в накопителе для стационарного состояния = /
Или, откуда. Следовательно, Математическое ожидание числа заявок, находящихся в системе (приборе),. Колебания числа заявок, ожидающих обслуживания, что можно оценить с помощью дисперсии:.
При этом Следовательно, Математическое ожидание числа заявок, находящихся в накопителе, Среднее время ожидания заявок в накопителе
Наиболее часто для анализа Q-схем используют имитационные методы. В этом случае формализованное описание системы массового обслуживания представляет собой графическое отображение (с соответствующими комментариями) элементарных приборов, клапанов, отражающих наличие управляющих воздействий, и связей между ними. На данный момент существует много программных средств, специализирующихся на создание имитационных моделей на основе Q-схем. Примерами для прикладного применения непрерывно- стохастического подхода могут служить исследования потоков поставок продукции некоторому предприятию, потоков деталей и комплектующих изделий на сборочном конвейере цеха и т.п.
Контрольные вопросы: Какие методы называются аналитическими? В каких случаях целесообразно применение имитационного моделирования? Основные этапы имитационного моделирования как особой информационной технологии? Что является важным этапом моделирования? Как можно представить в общем случае математическую модель любой динамической системы? Какие основные подходы можно выделить при построении математических моделей процессов функционирования систем? Каким образом исследуются аналитически модели систем массового обслуживания?