Моделирование систем. Часть I
Покупка
Тематика:
Общенаучное знание и теории
Издательство:
Эль-Контент
Автор:
Салмина Нина Юрьевна
Год издания: 2013
Кол-во страниц: 118
Дополнительно
Вид издания:
Учебное пособие
Уровень образования:
ВО - Бакалавриат
ISBN: 978-5-4332-0146-0
Артикул: 769602.01.99
В настоящем учебном пособии изложены основные вопросы моделирования систем: классификация моделей, этапы моделирования. Рассматриваются задачи статистического моделирования, основные моменты планирования эксперимента и анализа результатов, а также некоторые вопросы теории массового обслуживания и теории игр. В качестве программного средства моделирования систем рассмотрен язык имитационного моделирования GPSS: синтаксис, особенности применения. Теоретический материал иллюстрируется многочисленными примерами. Учебное пособие предназначено для студентов, обучающихся по направлению подготовки 231000 «Программная инженерия», и студентов родственных направлений.
Тематика:
ББК:
УДК:
ОКСО:
- ВО - Бакалавриат
- 09.03.04: Программная инженерия
- ВО - Магистратура
- 09.04.04: Программная инженерия
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
Министерство образования и науки Российской Федерации ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ (ТУСУР) Н. Ю. Салмина МОДЕЛИРОВАНИЕ СИСТЕМ Часть I Учебное пособие Томск «Эль Контент» 2013
УДК 519.866.5(075.8) ББК 22.18я73 С 164 Рецензенты: Тарасенко В. Ф., докт. техн. наук, профессор кафедры теоретической кибернетики Томского государственного университета; Грибанова Е. Б., канд. техн. наук, доцент кафедры автоматизированных систем управления ТУСУРа. Салмина Н. Ю. С 164 Моделирование систем : учебное пособие / Н. Ю. Салмина. — Томск : Эль Контент, 2013. — 118 с. ISBN 978-5-4332-0146-0 В настоящем учебном пособии изложены основные вопросы моделирования систем: классификация моделей, этапы моделирования. Рассматриваются задачи статистического моделирования, основные моменты планирования эксперимента и анализа результатов, а также некоторые вопросы теории массового обслуживания и теории игр. В качестве программного средства моделирования систем рассмотрен язык имитационного моделирования GPSS: синтаксис, особенности применения. Теоретический материал иллюстрируется многочисленными примерами. Учебное пособие предназначено для студентов, обучающихся по направлению подготовки 231000 «Программная инженерия», и студентов родственных направлений. УДК 519.866.5(075.8) ББК 22.18я73 ISBN 978-5-4332-0146-0 © Салмина Н. Ю., 2013 © Оформление. ООО «Эль Контент», 2013
ОГЛАВЛЕНИЕ Предисловие 5 Введение 6 1 Организация статистического моделирования систем 15 1.1 Общая характеристика метода . . . . . . . . . . . . . . . . . . . . . . . . 15 1.2 Псевдослучайные числа и процедуры их машинной генерации . . . . 18 1.3 Проверка качества последовательностей псевдослучайных чисел . . 20 1.4 Моделирование случайных воздействий . . . . . . . . . . . . . . . . . . 24 1.5 Идентификация закона распределения . . . . . . . . . . . . . . . . . . . 31 2 Язык моделирования систем GPSS 36 2.1 Программные средства имитационного моделирования . . . . . . . . 36 2.2 Общие сведения о языке GPSS . . . . . . . . . . . . . . . . . . . . . . . . 38 2.3 Синтаксис языка . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 2.4 Блоки языка GPSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 2.4.1 Создание и уничтожение транзактов . . . . . . . . . . . . . . . . 43 2.4.2 Задержка транзактов в блоках . . . . . . . . . . . . . . . . . . . . 45 2.4.3 Работа с устройствами . . . . . . . . . . . . . . . . . . . . . . . . 46 2.4.4 Сбор статистических данных с помощью очередей . . . . . . 47 2.4.5 Функции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 2.4.6 Изменение маршрутов сообщений . . . . . . . . . . . . . . . . . 51 2.4.7 Работа с памятью . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 2.4.8 Вычислительные объекты языка . . . . . . . . . . . . . . . . . . 55 2.4.9 Приоритеты . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 2.4.10 Изменение параметров транзакта . . . . . . . . . . . . . . . . . . 60 2.4.11 Косвенная адресация . . . . . . . . . . . . . . . . . . . . . . . . . 62 2.4.12 Списки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 2.4.13 Статистические таблицы . . . . . . . . . . . . . . . . . . . . . . . 63 2.4.14 Логические переключатели . . . . . . . . . . . . . . . . . . . . . 66 2.4.15 Синхронизация транзактов . . . . . . . . . . . . . . . . . . . . . . 67 2.4.16 Прерывание работы устройства . . . . . . . . . . . . . . . . . . . 69 2.4.17 Организация циклов . . . . . . . . . . . . . . . . . . . . . . . . . . 72 2.4.18 Системное время . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 2.4.19 Управляющие блоки . . . . . . . . . . . . . . . . . . . . . . . . . . 74 2.5 Внутренняя организация GPSS . . . . . . . . . . . . . . . . . . . . . . . . 76
Оглавление 3 Планирование машинных экспериментов 81 3.1 Методы планирования экспериментов . . . . . . . . . . . . . . . . . . . 81 3.2 Планы первого порядка . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 3.3 Планирование второго порядка . . . . . . . . . . . . . . . . . . . . . . . 89 3.4 Поиск оптимальной области . . . . . . . . . . . . . . . . . . . . . . . . . 91 3.5 Стратегическое планирование . . . . . . . . . . . . . . . . . . . . . . . . 93 3.6 Тактическое планирование . . . . . . . . . . . . . . . . . . . . . . . . . . 95 3.7 Анализ результатов моделирования . . . . . . . . . . . . . . . . . . . . . 98 3.7.1 Проверка адекватности системы . . . . . . . . . . . . . . . . . . 98 3.7.2 Проверка значимости коэффициентов . . . . . . . . . . . . . . . 99 3.7.3 Обоснованность модели . . . . . . . . . . . . . . . . . . . . . . . 100 Литература 105 Приложение А Отчет 106 Глоссарий 114
ПРЕДИСЛОВИЕ Повышение эффективности реализации процессов управления и планирования в различных отраслях производства, науки, культуры, социальной жизни требует все более широкого применения моделей систем, создаваемых с применением математических методов и средств информационно-вычислительной техники. В настоящее время полное и всестороннее исследование реальных систем невозможно без методов моделирования на ЭВМ. Моделирование на ЭВМ часто называют имитационным моделированием. Именно моделирование является средством, позволяющим без капитальных затрат решать проблемы исследования, построения больших систем, эффективного управления этими системами. Поэтому дисциплина «Моделирование систем» является одной из базовых дисциплин подготовки бакалавров по направлению 231000 — «Программная инженерия». Основной задачей курса «Моделирование систем» является формирование у студентов профессиональных знаний и практических навыков по разработке и созданию различных моделей сложных систем, с целью их исследования. Курс знакомит студентов с этапами машинного моделирования, вопросами статистического моделирования, планирования эксперимента и двумя классами кибернетических моделей: игровых и моделей массового обслуживания. Дисциплина «Моделирование систем» состоит из двух частей. В первой части учебного пособия рассматриваются основные понятия моделирования, некоторые вопросы статистического моделирования, планирование эксперимента и язык моделирования GPSS. Во второй части учебного пособия рассматриваются два класса кибернетических моделей: модели массового обслуживания и игровые модели.
ВВЕДЕНИЕ Управление в современном мире становится все более трудным делом, поскольку организационная структура общества усложняется. Исследованию подвергаются все более и более сложные системы, в которых изменение одной из характеристик может легко привести к изменениям во всей системе или создать потребность в изменениях в других частях системы. Соответственно возникает необходимость в использовании все более сложных методов научных исследований. Известны три общих направления в научных исследованиях: экспериментальное и теоретическое исследования и математическое моделирование [1]. Экспериментальные исследования проводятся с реальным объектом в форме натурного эксперимента. В результате получают экспериментальные данные о поведении и свойствах объекта исследования. Известны две стратегии проведения натурного эксперимента: активная и пассивная. В первом случае экспериментатор имеет возможность изменять внешние условия, определяющие состояние объекта, во втором — такой возможности нет. В этом случае говорят о наблюдении за изменениями состояния объекта — исследования (социальные, природные) соответствующих объектов длительны и трудоемки. Теоретические исследования. Теория имеет дело не с реальным объектом исследования, а с его идеализированным представлением (огрубленным), допускающим применение адекватного математического аппарата для формального описания объекта. Здесь исходной основой является некая совокупность фактов, полученная в результате наблюдений или натурного эксперимента. В результате теоретического осмысления фактов у исследователей возникает ряд гипотез, объясняющих поведение и свойства объекта. При последующей экспериментальной проверке одна из гипотез может принять форму научного закона. Однако этот традиционный путь формирования теоретического знания в случае сложных систем оказывается неприменимым, и роль законов выполняют математические методы. Разрабатывается математический аппарат теории, который обеспечивает возможность проведения исследования объекта аналитическими методами. Но и эти методы в реальных ситуациях часто оказываются неприменимыми. Причины: недостаточная разработанность математического аппарата; чрезмерно большая размерность решаемой задачи; наличие большого числа случайных факторов. Возникает необходимость использования ЭВМ. Компьютерное моделирование. При использовании экспериментальных и теоретических методов исследования создается (накапливается) исходная информация
Введение 7 об объекте исследования, а модель используется как средство интеграции и хранения знаний об объекте исследования. Так, теоретические исследования проводятся с целью построения модели, а натурный эксперимент проводится с целью проверки адекватности модели. Здесь модель играет прикладную роль, она является и результатом исследования, и средством хранения знаний об объекте исследований. Различают два вида компьютерных экспериментов: вычислительный и имитационный. Модель при вычислительном эксперименте строится в виде уравнений (дифференциальных, алгебраических и пр.). При этом приходится использовать численные методы и комплексы эффективных вычислительных алгоритмов. В отличие от вычислительных экспериментов модели в имитационных экспериментах из-за отсутствия теории объекта описывают поведение реального объекта и реализуются в виде набора алгоритмов, отображающих ситуации, возникающие в состоянии моделируемого объекта и изменяющиеся по определенным сценариям. Результатами имитационного эксперимента являются не численные решения какихлибо уравнений модели, а реализации созданных с помощью ЭВМ процессов, имитирующих поведение реального объекта. Термин «реальный» будем использовать в смысле «существующий или способный принять одну из форм существования», т. е. системы, находящиеся только в стадии планирования или разработки, могут моделироваться так же, как и действующие системы. Необходимо отметить, что при исследовании сложных систем все чаще предпочтение отдается имитационному моделированию или совместному использованию имитационных и математических моделей. Имитационное моделирование позволяет имитировать поведение системы во времени. Причём плюсом является то, что временем в модели можно управлять: замедлять в случае с быстропротекающими процессами и ускорять для моделирования систем с медленной изменчивостью. Можно имитировать поведение тех объектов, реальные эксперименты с которыми дороги, невозможны или опасны. Понятие модели, ее функции Общепринятого определения модели в настоящее время не существует. Приведем некоторые наиболее распространенные определения модели [2–4]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Модель является представлением объекта, системы или понятия в некоторой форме, отличной от формы их реального существования. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Модель — это объект-заместитель объекта-оригинала, обеспечивающий изучение некоторых свойств оригинала. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Модель может определяться как структура для хранения знаний об объекте. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Математическая модель сложного объекта представляет собой некоторую знаковую систему, собственные свойства которой настолько близки к свойствам исследуемого объекта, что это позволяет при помощи экспериментов с ней на ЭВМ получить интересующую информацию о поведении или свойствах системы в заданных условиях. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Имитационная модель — это компьютерная программа, которая описывает структуру и воспроизводит поведение реальной системы во времени. Имитационная модель позволяет получать подробную статистику о различных аспектах функционирования системы в зависимости от входных данных. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Модель объекта может быть или точной копией этого объекта или отображать некоторые характерные свойства объекта в абстрактной форме. Модель служит обычно средством, помогающим нам в объяснении, понимании или совершенствовании системы. В настоящее время моделирование становится не только эффективным методом научных исследований сложных объектов, но и мощным инструментом конструирования и проектирования сложных систем. Качество решений задач, получаемых с помощью математического моделирования, определяется степенью адекватности модели реальному объекту (т. е. степенью соответствия результатов моделирования результатам работы реального объекта). Поэтому необходимо помнить, что подобно всем мощным средствам, существенно зависящим от искусства их применения (имитационное моделирование и экспериментирование во многом остаются интуитивными процессами), моделирование способно дать либо очень хорошие, либо очень плохие результаты; либо пролить свет на решение проблемы, либо ввести в заблуждение. Результат моделирования зависит от степени адекватности модели, правильности исходных предпосылок, умения исследователя правильно применять используемые методы, правильно интерпретировать результаты. В настоящее время существует несколько больших классов моделей. Так как выбор класса зависит от целей исследования и свойств сложной системы, рассмотрим основные функции, выполняемые моделями сложных систем [2]. 1. Объяснительная функция модели заключается в способности модели упорядочить нечеткие или противоречивые понятия: выявить взаимозависимости, временные соотношения; помочь интерпретировать данные натурного эксперимента. Уже сама попытка формализовать — помогает в понимании функционирования объекта. 2. Информационная функция заключается в возможности использования модели как средства для накопления и хранения знаний об объекте.
Введение 9 3. Обучающая функция — модель может служить для обучения и тренажа лиц, которые должны уметь справляться с всевозможными случайностями до возникновения реальной критической ситуации (модели космических кораблей, различные тренажеры, деловые игры). 4. Предсказательная функция модели связана с возможностью прогнозировать с заданной точностью по некоторым данным натурных экспериментов поведение и свойства объекта (одна из наиболее важных). 5. Функция постановки и проведения экспериментов для объектов дает возможность характеризовать различные состояния объектов моделирования, таких, где экспериментирование на реальных системах невозможно или нецелесообразно (люди, природа, атомные реакторы). Зачастую одна модель может выполнять одновременно несколько функций: использоваться для проведения экспериментов и для прогноза; проведения экспериментов и объяснения; для обучения и накопления знаний. В общем случае модель может служить для достижения двух целей: описательной — для объяснения или лучшего понимания объекта; предписывающей — для предсказания и/или воспроизведения характеристик объекта, определяющих его поведение. Обычно предписывающие модели являются и описательными, но не наоборот. Предписывающие модели явно предпочтительнее для целей исследования работы системы и предсказания ее будущего поведения, но сложнее в реализации и поэтому не всегда возможны. Вероятно, в том, что описательная модель не всегда полезна для целей планирования и проектирования, и кроется одна из причин, по которой экономические модели, имеющие (или обнаруживающие) тенденцию к описательности, оказали небольшое воздействие на управление экономическими системами и мало применялись в качестве вспомогательного средства управления на высшем уровне, в то время как модели исследования операций (теория игр) по общему признанию оказали значительное воздействие на эти сферы. В моделях социальных систем наблюдается тенденция к описательности, объяснению явлений (слишком сложный объект моделирования); модели технических систем, предназначенные для разработки новых систем, носят и предписывающий, и описательный характер. Требования к моделям Невозможно создать модель полностью адекватную объекту исследования: в этом случае она просто превратится в копию объекта. Поэтому степень адекватности модели зависит от целей моделирования, от имеющихся в наличии ресурсов для создания и эксплуатации модели, а также от того, кто будет пользоваться моделью (т. е. для кого она предназначена). Причем цели моделирования определяют структуру модели, методы, используемые для ее построения. Имеющиеся ресурсы определяют количество априорной (экспериментальной) информации, точность модели и, в некотором смысле, ее универсальность. И наконец, основной определитель качества модели — это пользователь: для того чтобы моделью можно было пользоваться, при ее разработке должны быть тщательно продуманы и потребности, и психология ее конечного потребителя (иначе создание модели будет пустой тратой времени).
Введение На основе вышесказанного определим ряд существенных черт, которыми должна обладать хорошая имитационная модель. Модель должна быть [2]: 1) простой и понятной пользователю; 2) целенаправленной, т. е. имеющей четко обозначенные цели и задачи, решаемые системой, с обязательным выделением тех из них, которые должны быть решены с помощью данной модели; 3) целостной, отражающей связь между элементами модели; 4) надежной в смысле гарантии от абсурдных ответов и способной отвечать на вопросы типа «а что если...»; 5) удобной в управлении и обращении, т. е. обеспечивающей легкость общения с ней пользователя; 6) полной с точки зрения возможностей решения главных задач; 7) адаптивной, позволяющей легко переходить к другим модификациям или обновлять данные (реальные системы со временем претерпевают изменения); 8) допускающей постепенные изменения в том смысле, что будучи вначале простой, она может во взаимодействии с пользователем становиться все более сложной. Классификация моделей Модели вообще, и имитационные модели в частности, можно классифицировать различными способами. К сожалению, ни один из них не является удовлетворительным, хотя каждый служит определенной цели. Укажем некоторые типовые группы моделей, которые могут быть положены в основу системы классификации: • статические и динамические; • детерминированные и стохастические; • дискретные и непрерывные. Классификация кибернетических моделей До сих пор мы рассматривали модели, используемые во всех областях исследований — физике, химии и пр. Но нас интересуют модели информационных процессов и систем, предназначенные для обработки информации и управления. Кибернетика занимается процессами управления в живой и неживой природе, связанными с преобразованием информации. Рассмотрим существующие кибернетические модели (КМ). Классификация КМ, связанная с математическим аппаратом, выделяет 5 основных классов моделей: 1) массового обслуживания (МО) и надежности; 2) игровые; 3) распознавания образов (РО);