Добавлен: 30.06.2023
Просмотров: 135
Скачиваний: 4
СОДЕРЖАНИЕ
Глава 1. Имитационное моделирование систем
1.1 Классификация методов моделирования
1.3 Качественные методы описания систем
1.4 Количественные методы описания систем
1.5 Высшие уровни описания систем
1.6 Низшие уровни описания систем
Глава 2. Программное обеспечение имитационного моделирования
2.3 Программа SyAn (Анализ систем)
Глава 3. Разработка имитационной модели
3.1 Описание задачи моделирования
3.2 Применение программы имитационного моделирования Anylogic к решению поставленной задачи
Цвикки предложил три метода морфологического исследования.
Первый метод — метод систематического покрытия поля (МСПП), основанный на выделении так называемых опорных пунктов знания в любой исследуемой области и использовании для заполнения поля некоторых сформулированных принципов мышления. Второй — метод отрицания и конструирования (МОК), базирующийся на идее
Третий — метод морфологического ящика (ММЯ), нашедший наиболее широкое распространение. Идея ММЯ состоит в определении всех «мыслимых» параметров, от которых может зависеть решение проблемы, и представлении их в виде матриц-строк, а затем в определении в этом морфологическом матрице-ящике всех возможных сочетаний параметров по одному из каждой строки. Полученные таким образом варианты могут затем подвергаться оценке и анализу с целью выбора наилучшего.
Методика системного анализа. Методики, реализующие принципы системного анализа в конкретных условиях, направлены на то, чтобы формализовать процесс исследования системы, процесс поставки и решения проблемы. Методика системного анализа разрабатывается и применяется в тех случаях, когда у исследователя нет достаточных сведений о системе, которые позволили бы выбрать адекватный метод формализованного представления системы.
Общим для всех методик системного анализа является формирование вариантов представления системы (процесса решения задачи) и выбор наилучшего варианта.
1.4 Количественные методы описания систем
Уровни описания систем. При создании и эксплуатации сложных систем требуется проводить многочисленные исследования и расчеты, связанные с:
- оценкой показателей, характеризующих различные свойства систем;
- выбором оптимальной структуры системы;
- выбором оптимальных значений ее параметров.
Выполнение таких исследований возможно лишь при наличии математического описания процесса функционирования системы, т. е. ее математической модели.
Сложность реальных систем не позволяет строить для них «абсолютно» адекватные модели. Математическая модель (ММ) описывает некоторый упрощенный процесс, в котором представлены лишь основные явления, входящие в реальный процесс, и лишь главные факторы, действующие на реальную систему.
Какие явления считать основными и какие факторы главными — существенно зависит от назначения модели, от того, какие исследования с ее помощью предполагается проводить. Поэтому процесс функционирования одного и того же реального объекта может получить различные математические описания в зависимости от поставленной задачи.
Наиболее пригодными являются следующие уровни абстрактного описания систем:
- символический, или, иначе, лингвистический;
- теоретико-множественный;
- абстрактно-алгебраический;
- топологический;
- логико-математический;
- теоретико-информационный;
- динамический;
- эвристический.
Условно первые четыре уровня относятся к высшим уровням описания систем, а последние четыре – к низшим.
1.5 Высшие уровни описания систем
Лингвистический уровень описания – наиболее высокий уровень абстрагирования. Из него как частные случаи можно получить другие уровни абстрактного описания систем более низкого ранга. Процесс формализации в математике обычно понимают как отвлечение от изменчивости рассматриваемого объекта. Поэтому формальные построения наиболее успешно используются, когда удается с предметами или процессами действительности каким-то образом сопоставлять некоторые стабильные, неизменные понятия.
Понятие о высказывании на данном абстрактном языке означает, что имеется некоторое предложение (формула), построенное на правилах данного языка. Предполагается, что эта формула содержит варьируемые переменные, которые только при определенном их значении делают высказывание истинным.
Все высказывания делят обычно на два типа. К первому причисляют «термы» (имена предметов, члены предложения и т. д.) – высказывания, с помощью которых обозначают объекты исследования, а ко второму – «функторы» – высказывания, определяющие отношения между термами.
С помощью термов и функторов можно показать, как из лингвистического уровня абстрактного описания (уровня высшего ранга) как частный случай возникает теоретико-множественный уровень абстрагирования (уровень более низкого ранга).
Термы – некоторые множества, с помощью которых перечисляют элементы, или, иначе, подсистемы изучаемых систем, а функторы устанавливают характер отношений между введенными множествами. Множество образуется из элементов, обладающих некоторыми свойствами и находящимися в некоторых отношениях между собой и элементами других множеств.
На теоретико-множественном уровне абстракции можно получить только общие сведения о реальных системах, а для более конкретных целей необходимы другие абстрактные модели, которые позволили бы производить более тонкий анализ различных свойств реальных систем.
1.6 Низшие уровни описания систем
Логико-математический уровень описания систем нашел широкое применение для: формализации функционирования автоматов; задания условий функционирования автоматов; изучения вычислительной способности автоматов.
Отображение множества состояний источника во множество состояний носителя информации называется способом кодирования, а образ состояния при выбранном способе кодирования — кодом этого состояния.
Динамический уровень абстрактного описания систем связан с представлением системы как некоторого объекта, куда в определенные моменты времени можно вводить вещество, энергию и информацию, а в другие моменты времени — выводить их, т. е. динамическая система наделяется свойством иметь «входы» и «выходы», причем процессы в них могут протекать как непрерывно, так и в дискретные моменты времени. Кроме этого, для динамических систем вводится понятие «состояние системы», характеризующее ее внутреннее свойство.
Эвристический уровень абстрактного описания систем предусматривает поиски удовлетворительного решения задач управления в связи с наличием в сложной системе человека. Эврика — это догадка, основанная на общем опыте решения родственных задач. Изучение интеллектуальной деятельности человека в процессе управления имеет очень важное значение.
Эвристика вообще — это прием, позволяющий сокращать количество просматриваемых вариантов при поиске решения задачи. Причем этот прием не гарантирует наилучшее решение.
Поэтому в настоящее время бурно развивается эвристическое программирование — программирование игровых ситуаций, доказательства теорем, перевода с одного языка на другой, дифференциальной диагностики, распознавания образов (звуковых, зрительных и т. д.).
Большое внимание сейчас уделяется созданию искусственного и гибридного интеллекта. При этом важное значение играют решение проблемы иерархически организованного перебора, создание и разработка методов отсечения заведомо невыгодных путей.
Таким образом, обзор уровней абстрактного описания систем показывает, что выбор подходящего метода формального описания при изучении той или иной реальной системы является всегда наиболее ответственным и трудным шагом в теоретико-системных построениях. Эта часть исследования почти не поддастся формализации и во многом зависит от эрудиции исследователя, его профессиональной принадлежности, целей исследования и т. д. Наибольшее значение в настоящее время в абстрактной теории систем придается теоретико-множественному, абстрактно-алгебраическому и динамическому уровням описания систем.
Глава 2. Программное обеспечение имитационного моделирования
2.1 Программа Pilgrim
Средством построения моделей в системе PILGRIM является графический конструктор Gem (от «Generator models»), представляющий собой набор узлов различного типа. На схеме имитационной модели узел есть графическое изображение некоторого типового процесса, или можно сказать, что внутри узла работает процесс. При этом элементарный процесс может быть, вообще говоря, представлен несколькими узлами имитационной модели, если этого требует логика его работы.
Таким образом, схема имитационной модели представляет собой направленный граф, вершины которого представляют собой компоненты элементарных процессов, а дуги определяют направление потоков заявок и управляющих воздействий в моделируемой системе.
Конструктор Gem генерирует программу на языке С++, которая в дальнейшем должна быть скомпилирована в составе проекта в среде MS Developer Studio, где предварительно должен быть установлен Visual C++ с библиотеками Pilgrim.
Процесс построения модели в системе PILGRIM включает в себя следующие этапы:
- Анализ структуры моделируемого процесса
- Определение входных и выходных параметров модели
- Построение графа модели с помощью конструктора (вообще говоря, можно сразу писать программный файл, но конструктор значительно облегчает работу).
- Описание узлов графа (определение значений параметров узлов модели).
Параметры узлов могут быть заданы константами или переменными пользователя. Во втором случае в момент входа в узел очередной заявки значения этих параметров должны быть определены с помощью операторов языка С++.
- Определение условий выбора узла, если в модели имеются ветвления.
- Компиляция модели.
В системе имитационного моделирования PILGRIM граф модели описывает взаимодействия дискретных и непрерывных компонент имитационной модели и представляет собой стохастическую сеть. Каждый узел графа – это ветвь моделирующей программы.
Непрерывные компоненты представляют собой разностные уравнения, причем каждый очередной интервал (или шаг) интегрирования – это отрезок времени между двумя ближайшими событиями в стохастической сети.
Одновременность моделирования всех компонент системы имитируется с помощью единой службы модельного времени.
Основной динамической единицей любой модели, работающей под управлением имитатора, является транзакт.
Транзакт – это формальный запрос на какое-либо обслуживание, например сигнал о загрязнении какого-то пункта местности, телеграмма, поступающая на узел коммутации сообщений, проба загрязненной почвы, ожидающая соответствующего анализа и т.д. Пути "миграции" транзактов по графу определяются логикой функционирования дискретных компонентов модели.
Узлы графа представляют собой центры обслуживания транзактов. В узлах транзакты могут задерживаться, обслуживаться, порождать семейства новых транзактов, уничтожать другие транзакты. Вид обслуживания транзакта определяется типом узла.
Выход из узла одного транзакта называется событием. Предположим, что в момент времени t произошло какое-то событие, а в момент времени t+d должно произойти ближайшее следующее, но не обязательно в этом же узле. Тогда очевидно, что передать управление непрерывным компонентам модели можно только на время [t,t+d].
Текущее значение модельного таймера хранится в системной переменной timer.
Значение модельного таймера доступно для чтения в процессе моделирования.
2.2 Программа Anylogic
AnyLogic – программное обеспечение для имитационного моделирования сложных систем и процессов, разработанное российской компанией «Экс Джей Текнолоджис». Программа обладает графической средой пользователя и позволяет использовать язык Java для разработки моделей.
AnyLogic – инструмент имитационного моделирования, с которым работают более 15000 пользователей в 60 странах мира. Программный продукт предназначен для проектирования и оптимизации бизнес-процессов или любых сложных систем, таких как производственный цех, аэропорт, госпиталь и т.д. Инструмент поддерживает все методы бизнес моделирования – системную динамику, дискретно-событийное (процессное) и агентное моделирование. Основной упор в разработке продукта сделан на его гибкость и простоту использования для неопытных в создании моделей пользователей. Среди пользователей крупные международные компании, государственные структуры, международные альянсы: НАТО, НАСА, Boeing, HP, IBM, General Motors, HSBS, PWC, Accenture, Jonson&Jonson.
Программный инструмент AnyLogic основан на объектно-ориентированной концепции [2]. Другой базовой концепцией является представление модели как набора взаимодействующих, параллельно функционирующих активностей. Активный объект в AnyLogic – это объект со своим собственным функционированием, взаимодействующий с окружением. Он может включать в себя любое количество экземпляров других активных объектов. Графическая среда моделирования поддерживает проектирование, разработку, документирование модели, выполнение компьютерных экспериментов, оптимизацию параметров относительно некоторого критерия.