РЕФЕРАТ Курсовая работа: 29 страниц, 4 рисунка, 5 источников. Ключевые слова и словосочетания: имитационное моделирование, GPSS World, вычислительная система, задания, память, процессор. Объектом исследования является обработка поступающих заданий. Предметом исследования являются характеристики объекта исследования как системы массового обслуживания и их оптимизация. Цель работы провести имитационное моделирование объекта исследования. Для достижения поставленной цели были поставлены следующие задачи: изучить методы разработки и испытания имитационных моделей сложных систем; осуществить выбор языка и средства моделирования; провести анализ поставленной задачи, выявить тип системы массового обслуживания; разработать структурную схему модели; разработать код модели, реализовать моделирование (представить результаты моделирования); осуществить интерпретацию результатов моделирования; предложить улучшения в работе системы, проверить их на скорректированной модели. Использованные средства – система имитационного моделирования GPSS Word. 1 Содержание введение Имитационное моделирование – это методология, которая позволяет создавать и исследовать модели сложных систем или процессов с помощью компьютерных программ. Оно используется для анализа и прогнозирования поведения системы в различных условиях и для принятия решений на основе полученных результатов. Имитационное моделирование основано на создании компьютерной модели, которая имитирует поведение реальной системы. Модель содержит набор переменных, которые представляют состояние системы, и набор правил, которые определяют, как эти переменные изменяются со временем. Модель может быть использована для проведения экспериментов и исследования различных сценариев, чтобы понять, как система будет вести себя в различных условиях. Имитационное моделирование может быть применено в различных областях, таких как экономика, бизнес, транспорт, здравоохранение и другие. Оно позволяет анализировать сложные системы, которые не могут быть полностью описаны аналитически, и предоставляет возможность проводить эксперименты и тестировать различные стратегии и решения без риска для реальной системы. Актуальность задачи заключается в необходимости исследования процессов обработки поступающих заданий для того что бы определить характеристики занятия оперативной памяти и дальнейшей ее оптимизации. Объектом исследования является обработка поступающих заданий. Предметом исследования являются характеристики объекта исследования как системы массового обслуживания и их оптимизация. Цель работы провести имитационное моделирование объекта исследования. 2 Для достижения поставленной цели были поставлены следующие задачи: изучить методы разработки и испытания имитационных моделей сложных систем; осуществить выбор языка и средства моделирования; провести анализ поставленной задачи, выявить тип системы массового обслуживания; разработать структурную схему модели; разработать код модели, реализовать моделирование (представить результаты моделирования); осуществить интерпретацию результатов моделирования; предложить улучшения в работе скорректированной модели. 3 системы, проверить их на 1 Теоретический раздел Благодаря интенсивному развитию информатики и компьютерных технологий стало намного проще решать сложные задачи, требующие больших временных и финансовых затрат. Упростить их решение возможно с использованием моделирования. Одним из наиболее распространенных и удобных способов моделирования сложных систем является имитационное компьютерное моделирование объектов и процессов реального мира. Невозможно сразу моделировать какой-либо процесс, для этого необходимо специальное обучение способам, приемам и технологиям компьютерного имитационного моделирования (ОПК-3). Специалист, приступая к решению задачи, должен знать осно- вы динамических процессов, подходы и методы решения сложных процессов и систем, в том числе аналитических и имитационных, а также знать конкретные информационные системы моделирования и используемые в них языки программирования. Среди множества сред аналитического моделирования основными являются Maple, MathCAD, MATLAB + Simulink и др. (ОПК-3). При обучении моделированию сложных систем могут быть использованы различные среды и методологии разработки анали- тических и имитационных моделей сложных систем: MvStudium, MATLAB, Arena, GPSS, Extend, iThinkAnalyst, ProcessModel и др. (ОПК-3). Особое место среди сред разработки компьютерных моделей сложных систем принадлежит многоподходной среде моделирования имитационных моделей – AnyLogic. Разные средства спецификации и анализа результатов, имеющиеся в AnyLogic, позволяют строить модели (динамические, дискретно- событийные, агентные), имитирующие практически любой реальный процесс, а также конструировать и многие другие модели, выполнять анализ моделей на компьютере без проведения реальных экспериментов и самостоятельных сложных вычислений (ПК-8, ПК-10). Но для возможности 4 оперировать этой программной средой и получать при моделировании верные результаты пользователь AnyLogic должен овладеть технологией работы в среде, понять ее функциональные особенности, в этих целях мы представляем учебное пособие по разработке компьютерных моделей сложных систем в среде AnyLogic [2]. Моделирование – метод решения задач, при использовании которого исследуемая система заменяется более простым объектом, описывающим реальную систему и называемым моделью. Моделирование применяется в случаях, когда проведение экспериментов над реальной системой невозможно или нецелесообразно, например из-за высокой стоимости или длительности проведения эксперимента в реальном масштабе времени. Руководствуясь жизненным опытом и научными знаниями, человек строит модели – от бумажных корабликов до картины мира. Чем они богаче и чем точнее мы можем ими оперировать, тем развитей наше сознание, наша «самая важная модель» соответствует реальности и находит способы ее изменения [1]. Моделирование – самое эффективное средство поддержки принятия решений, а по словам Ричарда Докинза – «один из самых интересных способов предсказывать будущее» [4]. Теоретические предпосылки этого утверждения формировались на протяжении веков. В основу математического моделирования легли математический анализ, теория вероятностей, численные методы, теория подобия. В ХХ в. появилась база практического приложения моделей: математическое программирование; теория массового обслуживания; теория алгоритмов; теория систем; кибернетика (ПК-8). Другая, «фактологическая», основа моделирования – стремительно растущий потенциал знаний фундаментальных и прикладных наук. В сочетании с современным технологическим прорывом эти основы создают необычайные возможности построения моделей, ограниченные 5 лишь смелостью глобальные темы, исследователя. которые Перечислим проходят только злободневные непрерывную проверку моделированием: экономика, политика, экология. Моделирование уверенно помогает понять, как устроен мир. Можно надеяться, что с его помощью мы когда-нибудь узнаем, как работает и наша «самая важная модель» [1]. Различают физическое и математическое моделирование. Примером физической модели является уменьшенная копия самолета, продуваемая в потоке воздуха. При использовании математического моделирования поведение системы описывается с помощью формул. Особым видом математических моделей являются имитационные модели (ПК-8). Имитационная модель – это компьютерная программа, которая описывает структуру и воспроизводит поведение реальной системы во времени. Имитационная модель позволяет получать подробную статистику о различных аспектах функционирования системы в зависимости от входных данных (ОПК-3). Имитационное моделирование – разработка компьютерных моделей и постановка экспериментов на них. Целью моделирования в конечном счете является принятие обоснованных, целесообразных управленческих решений; подготовка студентов к решению задач, связанных с процессами анализа, прогнозирования, моделирования в рамках профессионально ориентированных информационных систем сферы инноватики. Задачи, решаемые в учебном пособии «Имитационное моделирование»: сформировать целостное представление о системе экономико- математических моделей и месте имитационных моделей, а так- же изучить процессы массового обслуживания; научить выполнять имитацию инновационного объекта в трех измерениях: материальном, денежном и информационном; произвести экономическое прогнозирование и предвидение развития экономических процессов; 6 сформировать у студентов навыки, необходимые для выработки управленческих решений. Компьютерное моделирование становится сегодня обязательным этапом в принятии ответственных решений во всех областях деятельности человека в связи с усложнением систем, в которых человек должен действовать и которыми он должен управлять. Знание принципов и возможностей имитационного моделирования, умение создавать и применять модели являются необходимыми требованиями к инженеру, менеджеру, бизнес-аналитику [4]. Принципы имитационного моделирования Имитационное моделирование основано на нескольких принципах, которые помогают создать точную и реалистичную модель системы. Вот некоторые из этих принципов: Абстракция Абстракция – это процесс выделения ключевых аспектов системы и игнорирования незначительных деталей. В имитационном моделировании мы создаем упрощенную версию системы, которая содержит только необходимую информацию для достижения наших целей и исследования. Время и события Имитационное моделирование учитывает время и события, которые происходят в системе. Модель может имитировать прошлое, настоящее или будущее состояние системы, а также события, которые могут повлиять на ее поведение. Взаимодействие и зависимости Системы обычно состоят из множества взаимосвязанных компонентов, которые влияют друг на друга. Имитационное моделирование учитывает эти взаимодействия и зависимости, чтобы создать более реалистичную модель системы. Статистика и случайность 7 Имитационное моделирование учитывает случайность и статистические факторы, которые могут влиять на поведение системы. Модель может использовать случайные числа и вероятности для имитации случайных событий и вариаций в системе. Валидация и верификация Валидация и верификация – это процессы проверки и подтверждения правильности и точности модели. Валидация включает сравнение результатов моделирования с реальными данными или другими надежными источниками, а верификация – это проверка правильности реализации модели. Эти принципы помогают создать надежную и точную имитационную модель системы, которая может быть использована для анализа и исследования различных сценариев и принятия решений. Преимущества и недостатки имитационного моделирования Преимущества: 1. Гибкость: Имитационное моделирование позволяет создавать модели различных систем и процессов, включая сложные и динамические системы. Это позволяет исследовать различные сценарии и варианты поведения системы без необходимости проведения реальных экспериментов. 2. Экономическая эффективность: Имитационное моделирование позволяет сэкономить время и ресурсы, которые могут быть затрачены на проведение реальных экспериментов. Моделирование позволяет быстро и дешево проводить исследования и анализ различных сценариев. 3. Анализ и оптимизация: Имитационное моделирование позволяет анализировать и оптимизировать работу системы, исследовать влияние различных факторов и принимать обоснованные решения. Моделирование позволяет исследовать различные стратегии и сценарии, чтобы найти наилучший вариант. 4. Управление рисками: Имитационное моделирование позволяет оценить риски и потенциальные проблемы в системе. Моделирование 8 позволяет исследовать различные сценарии и предсказывать возможные последствия, что помогает принимать меры по управлению рисками. Недостатки: 1. Сложность создания: Создание имитационной модели может быть сложным процессом, требующим знания и опыта в области моделирования. Необходимо учесть все важные факторы и взаимодействия в системе, чтобы создать точную и надежную модель. 2. Ограничения точности: Имитационное моделирование всегда является приближенным представлением реальной системы. В зависимости от сложности системы и доступных данных, точность модели может быть ограничена. 3. Зависимость от данных: Для создания точной имитационной модели необходимы достоверные данные о системе. Если данные недостаточны или неточны, это может привести к неточным результатам моделирования. 4. Время и ресурсы: Создание и запуск имитационной модели может потребовать значительных временных и ресурсных затрат. Необходимо провести исследование, собрать данные, разработать модель и провести необходимые эксперименты. Несмотря на некоторые ограничения, имитационное моделирование является мощным инструментом для анализа и исследования различных систем и процессов. Оно позволяет принимать обоснованные решения и оптимизировать работу системы, что делает его ценным инструментом в различных областях, включая бизнес, производство, логистику и здравоохранение. Процесс создания имитационной модели Процесс создания имитационной модели включает несколько этапов, которые позволяют разработать модель, соответствующую реальной системе или процессу. Вот основные этапы: 1. Определение целей и задач моделирования 9 Первым шагом является определение целей и задач, которые должна решать имитационная модель. Необходимо понять, какие аспекты системы или процесса требуется изучить и какие вопросы нужно ответить с помощью моделирования. 2. Сбор данных и анализ системы Для создания достоверной имитационной модели необходимо собрать данные о системе или процессе, которые будут использоваться в модели. Это может включать данные о входных параметрах, характеристиках системы, временных интервалах и других факторах, влияющих на модель. 3. Разработка модели На этом этапе происходит разработка самой имитационной модели. Она может быть представлена в виде блок-схемы, графа или другой структуры, отражающей взаимодействие компонентов системы или процесса. 4. Определение параметров и переменных Для работы модели необходимо определить параметры и переменные, которые будут использоваться в процессе имитации. Параметры могут быть постоянными или изменяться во времени, а переменные представляют состояние системы или процесса в определенный момент времени. 5. Разработка алгоритмов и правил На этом этапе определяются алгоритмы и правила, которые будут использоваться в модели для имитации поведения системы или процесса. Это может включать логику принятия решений, распределение ресурсов, взаимодействие компонентов и другие аспекты модели. 6. Проверка и верификация модели После разработки модели необходимо провести ее проверку и верификацию. Это включает сравнение результатов моделирования с реальными данными или другими источниками информации, чтобы убедиться в достоверности и точности модели. 7. Эксперименты и анализ результатов 10 Последний этап включает проведение экспериментов с использованием имитационной модели и анализ полученных результатов. Это позволяет оценить эффективность системы или процесса, идентифицировать узкие места и оптимизировать работу модели. Весь процесс создания имитационной модели требует внимательности, аналитических навыков и понимания системы или процесса, который моделируется. Однако, правильно разработанная и проверенная имитационная модель может быть мощным инструментом для анализа и оптимизации различных систем и процессов. Примеры применения имитационного моделирования Прогнозирование трафика Имитационное моделирование может использоваться для прогнозирования трафика на дорогах или в сетях передачи данных. Модель может учитывать различные факторы, такие как количество автомобилей, скорость движения, плотность трафика и т.д. Это позволяет оценить эффективность существующей инфраструктуры и оптимизировать планирование дорожных работ или улучшение сетевой инфраструктуры. Оптимизация производственных процессов Имитационное моделирование может быть использовано для оптимизации производственных процессов в различных отраслях, таких как производство автомобилей, электроники или пищевой промышленности. Модель может учитывать различные факторы, такие как пропускная способность оборудования, время цикла, количество рабочих и т.д. Это позволяет определить оптимальные параметры производства, увеличить эффективность и снизить затраты. Анализ финансовых рынков Имитационное моделирование может быть использовано для анализа финансовых рынков и прогнозирования цен на акции, валюты или товары. Модель может учитывать различные факторы, такие как экономические показатели, политические события, технические анализы и т.д. Это позволяет 11 трейдерам и инвесторам принимать более обоснованные решения и управлять рисками. Оптимизация логистических сетей Имитационное моделирование может быть использовано для оптимизации логистических сетей, таких как системы поставок или распределения товаров. Модель может учитывать различные факторы, такие как количество складов, маршруты доставки, время доставки и т.д. Это позволяет определить оптимальные параметры логистической сети, улучшить сервис и снизить затраты на доставку. Моделирование эпидемий и пандемий Имитационное моделирование может быть использовано для моделирования распространения эпидемий и пандемий, таких как грипп или COVID-19. Модель может учитывать различные факторы, такие как скорость передачи инфекции, меры предосторожности, вакцинация и т.д. Это позволяет оценить эффективность мер прогнозировать ее развитие. 12 по борьбе с эпидемией и 2 Практический раздел Специализированная вычислительная система состоит из трех процессоров и общей оперативной памяти. Задания, поступающие на обработку через интервалы времени 5 ± 2 мин, занимают объем оперативной памяти размером в страницу. После трансляции первым процессором в течение 5 ± 1 мин их объем увеличивается до двух страниц, и они поступают в оперативную память. Затем после редактирования во втором процессоре, которое занимает 2,5 ± 0,5 мин на страницу, объем возрастает до трех страниц. Отредактированные задания через оперативную память поступают в третий процессор на решение, требующее 1,5 ± 0,4 мин на страницу, и покидают систему, минуя оперативную память. Цель моделирования Смоделировать работу вычислительной системы в течение 50 ч. Определить характеристики занятия оперативной памяти по всем трем видам заданий. 2.1 Выбор программных средств моделирования. В качестве программы моделирования самой задачи на мой взгляд наиболее удобно использовать программу GPSSPC которая на языке программирования GPSS позволяет быстро смоделировать процесс работы моего транспортного цеха. Немаловажным фактором использования данного метода является удобная отладка модели, также с помощью дополнительных графиков вызываемых командами (alt+F и alt+B) можно наглядно увидеть работу модели и устранить ошибки которые могут возникнуть в процессе работы. Основной критерий выбора данного метода решения поставленной задачи является совместимость его с теорией массового обслуживания и очередей, а также наличие инструментов для решения задач связанных с ними. К ним относятся средства генерации случайных чисел и переменных, возможность отладки и изменения алгоритма во время 13 работы, отображение статистических данных по работе модели и многое другое помогающее организовать вычислительный процесс. 2.2 Разработка структурной схемы имитационной модели,описание ее функционирования Процесс обработки сообщений, поступающих в информационную систему, формализован в виде Q-схемы. Иммитационая схема моделируемой системы представлена на рисунке 1 Рисунок 1 - Структурная схема информационной системы Описание имитационной модели информационной системы: 1. Описание элементов Q-схемы: U1 – источник1: генератор сообщений H1(L1) – накопитель1, L1 – максимальная емкость накопителя 1; K1 – канал1: процессор 1; K2 – канал2: процессор 2; K3 – канал3: процессор 3; 14 2. Описание потоков: q1 – поток сообщений, поступающих с первого направления в накопитель1; q2 – поток сообщений, поступающих с накопителя в первый процессор; q3 – поток обработанных сообщений первого канала, поступающий в накопитель1; q4 – поток обработанных сообщений на канал 2; первого канала, поступающий q5 – поток обработанных сообщений в накопитель1; второго канала, поступающий q6 - поток обработанных сообщений второго канала, поступающийх для отправки в канал3; q7 – поток выходных сообщений обработанных каналом3; 3. Описание времени: t1 – время генерации сообщений источником1; t2 – время обработки сообщений первым каналом; t3 – время обработки сообщений вторым каналом; t4 – время обработки сообщений третьим каналом; 2.3 Программная реализация проекта Программная реализация задачи представлена на рисунке 2 15 Рисунок 2 – Программная реализация 1. PU1 EQU 1, PU2 EQU 2, PU3 EQU 3, RAM EQU 4: Здесь определяются символьные константы для удобства использования в программе. Эти константы соответствуют номерам процессоров и оперативной памяти. 2. SIMULATE: Эта строка начинает блок моделирования, который содержит весь код для симуляции. 3. GENERATE (UNIFORM(4,3,7)): Генерирует событие, имитирующее поступление задания в систему. Время между поступлениями заданий распределено равномерно в диапазоне от 3 до 7 временных единиц. 16 4. QUEUE RAM: Помещает задание в очередь оперативной памяти. 5. queue cpu1: Помещает задание в очередь для процессора 1. 6. SEIZE PU1: Захватывает процессор 1 для обработки задания. 7. depart cpu1: Освобождает процессор 1 после обработки задания. 8. ADVANCE (UNIFORM(4,4,6)): Задает время, которое задание будет находиться в системе, прежде чем перейдет к следующему этапу. В данном случае, это равномерное распределение от 4 до 6 временных единиц. 9. RELEASE PU1: Освобождает процессор 1. 10. ASSIGN 1,2, ASSIGN 2,2: Присваивает заданию определенные значения параметров (1 и 2). 11. queue RAM: Помещает задание в очередь оперативной памяти. 12. queue cpu2: Помещает задание в очередь для процессора 2. 13. SEIZE PU2: Захватывает процессор 2 для обработки задания. 14. depart cpu2: Освобождает процессор 2 после обработки задания. 15. WAIT1 ADVANCE (UNIFORM(4,2,3)): Задает задержку перед выпуском задания из процессора 2. Время ожидания равномерно распределено от 2 до 3 временных единиц. 16. LOOP 2,WAIT1: Повторяет предыдущую строку два раза. 17. RELEASE PU2: Освобождает процессор 2. 18. ASSIGN 1,3, ASSIGN 2,3: Присваивает заданию новые значения параметров (3 и 3). 19. queue RAM: Помещает задание в очередь оперативной памяти. 20. queue cpu3: Помещает задание в очередь для процессора 3. 21. SEIZE PU3: Захватывает процессор 3 для обработки задания. 22. depart cpu3: Освобождает процессор 3 после обработки задания. 23. WAIT2 ADVANCE (UNIFORM(4,1.1,1.9)): Задает задержку перед выпуском задания из процессора 3. Время ожидания равномерно распределено от 1.1 до 1.9 временных единиц. 24. LOOP 2,WAIT2: Повторяет предыдущую строку два раза. 25. RELEASE PU3: Освобождает процессор 3. 17 26. depart RAM,3: Освобождает оперативную память после того, как задание завершило свое выполнение. 27. TERMINATE: Завершает блок моделирования. 28. TIME GENERATE 3000: Генерирует событие завершения моделирования после прохождения 3000 временных единиц. 29. TERMINATE 1: Завершает выполнение программы. 30. START 1: Запускает моделирование. Заключение 18