Федеральное агентство по образованию
Федеральное государственное образовательное учреждение
высшего профессионального образования
"Сибирский федеральный университет"
Бронов Сергей Александрович
ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ
Учебное пособие по курсовому проектированию
Красноярск 2007
УДК 303.094.7
ББК
Бронов, С. А. Имитационное моделирование : учеб. пособие по курсовому проектированию / С. А. Бронов; ФГОУ ВПО "Сибирский федеральный университет", кафедра "Системы автоматизированного проектирования". — Красноярск: СФУ, 2007. — 35 с.
Представлены методические материалы для выполнения курсового проекта по учебной дисциплине "Имитационное моделирование". Приведены задания для выполнения курсового проекта, рекомендации по его выполнению, пример оформления.
Содержание Введение
1 Цели и задачи курсового проектирования
2 Процесс курсового проектирования
3 Защита курсового проекта и его оценка
4 Задания на курсовое проектирование
Задание 1. Проектный отдел
Задание 2. Турникет на стадионе
Задание 3. Речной порт
Задание 4. Автомобильная парковка
Задание 5. Биатлон
Задание 6. Канцелярия
Задание 7. Сборочный цех
Задание 8. Участок упаковки готовых изделий
Задание 9. Столовая
Задание 10. Перекрёсток
Задание 11. Отдел по обслуживанию посетителей
Задание 12. Отдел обслуживания
Задание 13. Выдача заработной платы
Задание 14. Перевозка грузов
Задание 15. Летнее кафе
Задание 16. Подготовка к экзамену
Задание 17. Автобусная станция
Задание 18. Осмотр достопримечательностей туристами
Задание 19. Музей
Задание 20. Ресторан
Задание 21. Спортивный зал
Задание 22. Поездка в автобусе
Задание 23. Читальный зал библиотеки
Задание 24. Лифт
Задание 25. Билетная касса
Задание 26. Аэропорт
Задание 27. Супермаркет
Задание 28. Автозаправочная станция
Задание 29. Банк
Задание 30. Автоматизированный участок цеха
Задание 31. Ремонтный участок
Задание 32. Сдача курсовой работы в компьютерном классе................. Задание 33. Проведение лабораторных работ
Задание 34. Локальная компьютерная сеть
Задание 35. Ателье по ремонту телевизоров
Задание 36. Аэропорт
Задание 37. Телефонная станция
Задание 38. Кафе
Задание 39. Тренажёрный клуб
Задание 40. Читальный зал библиотеки
Задание 41. Лифт в многоэтажном доме
Задание 42. Турникет на стадионе
Задание 43. Речной порт
Задание 44. Канцелярия
Задание 45. Участок упаковки готовых изделий
5 Правила оформления курсового проекта
1 Объект, цели и задачи моделирования
2 Программная модель
3 Пояснения к программной модели
4 План модельного эксперимента
5 Исследование функционирования модели
6 Модельный имитационный эксперимент
Список использованных источников
Введение Курсовой проект по учебной дисциплине "Имитационное моделирование" выполняется в 6-м семестре на 3-м курсе и включает разработку имитационной модели организационного или технического объекта на языке GPSS World, проведение простого имитационного эксперимента и оформление результатов моделирования.
1 Цели и задачи курсового проектирования Целью курсового проектирования является развитие умения разрабатывать имитационные модели организационных и технических объектов, а также получения практических навыков работы в среде GPSS World, включая программирование и использование встроенных инструментов анализа.
Задачи курсового проектирования:
1) представление заданного объекта в виде имитационной модели с выделением внешних воздействий, параметров, внутренних переменных;
2) создание программной имитационной модели на языке GPSS World;
3) тестирование и отладка разработанной имитационной модели, в том числе в шаговом режиме;
4) формулирование цели имитационного эксперимента, выделение варьируемых, постоянных и контролируемых переменных;
5) проведение имитационного эксперимента;
6) формулирование выводов по результатам эксперимента;
7) оформление полученных результатов.
В конечном счёте стеудент должен на сравнительно простом примере познакомиться с выполнением всех работ, связанных с имитационным моделированием.
2 Процесс курсового проектирования Процесс курсового проектирования рабивается формально на стадии, соответствующие приведённым выше задачам проектирования. Выделяются три укрупнённые стадии:
1) получение задания на курсовое проектирование;
2) конкретизация задания на курсовое проектирование, разработка вербальной (словесной) имитационной модели, выделение переменных состояния, внешних воздействий и параметров, создание структурной схемы модели;
3) создание программной модели, её отладка и модификация;
4) проведение имитационного эксперимента, для чего — выделение варьируемых и неизменных переменных модели, задание параметров, прогон модели в шаговом режиме с целью удостовериться в её адекватности;
5) оформление полученных результатов.
На первой стадии курсового проектирования из приведённого списка заданий студент выбирает то, которое соответствует его номеру в списке группы. Студент создаёт свой шаблон будущего отчёта в соответствии с приведённым ниже внешним видом. Согласно шаблону размещается текст задания, делается его схемотическая иллюстрация, происходит первичное оформление будущего отчёта. На этой стадии происходят интенсивные консультации с преподавателем.
На второй стадии курсового проектирования разрабатывается структурная схема модели (которая затем, возможно, будет уточняться при написании самой программы). При этом важно выполнять программирование постепенно, разрабатывая программу в нескольких вариантах — от простого к сложному. Первоначально можно упростить задачу, постепенно усложняя её с приближением к условиям самого задания.
На третьей стадии курсового проектирования пишется сам код программы, также от простого — к сложному. Все версии разрабатываемых программ следует хранить, чтобы понимать последовательность разработки. Не следует пытаться сразу написать всю программу. Очень мало шансов, что при этом не будет ни одной ошибки, а найти её в только что написанной большой программе невозможно. Поэтому целесообразно проверять работу отдельных фрагментов программы, чтобы убедиться в правильности записи операторов и входных данных. Здесь важно использовать отладачные механизмы GPSS World, в том числе шаговый режим, грамотные комментарии в строках, специальные точки контроля переменных (например, в виде дополнительно вводимых Сохраняемых величин). Необходимо менять входные данные и проверять логичность изменения различных показателей. Например, при увеличении скорости поступления транзактов в программу они должны накапливаться в очередях, а при более редком их поступлении — очереди должны рассасываться. Необходимо использовать в полной мере все Окна GPSS World как поотдельности, так и в различных комбинациях.
На четвёртой стадии курсового проектирования в ходе проведения имитационного эксперимента следует продумать, какие именно переменные в модели необходимо менять и как это должно отразиться на работе программы. Затем следует провести пробные эксперименты, получить результирующие данные, обдумать их и решить, какие именно эксперименты следует оставить и, возможно, повторить. При этом первоначальная программа экспериментальных исследований может измениться. Например, пусть предполагалось варьировать некий параметр модели в широком диапазоне и с большим количеством вариантов значений. Но в процессе пробных имитационных экспериментов оказалось, что влияние данного параметра чрезвычайно слабо, поэтому проводить все запланированные с ним эксперименты не представляет интереса. В результате можно провести несколько прогонов программы, чтобы показать его слабое влияние, и отразить это в отчёте. А все ранее планировавшиеся эксперименты с этим параметром заменить этими несколькими.
На пятой стадии курсового проектирования выполняет оформление пояснительной записки и текста программы. Следует ясно понять, что оформление является важнейшим этапом разработки любой программы, так как она, как правило, создаётся разработчиком не для самого себя, а для других пользователей. При написании программы следует записать полный текст задания и показать в комментариях назначение и особенности программы. В построчных комментариях следует исходить из того, что они выполняют, как минимум, две функции. Во-первых, они, как и все комментарии, разъясняют просматривающему программу назначение конкретных операторов и операндов. Во-вторых, построчные комментарии отображаются в шаговом решиме при отладке программы. Поэтому они в своей совокупности должны представлять связный рассказ о событиях в программе. Следует учесть также то обстоятельство, что в строках очень мало места. Продление комментариев далеко вправо может привести к тому, что они не будут вмещаться в лист бумаги при распечатке листингов. Перенос комментариев в нижние строки возможен, но следует помнить, что записанные в них части комментария не будут отображаться в шаговом режиме. В целом текст программы следует хорошо структурировать и дать каждому отдельному фрагменту своё название, отражающее выполняемые фрагментом программы операции. Важно помнить, что в GPSS World последовательность работы операторов определяется не только их расположением "сверху вниз", но и воздействием на них транзактов. Во многих случаях перемещение фрагмента программы вверх или вниз не сказывается на её работе. Этим можно воспользоваться, выстраивая тело программы наиболее рациональным для восприятия образом. Следует также помнить о необходимости распечатки листингов и предусомтреть такую длину строки, чтобы она вмещалась в стандартный лист бумаги при стандартном кегле шрифта. При оформлении пояснительной записки в неё вставляется листинг программы, при этом может возникнуть много мелких неурядиц. Например, в GPSS World каждый элемент строки (метка, оператор, опреанд, комментарий) располагаются через определёное значение табуляции. Эти табуляции, оказавшись внутри текста MS Word, могут вызывать смещение элементов строки по сравнению с оригинальным листингом. Вообще, в пояснительной записке для отображения листинга следует использовать моноширинный шрифт, например, Courier.
Оформление пояснительной записки должно выполняться с применением встроенных средств автоматизации MS Word. В частности, автоматическая нумерация разделов, страниц и рисунков. Ссылки на рисунки необходимо делать также с применением средств автоматизации. Необходимо использовать также в полной мере механизм стилей MS Word для того, чтобы выделить в тексте соответствующие элементы — операторы, операнды и т. д. При описании работы программы следует в полной мере использовать эти возможности оформления. В данном случае студент получает не только навыки составления текста, но и его оформления. Количество таких выделений небольшое, а потому данная работа вполне уместна и не займёт у студента много времени. В то же время, нарабатывание таких оформительских навыков положительно сказывается на повышении производительности труда инженера.
3 Защита курсового проекта и его оценка Защита курсового проекта включает три этапа его оценивания преподавателем.
Первый этап оценивания проходит в форме консультаций, когда студент вправе показывать преподавателю проект с ошибками. На этом этапе допускается исправление ошибок, улучшение программы. Преподаватель может подсказывать студенту общие идеи решений, но студент сам должен находить пути их реализации. На этом этапе преподаватель старается оценить способность студента к самостоятельной работе, умение самообучаться, читать литературу, находить интересные решения.
Второй этап оценивания связан с получением результатов моделирования. В данном случае оценивается грамотность постановки задачи имитационного моделирования, умение использовать различные встроенные инструменты. Студент должен показать работу программы, объяснить смысл принятых им программистских решений, продемонстрировать работу программы в различных режимах. На этом этапе оценивается конечный результат программирования, способность студента получать требуемые результаты, используя соответствующие встроенныеинструменты GPSS World (окна и т. д.).
Третий этап оценивания сязан с предоставлением отчёта в бумажной копии. В данном случае, после всех "доводок" проекта на первом этапе, проверяется правильность оформления, грамотность формулировок, соответствие оформлению стуандатрам. На этом эьапе происходит, собственно, защита курсового проекта с предъявлением комиссии (или прподавателю) отчёта в бумажной форме, демонстрацией программы, кратким докладом и ответами на вопросы. Здесь оценивается способность представить свою работу, умение сделать доклад, качество ответов на вопросы. Вопросы могут касаться как практики программирования в GPSS World (применительно к заданию на курсовое проектирование), так и некоторых общетеоретических вопросов, связанных с имитационным моделированием в целом.
Общая оценка слагается из частных оценок, полученных на всех трёх этапах.
4 Задания на курсовое проектирование Задание на курсовое проектирование выбирается из ниже следующих заданий в соответствии с указаниями преподавателя и с учётом своего номера по порядку в списке группы.
Задание 1. Проектный отдел В проектном отделе разрабатывают новые изделия. Этим занимаются проектировщика, каждый из которых специализируется на своём этапе проектирования. Весь процесс проектирования можно разбить на 4 этапа, за каждый из которых отвечает отдельный проектировщик. Задания на проектирование поступают через каждые A±B дней. Проектирование на каждом этапе занимает Ck±Dk дней, где k — номер проектировщика (номер этапа).
Обычно проектирование протекает от 1-го этапа ко 2-му и т. д. Но может прийти срочный заказ и тогда необходимо выполнить в первую очередь его.
1-й проектировщик откладывает выполнявшийся ранее проект и начинает тот час заниматься новым, а остальные пока продолжают заниматься прежними проектами. Когда материалы срочного проекта доходят до очередного проектировщика, он начинает заниматься им, откладывая предыдущую работу.
После окончания срочной работы каждый проектировщик возвращается к своей прежней работе и заканчивает её. Проанализировать работу на 10 проектами, из которых 2 оказываются срочными (выбор — случайным образом).
Два последовательных срочных проекта выстраиваются в очередь.
Задание 2. Турникет на стадионе На стадион болельщики проходят через турникет (три прохода) и двери (2 двери). Между турникетом и дверями имеется коридор, в котором могут скапливаться люди (не более 20 человек). Если коридор заполнен, то контролёр прекращает пропуск людей через турникет. Имеется также некоторое количество (10% от входящих), которые проходят через турникет без очереди, а в двери — по очереди. Интервал появления болельщиков — через каждые A±B секунд, время прохождения через турникет — C±D секунд, время прохождения по коридору — E±F секунд. Промоделировать поток болельщиков в течение 10 минут, оценить возможность образования очередей перед турникетом и перед дверями.
Задание 3. Речной порт Речной порт имеет 4 места для причаливания (4 причала). В порт заходят различные речные суда — некоторые из них небольшие (60% от общего количества судов) и занимают только 1 причал, другие — средние (30% от общего количества судов) и занимают 2 причала, есть также большие суда (10% от общего количества судов), которые одновременно занимают три причала. Суда заходят в порт через каждые A±B часов. Небольшие суда обслуживаются в течение C±D часов, средние суда обслуживаются в течение