Автор работы: Пользователь скрыл имя, 22 Мая 2013 в 22:47, курсовая работа
Следует отметить, что с точки зрения философии моделирование — эффективное средство познания природы. Процесс моделирования предполагает наличие объекта исследования; исследователя, перед которым поставлена конкретная задача; модели, создаваемой для получения информации об объекте и необходимой для решения поставленной задачи. Причем по отношению к модели исследователь является, по сути дела, экспериментатором, только в данном случае эксперимент проводится не с реальным объектом, а с его моделью. Такой эксперимент для инженера есть инструмент непосредственного решения организационно-технических задач.
Введение
В настоящее время нельзя назвать область человеческой деятельности, в которой в той или иной степени не использовались бы методы моделирования. Особенно это относится к сфере управления различными системами, где основными являются процессы принятия решений на основе получаемой информации.
Моделирование (в широком смысле) является основным методом исследований во всех областях знаний и научно обоснованным методом оценок характеристик сложных систем, используемым для принятия решений в различных сферах инженерной деятельности. Существующие и проектируемые системы можно эффективно исследовать с помощью математических моделей (аналитических и имитационных), реализуемых на современных ЭВМ, которые в этом случае выступают в качестве инструмента экспериментатора с моделью системы.
Обобщенно моделирование можно определить как метод опосредованного познания, при котором изучаемый объект-оригинал находится в некотором соответствии с другим объектом-моделью, причем модель способна в том или ином отношении замещать оригинал на некоторых стадиях познавательного процесса. Стадии познания, на которых происходит такая замена, а также формы соответствия модели и оригинала могут быть различными:
- моделирование как познавательный процесс, содержащий переработку информации, поступающей из внешней среды, о происходящих в ней явлениях, в результате чего в сознании появляются образы, соответствующие объектам;
- моделирование, заключающееся в построении некоторой системы-модели (второй системы), связанной определенными соотношениями подобия с системой-оригиналом (первой системой), причем в этом случае отображение одной системы в другую является средством выявления зависимостей между двумя системами, отраженными в соотношениях подобия, а не результатом непосредственного изучения поступающей информации.
Следует отметить, что с точки зрения философии моделирование — эффективное средство познания природы. Процесс моделирования предполагает наличие объекта исследования; исследователя, перед которым поставлена конкретная задача; модели, создаваемой для получения информации об объекте и необходимой для решения поставленной задачи. Причем по отношению к модели исследователь является, по сути дела, экспериментатором, только в данном случае эксперимент проводится не с реальным объектом, а с его моделью. Такой эксперимент для инженера есть инструмент непосредственного решения организационно-технических задач.
Данный курсовой проект посвящен моделированию одноканальной системы массового обслуживания с ожиданием и приоритетами. Необходимо определить коэффициенты использования, в течение которых система была занята обработкой клиентов.
Темой данного курсового проекта является моделирование одноканальной системы массового обслуживания с ожиданием и приоритетами.
В курсовом проекте необходимо разработать модель системы. В процессе реализации данного курсового проекта необходимо спроектировать модель системы в виде Q-схемы, построить граф состояний. Разработку требуется производить при помощи системы GPSS, MATLAB или иных языков программирования высокого уровня.
Исходные данные к проекту следующие: В организацию обращаются клиенты А, В и С. Приоритеты по обслуживанию, то есть то, в каком порядке обслуживаются клиенты, определены соответственно от высшего к низшему. Одна заявка обслуживается за 1 день. Клиент А приходит в организацию через 3 дня, В – через 4 дня, а клиент С приходит через 10 дней. Смоделировать работу организации по обслуживания клиентов.
Если оценить возможности языка MatLab, то можно сделать вывод, что использование MatLab при моделировании обеспечивает большую гибкость и контроль за параметрами модели. Использование визуальной среды MatLab обеспечивает удобный и понятный интерфейс программы.
Альтернативой GPSS является язык SimuLink , но он направлен в большей степени на моделирование физических процессов и создания математических моделей и для решения поставленной задачи будет слишком громоздким.
В ходе анализа языков программирования выявлены следующие преимущества языка GPSS над другими:
1) Большой плюс этого языка в том, что он ориентирован на имитационное моделирование.
2) В нем присутствует большое количество готовых блоков для решения задачи моделирования, что значительно сокращает код программы, так же названия блоков семантически понятны и не должны вызывать особых проблем при прочтении текста программы человеком, не занимающимся программированием.
3) GPSS в результате моделирования выдает подробный отчет без применения усилий со стороны разработчика, это свойство дает большое преимущество данной среде моделирования, относительно языков высокого уровня, в которых вывод результатов полностью зависит от умений программиста/
Недостаток GPSS в невозможности работы приложения на персональном компьютере, где не установлен этот язык. Этот недостаток очень существенен, так как не всегда имеется возможность установить на ЭВМ дополнительное программное обеспечение. В свою очередь, в языках программирования высокого уровня практически отсутствует эта проблема.
Анализируя возможности альтернативных сред моделирования принято решение выполнять работу в среде GPSS.
2. Составление математической модели
Из анализа технического задания следует, что модель должна состоять из трех основных блоков:
- обработка клиентов типа А;
- обработка клиентов типа В;
В результате проведения
моделирования системы
- коэффициент использования устройства;
- среднее время одного обслуживания.
В первом блоке осуществляется прием поступающих в систему клиентов типа А. Причем эти клиенты имеют наивысший приоритет. Клиенты в первом блоке при наличии свободного канала, обрабатываются системой. Генерация клиентов происходит каждые 3 дня, а обработка клиентов происходит за 1 день. Во втором блоке происходит следующая последовательность действий. Клиенты при наличии свободного канала и отсутствии клиентов типа А, обрабатываются системой. Генерация клиентов происходит каждые 4 дня, а обработка клиентов происходит за 1 день. В третьем блоке клиенты при наличии свободного канала и отсутствии клиентов первого и второго типа, обрабатываются системой. Генерация клиентов происходит каждые 10 дней, а обработка клиентов происходит за 1 день.
Модель описанной выше системы можно представить в виде следующей Q-схемы (см. рисунок 1).
Рисунок 1 – Q-схема модели одноканальной СМО
На рисунке 1 символ К – клиенты, Rem – канал обслуживания.
Данную систему можно представить в виде графа состояний (рисунок 2).
Модель одноканальная без очереди ожидания.
λ
µ
µ – интенсивность обслуживания заявок
λ – интенсивность поступления заявок
Опишем состояния системы:
S0 – заявок нет, канал свободен
S1 – 1 заявка обслуживается, один канал занят
В программе (см. Приложение А) генерация клиентов осуществляется блоком Generate, где первым параметром является период генерации, т.е. время, по истечении которого на обслуживание поступает новый клиент. По заданию оно равно 3; 4; 10 дней в зависимости от типа клиента. Второй параметр задает интервал времени, из которого случайным образом выбирается значение, на которое будет увеличен, или уменьшен период генерации. Этот интервал составляет 2; 5 или 1 день. Последний параметр задает приоритет обслуживания клиентов. Затем все клиенты встают в очередь Line. После чего происходит принятие заявок в канал обслуживания и само тестирование описывается блоком Advance, где временные параметры указываются таким же образом, как и в блоке Generate. Время тестирования – 3 дня.
Канал перед обработкой проверяется на занятость блоком TEST.
После обработки всех трех блоков необходимо промоделировать работу системы в течение года и запустить процесс моделирования.
3. Описание языка моделирования
Успех или неудача проведения имитационных экспериментов с моделями сложных систем существенным образом зависит от инструментальных средств, используемых для моделирования, т. е. набора аппаратно-программных средств, представляемых пользователю-разработчику или пользователю-исследователю машинной модели. В настоящее время существует большое количество языков имитационного моделирования — специальных языков программирования имитационных моделей на ЭВМ — и перед разработчиком машинной модели возникает проблема выбора языка, наиболее эффективного для целей моделирования конкретной системы. Языки моделирования заслуживают пристального внимания, так как, во-первых, число существующих языков и систем моделирования превышает несколько сотен и необходимо научиться ориентироваться в них, а во-вторых, почти каждый новый язык моделирования не только является средством, облегчающим доведение концептуальной модели до готовой машинной моделирующей программы, но и представляет собой новый способ видения мира, т.е. построения моделей реальных систем. Необходимость эффективной реализации имитационных моделей предъявляет все более высокие требования как к инструментальным ЭВМ, так и к средствам организации информации в ЭВМ при моделировании. Поэтому с учетом использования новой информационной технологии в процессе моделирования следует учитывать особенности построения баз знаний и банков данных и систем управления ими.
Язык программирования представляет собой набор символов, распознаваемых ЭВМ и обозначающих операции, которые можно реализовать на ЭВМ. На низшем уровне находится основной язык машины, программа на котором пишется в кодах, непосредственно соответствующих элементарным машинным действиям (сложение, запоминание, пересылка по заданному адресу и т. д.). Следующий уровень занимает автокод (язык АССЕМБЛЕРА) вычислительной машины. Программа на автокоде составляется из мнемонических символов, преобразуемых в машинные коды специальной программой - ассемблером.
Компилятором называется программа, принимающая инструкции, написанные на алгоритмическом языке высокого уровня, и преобразующая их в программы на основном языке машины или на автокоде, которые в последнем случае транслируются еще раз с помощью ассемблера.
Интерпретатором называется программа, которая, принимая инструкции входного языка, сразу выполняет соответствующие операции в отличие от компилятора, преобразующего эти инструкции в запоминающиеся цепочки команд. Трансляция происходит в течение всего времени работы программы, написанной на языке интерпретатора. В отличие от этого компиляция и ассемблирование представляют собой однократные акты перевода текста с входного языка на объектный язык машины, после чего полученные программы выполняются без повторных обращений к транслятору.
Программа, составленная в машинных кодах или на языке АССЕМБЛЕРА, всегда отражает специфику конкретной ЭВМ. Инструкции такой программы соответствуют определенным машинным операциям и, следовательно, имеют смысл только в той ЭВМ, для которой они предназначены, поэтому такие языки называются машинно-ориентированными языками.
Большинство языков интерпретаторов и компиляторов можно классифицировать как процедурно-ориентированные языки. Эти языки качественно отличаются от машинно-ориентированных языков, описывающих элементарные действия ЭВМ и не обладающих проблемной ориентацией. Все процедурно-ориентированные языки предназначены для определенного класса задач, включают в себя инструкции, удобные для формулировки способов решения типичных задач этого класса. Соответствующие алгоритмы программируются в обозначениях, не связанных ни с какой ЭВМ.
Язык моделирования представляет собой процедурно-ориентированный язык, обладающий специфическими чертами. Основные языки моделирования разрабатывались в качестве программного обеспечения имитационного подхода к изучению процесса функционирования определенного класса систем.
Практика моделирования систем показывает, что именно использование ЯИМ (языков имитационного моделирования) во многом определило успех имитации как метода экспериментального исследования сложных реальных объектов.
Рисунок 3 – Типовая схема архитектуры языков имитационного моделирования.
Языки моделирования позволяют описывать моделируемые системы в терминах, разработанных на базе основных понятий имитации. До того как эти понятия были четко определены и формализованы в ЯИМ, не существовало единых способов описания имитационных задач, а без них не было связи между различными 146 разработками в области постановки имитационных экспериментов.
Высокоуровневые языки моделирования являются удобным средством общения заказчика и разработчика машинной модели.