Имитационное моделирование
Выбери формат для чтения
Загружаем конспект в формате docx
Это займет всего пару минут! А пока ты можешь прочитать работу в формате Word 👇
Имитационное моделирование
Основными методологическими категориями теоретических основ моделирования являются понятия: объект, класс, отношение (связь), система, элемент, структура.
Определение понятия объект имеет различное толкование в зависимости от области рассмотрения. Если мы рассматриваем область имитационного моделирования, то в стратегии объектно-ориентированного подхода объект является первым важным понятием. Объект – это некоторая сущность в виртуальном пространстве, обладающая определенным состоянием и поведением, имеющая заданные значения свойств (атрибутов) и операций над ними.
Следующим важным понятием объектно-ориентированного подхода является класс. Родственные по определенным характеристикам, поведению объекты объединяются в классы. В зависимости от характеристик одни и те же объекты могут быть в различных классах.
В одном из разделов современной математики «теории категорий» объект используется как термин для обозначения элементов произвольной категории, играющих роль множеств, групп, топологических пространств и т. п. Здесь также вводится понятие класса объектов и проводится изучение свойств отношений между математическими объектами, не зависящих от внутренней структуры объектов.
Понятие отношение определяет взаимное положение объектов, связи между объектами в виде иерархических, ассоциативных, алгоритмических, табличных и других структур.
Понятие система является основополагающим в теории математического моделирования. Существует несколько десятков различных определений понятия «система», используемых в зависимости от контекста, области знаний и целей исследования.
Система – это упорядоченное множество структурно взаимосвязанных и функционально взаимодействующих однотипных элементов любой природы, объединенных в целостный объект, состав и границы которого определяются целями системного исследования.
Элемент – это простейшая неделимая часть системы, а ее свойства определяются конкретной задачей. Элемент всегда связан с самой системой. Элемент сложной системы может быть в свою очередь сложной системой в другой задаче.
Наряду с представлением об элементах в представление о любой системе входит и представление о ее структуре.
Структура – это совокупность устойчивых отношений и связей между элементами. Сюда включается общая организация элементов, их пространственное расположение, связи между этапами развития и т.п.
По своей значимости для системы связи элементов (даже устойчивые) неодинаковы: одни малосущественны, другие существенны, закономерны. Структура прежде всего – это закономерные связи элементов. Среди закономерных наиболее значимы интегрирующие связи (или интегрирующие структуры). Они обусловливают интегрированность сторон объекта. В системе производственных отношений, например, имеются связи трех родов: относящиеся к формам собственности, к обмену деятельностью и к распределению. Все они существенны и закономерны. Но интегрирующую роль в этих отношениях играют отношения собственности (иначе формы собственности). Интегрирующая структура является ведущей основой системы.
Существует ряд подходов к выделению систем по сложности и масштабу. Например, для систем управления удобно пользоваться классификацией по числу (количеству) элементов:
малые (10-103 элементов);
сложные (104- 107 элементов);
ультрасложные (108 - 1030 элементов);
суперсистемы (1030 - 10200 элементов).
Большая система – это всегда совокупность материальных и энергетических ресурсов, средств получения, передачи и обработки информации, людей, которые принимают решение на разных уровнях иерархии. В настоящее время для понятий «сложная система» и «большая система» используют такие определения:
• сложная система – упорядоченное множество структурно взаимосвязанных и функционально взаимодействующих разнотипных си-тем, которые объединены структурно в целостный объект функционально разнородными взаимосвязями для достижения заданных целей в определенных условиях;
• большая система объединяет разнотипные сложные системы.
Характерные особенности больших систем:
• значительное количество элементов;
• взаимосвязь и взаимодействие между элементами;
• иерархичность структуры управления;
• наличие человека в контуре управления и необходимость принятия решений в условиях неопределенности.
Рассмотрим устоявшиеся понятия в имитационном моделировании: «процесс», «работа», «событие», «транзакт».
Работа (активность) - это единичное действие системы по обработке (преобразованию) входных данных. В зависимости от природы моделируемой системы под входными данными могут пониматься информационные данные или какие-либо материальные ресурсы.
Под процессом понимают логически связанный набор работ. Некоторые процессы могут рассматриваться как работы в процессе более высокого уровня. Любой процесс характеризуется совокупностью статических и динамических характеристик.
К статическим характеристикам процесса относятся:
• длительность;
• результат;
• потребляемые ресурсы;
• условия запуска (активизации);
• условия остановки (прерывания).
Статические характеристики процесса не изменяются в ходе его реализации, однако при необходимости любая из них может быть представлена в модели как случайная величина, распределенная по заданному закону.
Динамической характеристикой процесса является его состояние (активен или находится в состоянии ожидания).
Моделирование в терминах процессов проводится в тех случаях, если система оценивается по каким-либо временным показателям, либо с точки зрения потребляемых ресурсов.
Например, при оценке производительности вычислительной сети обработка заданий может быть представлена в модели как совокупность соответствующих процессов, использующих ресурсы сети (оперативную память, пространство на жестких дисках, процессорное время, принтеры и т.д.).
Если модель строится с целью изучения причинно-следственных связей, присущих системе, динамику системы целесообразно описывать в терминах событий.
Событие представляет собой мгновенное изменение некоторого элемента системы или состояния системы в целом. Событие характеризуется:
• условиями (или законом) возникновения;
• типом, который определяет порядок обработки (дисциплину обслуживания) данного события;
• нулевой длительностью.
События подразделяют на две категории:
• события следования, которые управляют инициализацией процессов (или отдельных работ внутри процесса);
• события изменения состояний (элементов системы или системы в целом).
Механизм событий используется в качестве основы построения моделей, предназначенных для исследования причинно-следственных связей в системах при отсутствии временных ограничений. К таким задачам можно отнести, например, некоторые задачи по оценке надежности.
Еще один способ имитационного моделирования систем основан на использовании понятия транзакта или сущности.
Транзакт или сущность — это некоторое сообщение (заявка на обслуживание), которое поступает извне на вход системы и подлежит обработке.
В некоторых случаях, например, при моделировании автоматизированных систем управления удобно проследить функционирование системы относительно алгоритма обработки транзакта (сущности). В рамках одной имитационной модели могут рассматриваться транзакты(сущности) нескольких типов. Каждый транзакт (сущность) характеризуется соответствующим алгоритмом обработки и необходимыми для его реализации ресурсами системы. Прохождение транзакта (сущности) по системе можно в некоторых случаях рассматривать как последовательную активизацию процессов, реализующих его обработку («обслуживание заявки»).
Имитационное моделирование условно может быть представлено различными разновидностями или направлениями, соответственно имеющими свои методологии. Рассмотрим эти направления:
Статистическое (численное) моделирование является разновидностью имитационного моделирования. Изначально оно появилось в теории случайных процессов и математической статистике как способ вычисления статистических характеристик случайных процессов путем многократного воспроизведения течения процесса с помощью модели этого процесса. Этот подход к исследованию реального процесса был назван методом статистических испытаний (методом Монте-Карло). Модели здесь строятся для явлений и систем объектов, входы и (или) функциональные соотношения между различными компонентами которой содержат элементы случайности или полностью случайных процессов, подчиняющиеся вероятностным законам.
Динамические системы. Под динамической системой будем понимать любой объект, процесс или явление, для которого однозначно определено понятие состояния как совокупности некоторых величин и задан закон, который описывает изменение начального состояния с течением времени, двигающуюся в пространстве и изменяющуюся во времени. Динамическими объектами могут быть механические, производственные, физические, химические, биологические объекты, вычислительные процессы и др.
В основе методологии моделирования динамических систем и построения объектно-ориентированных моделей в технических системах лежит агрегативный подход, который был заложен в 1960-70-х годах гениальным советским ученым Н.П.Бусленко, здесь сложная система представлялась в виде агрегата (черного ящика), имеющего множество входных и выходных сигналов и воздействующих управляющих сигналов. Математически агрегат задается совокупностью множеств Т, Х, Г, У, Z и случайными операторами H и G , где Т – множество моментов времени, Х, Г, У – множества входных, управляющих выходных сигналов агрегата, H и G операторы переходов и выхода. Этот подход широко используется при исследовании сложных индивидуальных управленческих систем, к которым относятся АСУ.
Дискретно-событийное моделирование обязано своим рождением Дж. Гордону, который в начале 1960-х спроектировал и реализовал на IBM систему дискретно-событийного программирования GPSS (Global Purpose Simulation System). Основной объект в этой системе — пассивный транзакт (заявка на обслуживание), который может определенным образом представлять собой работников, клиентов, покупателей, детали, сырье, документы, сигналы и т. п. «Перемещаясь» по модели, транзакты становятся в очереди к одноканальным и многоканальным устройствам, захватывают и освобождают эти устройства, расщепляются, уничтожаются и т. д. Таким образом, дискретно-событийную модель можно рассматривать как глобальную схему обслуживания заявок. Аналитические результаты для большого количества частных случаев таких моделей рассматриваются в теории массового обслуживания.
Системная динамика – парадигма моделирования, где для исследуемой системы строятся графические диаграммы причинных связей и глобальных влияний одних параметров на другие во времени, а затем созданная на основе этих диаграмм модель имитируется на компьютере.
Системная динамика главным образом используется в долгосрочных, стратегических моделях и принимает высокий уровень абстракции. Люди, продукты, события и другие дискретные элементы представлены в моделях Системной Динамики не как отдельные элементы, а как система в целом.
Агентное моделирование (agent-based model (ABM)) – разновидность имитационного моделирования, современный метод, позволяющий исследовать работу децентрализованных агентов и то, как такое поведение определяет поведение всей системы в целом.
В отличие от системной динамики аналитик определяет поведение агентов на индивидуальном уровне, а глобальное поведение возникает как результат деятельности множества агентов (моделирование «снизу-вверх»).
Методология когнитивного моделирования, предназначенная для анализа и принятия решений в плохо определенных ситуациях, была предложена американским исследователем Р. Аксельродом. Изначально когнитивный анализ сформировался в рамках социальной психологии, а именно – когнитивизма, занимающегося изучением процессов восприятия и познания. Применения разработок социальной психологии в теории управления привело к формированию особой отрасли знаний – когнитологии, концентрирующейся на исследовании проблем управления и принятия решений.
Под когнитивными технологиями понимается широкий спектр технологий рационализации и формализации интеллектуальных систем создания и функционирования знаний, экспертизы, коммуникации и принятия решения. Когнитивные информационные технологии представляет собой совокупность методов, приемов, действий, процессов, осуществляемых в определенной последовательности, инструментальных средств (ПК), позволяющих преобразовать входную информацию в варианты управленческого решения.
Ситуационное моделирование. Ситуационное моделирование (situational simulation), ситуационное управление (management situations).
Ситуационное управление – это метод управления сложными техническими и организационными системами, основанный на идеях теории искусственного интеллекта: представление знаний об объекте управления и способах управления им на уровне логико-лингвистических моделей, использование обучения и обобщения в качестве основных процедур при построении процедур управления по текущим ситуациям, использование дедуктивных систем для построения многошаговых решений.
Этапы разработки имитационной модели
В каждом цикле разработки компьютерных моделей сложных объектов можно выделить следующие этапы.
1. Формулировка проблемы
Здесь проводится описание исследуемой проблемы и определение целей исследования. Постановка задачи, формулировка и установление иерархии целей и подзадач. Изучение поведения системы в целом.
Результатом этого этапа должно быть документированное содержательное описание объекта моделирования. Иначе говоря, построение полной информационной модели объекта или системы.
2. Определение границ
Логико-математическое описание моделируемой системы в соответствии с формулировкой проблемы. Определение границ системы и внешней среды, т.е. выделение системы из окружающей среды. Определение входных параметров и выходных характеристик системы.
В каждой модели существует некоторая комбинация составляющих как переменные, параметры, компоненты, функциональные зависимости, ограничения, целевые функции (аспекты).
При описании моделируемой системы и процессов, определяются основные параметры и переменные модели. Параметрами являются величины, которые исследователь может выбирать произвольно, в отличие от переменных модели, которые могут принимать значения, определяемые видом заданной функции.
Компонентами системы считают составные части, которые образуют систему. Иногда компонентами считают также элементы системы или ее подсистемы. Система определяется как группа или совокупность объектов, объединенных некоторой формой регулярного взаимодействия или взаимозависимости для выполнения заданной функции.
Функциональные зависимости описывают поведение переменных и параметров в пределах компоненты или же выражают соотношения между компонентами системы. Эти соотношения по природе являются либо детерминистскими, либо стохастическими.
Ограничения представляют собой устанавливаемые пределы изменения значений переменных или ограничивающие условия их изменений. Они могут вводиться либо разработчиком, либо устанавливаться самой системой вследствие присущих ей свойств.
Целевая функция (функция критерия) представляет собой точное отображение целей или задач системы и необходимых правил оценки их выполнения. Выражение для целевой функции должно быть однозначным определением целей и задач, с которыми должны соизмеряться принимаемые решения (см. предыдущий этап).
3. Формулировка и разработка модели
Включает в себя разработку концептуальной модели и формализацию построенной концептуальной модели.
3.1. На этом стадии работы результатом деятельности разработчика компьютерной модели является создание полной концептуальной модели.
Концептуальная (содержательная) модель – это абстрактная модель, определяющая структуру моделируемой системы, свойства ее элементов и причинно-следственные связи, присущие системе и существенные для достижения цели моделирования. Построение концептуальной модели включает в себя декомпозицию системы, определение и выделение основных компонент, элементов и подсистем (построение модели состава). Концептуальная модель – это логико-математическое описание смоделированной системы в соответствии с формулировкой проблемы.
3.2. Формализация построенной концептуальной модели осуществляется с помощью языка или аппарата математических методов, в том числе и имитационных технологий.
Таким образом, концептуальное или формальное описание модели сложной системы на уровне формализации - это построение имитационной компьютерной модели «программы – имитатора» в соответствии с некоторой методикой программирования с применением языков и систем автоматизации моделирования.
4. Подготовка данных
Включает идентификацию, спецификацию и сбор данных.
Идентификация – статистический анализ модели, статистическое оценивание неизвестных параметров.
Спецификация – определение конечных целей моделирования; определение набора экзогенных и эндогенных переменных; определение состава системы уравнений, их структур; формулировка исходных предпосылок, ограничений. Спецификация опирается на имеющиеся экономические теории, специальные знания, интуицию исследователя.
В подготовку данных входит сбор и анализ исходных данных для моделирования. Если трассировку и программирование имитационной модели можно выполнять на гипотетических данных, то предстоящее экспериментальное исследование нужно выполнять на реальном потоке данных, так как от этого зависит адекватность модели реальной системе и точность получаемых результатов моделирования. Здесь перед разработчиком имитационной модели встают два вопроса: где и каким образом получить и собрать исходную информацию, и как обработать собранные данные о жизненной системе.
Основные способы получения исходных данных:
• из экспериментальных данных (физический эксперимент);
• из документации на систему (финансовая и техническая документация для промышленных систем, данные отчетов, статистические сборники, к примеру, для социально-экономических систем и др.);
• из литературных источников по рассматриваемой системе.
5. Трансляция модели
Трансляция модели – это перевод модели со специальных имитационных языков или языка математики на язык программирования, на котором будет реализована прикладная программа, соответствующая компьютерной модели. Алгоритмизация и программная реализация, т.е. строится программный комплекс моделирования объекта исследования. Проводится отладка компьютерной модели.
6. Оценка адекватности (верификация и валидация)
Верификация – это установка правильности разработанной программы, формальное, либо практическое доказательство ее правильной работоспособности на ЭВМ. На этом этапе проводится испытание, корректировка, проверка модели, комплексное тестирование компьютерной модели на адекватность объекту моделирования.
Валидация – это оценка требуемой точности и адекватности имитационной модели.
7-8. Стратегическое и тактическое планирование
На этом этапе проводится стратегическое и тактическое планирование машинного эксперимента. Результатом является составленный план эксперимента и проведенный вычислительный эксперимент («прогоны» компьютерной модели с различными начальными данными). Здесь проводится определение условий машинного эксперимента с имитационной моделью, а также параметров при тестировании модели, результаты по входным данным.
9. Постановка экспериментов. На данном этапе предполагается прогон программы имитационной модели на ЭВМ для получения выходных данных или результатов, позволяющих оценить адекватность построенной модели. Здесь также необходимо определить условия, в которых будет осуществляться тестирование, проверка работоспособности и возможности функционирования; параметры, на которые надо обратить внимание при тестировании модели. Параметры могут быть связаны со способностью модели реагировать на какие-либо стохастические воздействия, на неверные входные данные, либо полное их отсутствие, на неверные действия персонала.
10. Анализ результатов моделирования
Обработка, визуализация и интерпретация результатов машинного компьютерного эксперимента, предполагает рассмотрение и изучение результатов имитационного эксперимента для подготовки выводов о возможности применения имитационной модели для решения некоторой проблемы.
11. Реализация и документирование
На основе построенной имитационной модели можно дать рекомендации о принятии того или иного управленческого решения и документально отразить процесс функционирования модели и полученные результаты. Анализ основных проблем, возникающих при создании модели сложной системы.