Банк рефератов содержит более 364 тысяч рефератов, курсовых и дипломных работ, шпаргалок и докладов по различным дисциплинам: истории, психологии, экономике, менеджменту, философии, праву, экологии. А также изложения, сочинения по литературе, отчеты по практике, топики по английскому.
Полнотекстовый поиск
Всего работ:
364150
Теги названий
Разделы
Авиация и космонавтика (304)
Административное право (123)
Арбитражный процесс (23)
Архитектура (113)
Астрология (4)
Астрономия (4814)
Банковское дело (5227)
Безопасность жизнедеятельности (2616)
Биографии (3423)
Биология (4214)
Биология и химия (1518)
Биржевое дело (68)
Ботаника и сельское хоз-во (2836)
Бухгалтерский учет и аудит (8269)
Валютные отношения (50)
Ветеринария (50)
Военная кафедра (762)
ГДЗ (2)
География (5275)
Геодезия (30)
Геология (1222)
Геополитика (43)
Государство и право (20403)
Гражданское право и процесс (465)
Делопроизводство (19)
Деньги и кредит (108)
ЕГЭ (173)
Естествознание (96)
Журналистика (899)
ЗНО (54)
Зоология (34)
Издательское дело и полиграфия (476)
Инвестиции (106)
Иностранный язык (62792)
Информатика (3562)
Информатика, программирование (6444)
Исторические личности (2165)
История (21320)
История техники (766)
Кибернетика (64)
Коммуникации и связь (3145)
Компьютерные науки (60)
Косметология (17)
Краеведение и этнография (588)
Краткое содержание произведений (1000)
Криминалистика (106)
Криминология (48)
Криптология (3)
Кулинария (1167)
Культура и искусство (8485)
Культурология (537)
Литература : зарубежная (2044)
Литература и русский язык (11657)
Логика (532)
Логистика (21)
Маркетинг (7985)
Математика (3721)
Медицина, здоровье (10549)
Медицинские науки (88)
Международное публичное право (58)
Международное частное право (36)
Международные отношения (2257)
Менеджмент (12491)
Металлургия (91)
Москвоведение (797)
Музыка (1338)
Муниципальное право (24)
Налоги, налогообложение (214)
Наука и техника (1141)
Начертательная геометрия (3)
Оккультизм и уфология (8)
Остальные рефераты (21697)
Педагогика (7850)
Политология (3801)
Право (682)
Право, юриспруденция (2881)
Предпринимательство (475)
Прикладные науки (1)
Промышленность, производство (7100)
Психология (8694)
психология, педагогика (4121)
Радиоэлектроника (443)
Реклама (952)
Религия и мифология (2967)
Риторика (23)
Сексология (748)
Социология (4876)
Статистика (95)
Страхование (107)
Строительные науки (7)
Строительство (2004)
Схемотехника (15)
Таможенная система (663)
Теория государства и права (240)
Теория организации (39)
Теплотехника (25)
Технология (624)
Товароведение (16)
Транспорт (2652)
Трудовое право (136)
Туризм (90)
Уголовное право и процесс (406)
Управление (95)
Управленческие науки (24)
Физика (3463)
Физкультура и спорт (4482)
Философия (7216)
Финансовые науки (4592)
Финансы (5386)
Фотография (3)
Химия (2244)
Хозяйственное право (23)
Цифровые устройства (29)
Экологическое право (35)
Экология (4517)
Экономика (20645)
Экономико-математическое моделирование (666)
Экономическая география (119)
Экономическая теория (2573)
Этика (889)
Юриспруденция (288)
Языковедение (148)
Языкознание, филология (1140)

Курсовая работа: Имитационное моделирование работы парикмахерской

Название: Имитационное моделирование работы парикмахерской
Раздел: Рефераты по экономико-математическому моделированию
Тип: курсовая работа Добавлен 20:14:58 19 января 2011 Похожие работы
Просмотров: 6818 Комментариев: 2 Оценило: 1 человек Средний балл: 5 Оценка: неизвестно     Скачать

Введение

Имитационное моделирование основано на прямом описании моделируемого объекта. Существенной характеристикой таких моделей является структурное подобие объекта и модели. Это значит, каждому существенному с точки зрения решаемой задачи элементу объекта ставится в соответствие элемент модели. При построении имитационной модели описываются законы функционирования каждого элемента объекта и связи между ними. Работа с имитационной моделью заключается в проведении имитационного эксперимента. Процесс, протекающий в модели в ходе эксперимента, подобен процессу в реальном объекте. Поэтому исследование объекта на его имитационной модели сводится к изучению характеристик процесса, протекающего в ходе эксперимента.

В теории систем массового обслуживания (в дальнейшем просто – CMО) обслуживаемый объект называют требованием. В общем случае под требованием обычно понимают з апрос на удовлетворение некоторой потребности, например, обслуживание автомобиля на заправочной станции, раз говор с абонентом, посадка самолета, покупка билета, получение материалов на складе и т д.

На первичное развитие теории массового обслуживания оказали особое влияние работы датского ученого А.К. Эрланга (1878-1929).

Теория массового обслуживания – область прикладной математики, занимающаяся анализом процессов в системах производства, обслуживания, управления, в которых однородные события повторяются многократно, например, на предприятиях бытового обслуживания; в системах приема, переработки и передачи информации; автоматических линиях производства. В теории СМО рассматриваются такие случаи, когда поступление требований происходит через случайные промежутки времени, а продолжительность обслуживания требований не является постоянной, т.е. носит случайный характер. В силу этих причин одним из основных методов математического описания СМО является аппарат теории случайных проц ессов. Основной задачей теории СМО является изучение режима функционирования обслуживающей системы и исследование явлений, возникающих в процессе обслуживания. Так, одной из характеристик обслуживающей системы является время пребывания требования в очереди. Очевидно, что это время можно сократить з а счет увеличения количества обслуживающих устройств. Однако каждое дополнительное устройство требует определенных материальных затрат, при этом увеличивается время бездействия обслуживающего устройства из-з а отсут ствия требований на обслуживание, что также является негативным явлением. Следовательно, в теории СМО воз никают з адачи оптимизации: каким образ ом достичь определенного уровня обслуживания (максимального сокращения очереди или потерь требований) при минимальных затратах, связанных с простоем обслуживающих ус тройств.

Цель курсовой работы по дисциплине «Имитационное моделирование экономических процессов» - ознакомление с современными концепциями построения моделирующих систем, с основными приемами имитационного моделирования, встраиваемыми в общуюпроцедуру преобразования информации от структурирования и формализации составляющих предметных областей до интерпретации обработанных данных и приобретенных знаний, связанных с описанием экономических процессов. Данная работа представляет собой работу по созданию и реализации математической модели системы массового обслуживания для получения необходимых нам результатов на основании исходных данных и известных математических зависимостей.

Целью данной курсовой работы является моделирование работы парикмахерской, создав программу на языке С++, анализ работы парикмахерской; имитирующую работу парикмахеров за определенное время; время и цену обслуживания одного клиента, выручку парикмахерской, средний размер очереди, число отказов и т д.

Глава 1 Теоретический анализ методов решения задачи

1.1 Анализ предметной области

Одной из динамично развивающихся сфер является сфера оказания парикмахерских услуг. Парикмахерская — это предприятие, занимающееся предоставлением услуг для населения по уходу за волосами (стрижка, завивка, создание причёски, окраска, мелирование и другие виды работ с красителями, бритьё и стрижка бород и усов и др.) в оборудованном специально для этого помещении. Как правило, в парикмахерских дополнительно оказываются следующие виды услуг: маникюр, педикюр, косметические услуги и услуги визажиста. В настоящее время в парикмахерской можно получить услуги солярия и косметолога.

Парикмахерские, согласно действующему стандарту, в зависимости от ассортимента и качества оказываемых услуг бывают следующих видов:

· парикмахерская;

· парикмахерская-салон;

· парикмахерская-люкс.

Специалисты, работающие в парикмахерской, называются парикмахерами. Парикмахер , парикмахер-стилист — специалист в области создания стиля человека с помощью причёски. Среди парикмахеров существуют следующие специализации:

· Специалист по мужским стрижкам (мужской мастер).

· Специалист по окрашиванию волос (парикмахер-колорист).

· Специалист по женским прическам (женский мастер).

· Специалиста по мужским и женским стрижкам

Виды услуг, предлагаемые парикмахерами:

· Лечение волос

· Стрижка волос

· Окраска волос (колорирование)

· Укладка волос

1.2 Теоретический обзор методов решения задачи

1.2.1 Метод Монте-Карло

В конце 40-х годов американские физики применили для вычисления на ЭВМ сложных квадратур метод, основанный на вероятностных законах. Этот метод был назван ими методом Монте-Карло , имея в виду Монте-Карло как мировой центр игр, исход которых определяется случаем. Суть метода станет ясной из следующего примера. Предположим, что требуется определить площадь s под некоторой кривой на отрезке , то есть вычислить значение определённого интеграла (1). Это можно сделать следующим образом. Будем выбирать случайные точки в прямоугольнике площадью (см. рис.1) и считать число точек , попавших под кривую . Тогда при общем числе выбранных точек, отношение , очевидно, будет приближённо равным отношению искомой площади под кривой на отрезке к площадипрямоугольника. Откуда искомая площадь может быть вычислена по формулепричём вычисленное таким образом значение будет тем ближе к точному значению интеграла (1), чем больше точек взято и чем более равномерно распределены точки внутри прямоугольника.

Рис.1.Искомая площадь S

Проблема состоит в том, чтобы получить на ЭВМ случайные числа с равномерным распределением. Действительно, ЭВМ представляет собой детерминированное устройство, которое при одних и тех же условиях всегда выдает один и тот же результат.

Одним из очевидно напрашивающихся представляется решение получить случайную последовательность каким-либо из известных физических методов, например с помощью рулетки, какие используются в казино, после чего записать эти случайные числа во внешнюю память ЭВМ с целью последующего использования в программе. Однако это потребовало бы значительных затрат времени для получения достаточно длинной случайной последовательности, с одной стороны, и внешней памяти для её сохранения, с другой. Следует отметить также тот факт, что в момент появления метода ресурсы внешней памяти ЭВМ были весьма ограничены. Другим возможным решением было бы применить непосредственно какой-либо физический метод генерации случайных чисел с помощью специально сконструированного для этих целей подключаемого к ЭВМ аппаратного устройства и далее получать с его помощью случайные числа непосредственно во время работы программы.

В качестве основы для такого устройства можно было бы использовать какой-либо электронный прибор, например электронную лампу, вырабатывающие случайные уровни потенциала, обусловленные тепловыми флуктуациями. Такие устройства могут быть сконструированы, однако возникают проблемы с устойчивостью их работы во времени и при изменении условий окружающей среды; существует также проблема сертификации подобного устройства. В итоге исследователи остановились на более простой и оказавшейся в дальнейшем продуктивной идее генерации вместо случайной так называемой псевдослучайной, последовательности чисел с помощью специально разработанного для этих целей алгоритма.

1.2.2 Метод Неймана

Для получения псевдослучайной последовательности Фон Нейманом был придуман простой в вычислительном отношении алгоритм, известный как метод квадратов . Метод состоит в многократном повторении процедуры, состоящей в возведении в квадрат некоторого числового значения и взятия средних цифр полученного результата. Пусть, например, мы выбрали в качестве исходного значения число . Тогда и , и , и так далее. Однако вскоре у метода обнаружился недостаток, заключающийся в существенной неравномерности статистических частот различных числовых значений элементов получаемой этим методом последовательности.

1.2.3 Мультипликативный конгруэнтный метод

Этот метод основан на рекуррентном вычислении элементов псевдослучайной последовательности как результата выполнения операции сравнения по некоторому заданному основанию. Переход к следующему числу последовательности производится простым умножением результата сравнения на некоторую заданную константу. На практике операции вычисления произведения и взятия сравнения по заданному основанию совмещены. В качестве основания сравнения используется величина , где m– разрядность целочисленного регистра ЭВМ, в котором хранится результат вычисления произведения.

При целочисленном умножении этого результата на заданную константу достаточно большой величины происходит переполнение, вследствие чего в регистре результата сохраняются лишь mмладших разрядов произведения. Это число фактически и будет результатом операции сравнения вычисленного произведения с числом , (напомним, что операцией сравнения по некоторому основанию называется вычисление остатка от деления первого операнда на это основание).

Формально схема вычисления может быть определена следующим образом: = С, (mod), где i-ый член псевдослучайной последовательности, С – некоторая константа, m – разрядность целочисленного регистра ЭВМ. Качество полученной псевдослучайной последовательности зависит от выбранного значения константы С. Установлено, что хороший результат достигается при выборе ее значения равным максимальной нечетной степени числа 5, помещающегося в числовом регистре фиксированной разрядности. Для 32-х разрядного регистра ЭВМ это число будет .

1.2.4 Равномерное распределение

Случайная величина ξ, с равномерным распределением на отрезке [а, b ] описывается функцией плотности вероятности:

P(x)=

ab

Рис.2 Равномерное распределение

Математическое ожидание

Для вычисления дисперсии вначале вычислим математическое ожидание квадрата этой случайной величины:

Теперь:

=

1.2.5 Моделирование дискретной случайной величины

Предположим вначале, что нам требуется смоделировать простейшую дискретную случайную величину, принимающую два значения с равными вероятностями. Эта случайная величина моделирует выбрасывание жребия или монеты. Если мы имеем в своем распоряжении генератор псевдослучайных последовательностей, описанный в предыдущем параграфе, то задача может быть решена следующим, достаточно очевидным, способом. Поскольку псевдослучайное число, получаемое с помощью функции rand(), распределено равномерно в интервале (0,1), то одинаково вероятно, будет ли очередное полученное значение принадлежать левой половине этого интервала [0,0.5) или правой [0.5, 1]. По этой причине мы можем одно из двух значений нашей случайная величина поставить в соответствие первому из этих двух подинтервалов, а в другое – второму, и далее выдавать значения в зависимости от того к какому из этих двух подинтервалов будет принадлежать очередное выпавшее значение генератора rand(). Эта схема, очевидно, легко обобщается на дискретную случайная величина, принимающую более двух значений. За каждым значением мы должны в этом случае «закрепить» некоторый подинтервал значений функции rand() с длиной, равной вероятности этого значения моделируемой дискретной случайная величина, - причем так, чтобы интервалы , закрепленные за различными значениями случайные величины не пересекались бы между собой. Поскольку сумма вероятностей всех значений случайная величина равна 1, и таков же диапазон значений, принимаемых псевдослучайной величиной, генерируемой функцией rand(), то эти подинтервалы полностью покроют диапазон возможных значений, принимаемых случайная величина, генерируемой функцией rand().

Теперь мы должны лишь всякий раз определять, к какому из множеству выбранных указанным выше образом подинтервалов принадлежит очередное выданное функцией rand() значение, и выдавать соответствующее ему значение моделируемой дискретной случайная величина.

Формально этот метод может быть представлен в следующем виде. Пусть – случайная величина, равномерно распределенная на отрезке [0,1] (в нашем случае – это результат очередного выполнения функции rand()) и – моделируемая дискретная случайная величина с распределением . Тогда мы выдаем по получении очередного значения g случайной величины такое значение дискретной случайной величины , для которого верно двойное неравенство . Этим исчерпывается решение задачи моделирования дискретной случайной величины с заданным распределением. Вышеприведенный алгоритм легко реализуется программно, - например так, как в нижеприведенной функции intdiscrete (floatp[]):

unsigned int discrete (float p[])

{

float s, r;

int k=0;

s=p[0]; r=rand();

while (s < r)

{

k++;

s=s+p[k];

}

return k;

}

Функция принимает массив вероятностей моделируемой дискретной случайной величины и выдает индекс очередного ее сгенерированного значения. Следует учесть, что поскольку индексация массивов в языке С начинается с нуля, также с нуля индексируются значения разыгрываемой случайной величины. То есть функция выдает значения в диапазоне от 0 до к-1 для дискретной случайной величины, принимающей к значений. Ниже для иллюстрации приведен ряд из 100 значений выданных программой, использующей вызов данной функции для массива вероятностей p={0.5, 0.5}:

0 1 1 1 0 0 0 1 1 1 1 1 1 0 1 0 0 1 1 0 1 1 0 0 0 0 0 1 0 1 0 0 0

1 0 1 0 0 1 0 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0

1 0 1 0 1 1 1 0 0 1 1 0 1 0 1 0 0 1 1 1 1 0 0 0 0 1 0 1 0 0 0 0 1

1.2.6 Моделирование случайной величины, равномерно распределенной в интервале ( a , b )

Мы используем метод обратной функции для моделирования равномерного и показательного распределений. Решаем уравнение . Для этого, подставив выражение для плотности равномерного распределения на место , вначале вычислим интеграл в левой части уравнения:

,

а затем для вычисления значений u равномерно распределенной в интервале (a,b) случайной величины через значения g случайной величины , равномерно распределенной в интервале (0,1) просто выразим переменную u через переменную g из уравнения :

Заметим, что полученная формула очевидна. Действительно, для пересчета равномерно распределенной в интервале (0,1) случайной величины в случайную величину, равномерно распределенную в интервале (a,b), мы должны вначале «растянуть» диапазон значений единичной длины в диапазон значений (b-a) умножая значения g на (b-a), а затем переместить полученный результат из интервала (0,1) в интервал (a,b), прибавив к нему значение a .

Запись полученной формулы в виде функции языка С:

float uniform (float a, float b) {return rand()*(b-a)+a;}

позволит нам программно генерировать случайные величины с равномерным распределением в любом заданном конечном интервале значений (a,b).

Глава 2 Имитационное моделирование процесса

2.1 Постановка задач (Вариант №2)

Провести имитационное моделирование работы парикмахерской. Количество парикмахеров в парикмахерской – n. Время моделирования –tчасов. Интервал времени между двумя последовательными посещениями парикмахерской клиентами моделировать случайной величиной τ1 с дискретным равномерным распределением в диапазоне значений [τ1 min ,…,τ1 max ] минут. Время обслуживания одного клиента моделировать случайной величиной τ2 с распределением P(τ2 ). Цена обслуживания клиента определяется функцией времени обслуживания вида c=a τ2.

Если в момент прибытия очередного клиента парикмахеры заняты, то клиент помещается в очередь. Максимальная длина очереди 10 чел. Если длина очереди максимальна, то производится отказ в обслуживании очередного клиента.

Рассчитать:

- количество обслуженных клиентов за период моделирования;

- выручку парикмахерской Rза период моделирования;

- средний размер очереди;

- число отказовr.

Параметры модели:

- n=2;

- t=8;

- τ1 min =1, τ1 max =15;

- P(τ2 )=( 10 12 13 14 15 16 17 18 19)

(0,05 0,05 0,05 0,05 0,05 0,2 0,2 0,2 0,15)

(первая строка - значение случайной величины в минутах, вторая - соответствующие вероятности);

- а =3

Определить методом машинного эксперимента параметр τ1 max , максимизирующий выручку Rпри условии r=0. Средство реализации модели – программа на языке С++.

2.2 Общий алгоритм моделирования процесса

Алгоритм имитационного моделирования процессов данного типа структурируется вокруг следующих групп основных компонентов:

1. Организация цикла перебора отсчетов дискретного времени моделирования, т.е. собственно организация процесса как последовательности отдельных состояний системы в дискретном времени;

2. Наполнение этого цикла множеством независимых обработчиков случайных событий происходящих в моделируемой системе.

Таким образом, мы имеем общий способ построения алгоритмов подобного типа, который включает следующие основные компоненты:

1. Анализ событий в системе и проектирование структур данных необходимых для хранения информации связанный с этими событиями;

2. Разработка отдельных алгоритмов обработки этих событий включающих в общем случае модификацию параметров состояния системы и моделирование следующего события того типа, обработка которого производится этим алгоритмом;

Связывание отдельных разработанных выше алгоритмов и структур данных в единой программе.

2.3 Моделирование программы с заданными параметрами

В данной курсовой работе необходимо провести имитационное моделирование работы Парикмахерской. Для моделирования данной задачи мы используем СМО с N обрабатывающими устройствами без очереди с отказами. Алгоритм поставленной задачи, которая рассмотрена в п. 2.2. необходимо реализовать на языке программирования С++.

В качестве параметров модели используем следующие компоненты и макроопределения:

· Т - время моделирования (в мин.);

· RIN - генератор случайного потока поступающих в систему требований;

· RОN - генератор интервалов времени обработки требования обрабатывающим устройством;

· n– общее число мест в кафе.

Исходный текст программы начинается с определения параметров модели и прочих исходных данных. Все они определяются с помощью директивы препроцессора "#define". Макросы RIN и RОN определяют вызовы функций, моделирующих распределение интервалов времени между событиями прихода посетителей и интервалов времени от начала до завершения обслуживания посетителей, соответственно. А макрос Trafik определяет вызов функции, моделирующую средний трафик пользователей. Сами функции моделирования случайных последовательностей, распределенных по различным законам, определены в файле Rand.срр, текст которого подключается к тексту модели процесса с помощью директивы препроцессора "#include" в первой строке текста программной реализации модели. Константа "Т" определяет длительность периода моделирования в единицах дискретного времени моделирования (в минутах). Константа "n" задаёт число обрабатывающих посетителей. ton[i]=-1 определяет специальное значение для элемента массива ton[ ], означающее, что место освободилось (компьютер свободен). Поскольку массив ton[ ] предназначен для хранения моментов времени ухода посетителя, которые могут принимать лишь неотрицательные значения, то в качестве такого, сигнализирующего о незанятости компьютера значения, взято первое неиспользуемое отрицательное число - "-1".

Все переменные определяются как длинные целочисленные переменные. Это связано с тем, что диапазона значений простого типа int - от -32768 до 32767 может быть недостаточно для представления используемых значений данных модели. Далее следует собственно моделирующий алгоритм:

1 .Инициализация переменных:

1.1. Инициализация массива ton[ ] – все парикмахеры помечаются как свободные присваиванием элементам массива значения "-1":

" for(i=0;i<N;i++) ton[i]=-1;";

2. Цикл перебора дискретных отсчётов времени периода моделирования:

2.1. Определение числа итераций цикла перебора дискретных отсчётов периода моделирования: "for(j=0;j<N;j++)" и вход в тело цикла “{“;

2.1.1 .Обработка ухода посетителя парикмахерской:

2. 1.1.1. Определение числа итераций цикла перебора устройств:

"for(i=0;i<N;i++)". Если текущий момент времени t сов-

падает с уходом посетителя ton[i]: “if(ton[j]==i)”, и вход

в тело цикла “{”,

2.1.1.1.1. освобождение места (парикмахера): “ ton[j]=-1;”;

2. 1.1. 2. 2. увеличение на единицу числа обслуживаемых

посетителей: "nPos++";

2. 1.1.3. Конец цикла 2.1.1.1.: "}".

2.1.2. Обработка прихода нового посетителя:

2. 1.2.1. Поиск первого свободного обрабатывающего устройства:

"j=0; while(ton[j]!=-1) j++;

2. 1.2.2. Генерация момента прихода в парикмахерскую нового посетителя и сохранение его в переменной tin: “tin=ceil(RIN)+i;”

2.2. Конец блока цикла 2.1.: "}".

3. Завершение процесса моделирования:

3.1. Вывод результатов моделирования.

2.4 Разработка программной реализации алгоритма

В данном разделе мы разрабатываем программную реализацию имитационного моделирования работы Парикмахерской. Помимо общих переменных, которые были описаны выше в п.2.3., в этом разделе можно описать и частные переменные, которые используются в программе, разработанной на языке программирования С++:

В программной реализации используются следующие частные переменные:

· i , j - используются для хранения вспомогательных индексных значений;

· t - дискретные отсчёты времени периода моделирования;

· tin – входящий поток, время прихода посетителя (момент поступления в систему следующего требования);

· ton [ ] - моменты завершения обработки требований соответствующими элементам массива обрабатывающими устройствами, то есть массив для сохранения интервалов времени ухода посетителей;

· Cena –цена обслуживания клиента;

· r – число отказов пользователям;

· m – число обслуженных посетителей;

R -выручка парикмахерской за период моделирования

Программная реализация алгоритма производится в несколько этапов:

1. Подключение в программу заголовочных файлов:

# include //включение в программу текстов заранее подготовленных файлов

# include < iostream . h > //содержит потоки данных ввода/вывода

# include < math . h > //хранятся математически функции

#include<conio.h> //

#include<stdlib.h> //

# include <values.h> //содержит описания данных

# define //определение параметров модели и прочих исходных данных на глобальном уровне, описанной в п.

#define RCLIENTS x1[discrete(p1)]

float x1[]={7,8,9,10,11,12,13,14,15};

float p1[]={0.05, 0.05, 0.05, 0.2, 0.2, 0.2, 0.05, 0.05, 0.15};

#define CENA x2[discrete(p2)]

floatx 1[]={10,12,13,14,15,16,17,18,19};

floatp 1[]={0.05, 0.05, 0.05, 0.05, 0.05, 0.2, 0.2, 0.2, 0.15};

# defineC (125*125*125*125*5) //объявление мультипликативного конгруэнтного метода, которое описывается в п.1.3.

# definen 2 // общее число парикмахеров

# defineT (8*60*30) // период моделирования (в мин.)

2. Генерация мультипликативным конгруэнтным методом псевдослучайной последовательности чисел:

floatrand(void) //генерация псевдослучайной последовательности с равномерным распределением

{

static unsigned long int u=C;

// static – модификатор для того, чтобы локальная переменная u сохраняла значение между двумя последующими обращениями к этой функции

u=u*C; //С - константа

returnu/float(0xfffffffful); // (0xfffffffful) – максимально беззнаковые целое число, заданное в шестнадцатеричной форме.

}

3. Вызов функций моделирования:

//функция моделирования показательного распределения, описанная в п.1.7.

unsigned int discrete( float p[ ])

{

float s, r;

int k=0;

s=p[ ];

r=rand( );

while (s<r)

{

k++;

s+=s+p[k];

}

returnk;

}

4. Инициализация

unsigned long int i,j,cost, R,r,n,k;

float t, tin;

m=0; k=0; R=0;

5. Запускпрограммы

tin=RIN;

for(i=0;i<T;i++)

6. Обработказавершения

for(j=0;j<N;j++) if(ton[j]==i)

{

m++;

ton[j]=-1;

}

7. Обработка очередного входящего события

if(i==tin)

{

j=0; while((ton[j]!=-1) && (j<N)) j++;

if(j!=N)

{

i=RCLIENTS;

n++;

for(;t<N;i++)

if(rand1()<=P)

{

cost=cost+a*CENA;

k++;

}

} else r++;

tin=RIN+i;

}

}

8. Выводимые результаты :

cout<<"........................ Rezultati modelirovaniya ..............................";

cout<<"1.Posetili parikmakherskuy:"<<n<<" chel"<<endl;

cout<<"2.Iz nikh obclujeno : "<<m<<" chel"<<endl;

cout<<"3. Iz nikh ne obclujeno: "<<r<<endl;

cout<<"5Viruchka sostavila: "<<n*cost<<" rub"<<endl;

getch();

}

2.5 Моделирование программы с заданными параметрами

Запустив программу, написанную на языке С++, мы получили следующие результаты согласно исходным данным:

Рис3. Результат выполнения разработанной программы

При данном количестве парикмахеров– 2, было рассчитано:

· Общее количество посетителей-25 человек;

· Общее количество обслуженных клиентов-20человек;

· Oбщее количество отказов-5 человек;

· Полученная прибыль составила 13690руб.

2.6 Машинный эксперимент с разработанной моделью

В результате машинного эксперимента с разработанной моделью мы получили следующие данные, приведенные в таблице 1:

Таблица 1. Полученные результаты задачи

Количество парикмахеров Общее кол-во посетителей Число обслуженных Число отказов Выручка
1 17 13 4 8398
2 25 20 5 13690
3 45 27 18 17530
4 57 33 24 16890
5 64 43 21 26540
6 78 51 27 23540
7 89 63 26 26540
8 110 76 34 31790
9 124 81 43 37950
10 140 97 43 39890

Изменяя число парикмахеров в салоне, мы получаем следующие графики:

Рис 4. График зависимости дохода Парикмахерской от количества мастеров

По данным таблицы видим что увеличивается с увеличением числа парикмахеров в салоне до7, дальше результат не меняется и остается на постоянном уровне.

Рис.5. График зависимости количества посетителей от числа парикмахеров

Здесь мы можем заметить то же самое, что поток клиентов в салон увеличивается до определенного предела, а после остается не изменным.

Изменяя число отказов поступающим требованиям, получим следующий график:

Рис.6. График зависимости обслуженных требований от числа парикмахеров

Здесь мы видим, что чем больше в салоне мастеров, то тем больше число обслуженных клиентов.

Рис.7. График зависимости отказов поступающим требованиям от числа парикмахеров

Этот график показывает нам, что число отказов поступающим требованиям уменьшается при увеличении числа мастеров в салоне.

Заключение

Одной из наиболее крупных отраслей развития технологий с применением ЭВМ, является математическое моделирование, которое достаточно просто (в отличие от аналогового моделирования) может быть реализовано на ЭВМ разных модификаций и возможностей. Математическое моделирование тесно связано с имитационным моделированием. Одним из разделов математического моделирования являются модели систем массового обслуживания и их изучение.

В данном курсовом проекте была построена имитационная модель процесса работы Парикмахерской с использованием программы С++, которая рассчитывает общий объем полученной выручки, количество обслуженных посетителей, число отказов общее количество посетителей. Результатом данного курсового проекта является имитационная модель работы процесса обслуживания клиентов Парикмахерской. Модель реализована на языке программирования высокого уровня Си++. Текст программы состоит из следующих функций:

Программа является рабочей. Выдает на экран вероятностные и статистические характеристики работы процесса обслуживания клиентов в Парикмахерской в соответствии с постановкой задачи.

На основании проделанной работы, можно сделать следующие выводы:

1. Математическая модель системы массового обслуживания, созданная нами, адекватна реальному объекту;

2. Проведенные исследования показали эффективность нашей модели и способов “приведения её в действие” при определении необходимых нам параметров по сравнению с ручным способом моделирования и расчетов параметров;

3. Созданная модель имеет достаточную, для таких моделей, степень универсальности, т.к. диапазон входных параметров системы можно легко и быстро изменить.

Список использованной литературы

1. Методические указания к выполнению курсового проекта по дисциплине «Имитационное моделирование экономических процессов».- Махачкала,ГОУ ВПО ДГТУ, 2008, 51 стр.

2. «Машинные имитационные эксперименты с моделями экономических систем» под ред. Нейлера;

3. Кеольтон В., Лод А. «Имитационное моделирование. Классика CS» издание 3-е, 2004г.;

4. Варфоломеев В.И. «Алгоритмическое моделирование элементов экономических систем». - М.: Финансы и статистика, 2000г.

5. Клейнрок Л. «Теория массового обслуживания.»-М.: Машиностроение,1979.-432 с.

6. Прицкер А. «Введение в имитационное моделирование»-М.: Мир,1987.-644с.

7. Емельянов А.А.,Власова Е.А., «Имитационное моделирование экономических процессов» - М. Финансы и статистика,2002.

8. Соболь И.М. «Численные методы Монте-Карло».-М.Наука,1973.

9. Бахвалов Н.С. «Численные методы» – М.: Наука, 1973


Приложение

Программа, реализующая моделирование работы Парикмахерской.

#include<iostream.h>

#include<math.h>

#include<conio.h>

#include<stdlib.h>

#include<stdio.h>

#define VACANCY (-1)

#define T (200*8*60)

#define RCLIENTS x1[discrete(p1)]

float x1[]={7,8,9,10,11,12,13,14,15};

float p1[]={0.05,0.05,0.05,0.2,0.2,0.2,0.05,0.05,0.15};

#define RCOST x2[discrete(p2)]

float x2[]={10,12,13,14,15,16,17,18,19};

float p2[]={0.05,0.05,0.05,0.05,0.05,0.2,0.2,0.2,0.15};

#define a 3

#define L 10

#define RAND (125*125*125*125*5)

float rand1(void)

{

static unsigned long int u=RAND;

u*=RAND;

return u/(float(0xFFFFFFFF)+1.0);

}

unsigned int discrete(float p[])

void main (void)

{

unsigned long int i,j,cost,k,n,r,R;

float t,tin;

n=0; k=0; R=0;

for(t=RIN;t<T;t+=RIN)

{

i=RCLIENTS;

n+=i;

for(;i<RCLIENTS;i++)

if(rand1()<=P)

{

cost=cost+a*RCOST;

k++;

}

}

cout<<"Posetili parikmaherskuu"<<n<<"chel"<<endl;

cout<<"Iz nih obslugeno "<<k<<"chel"<<endl;

cout<<"Iz nih ne obslugeno"<<r<<"chel"<<endl;

cout<<"Viruchka"<<R<<"rub"<<endl;

cout<<"Srednei dlina ocheredi"<<L<<"chel"<<endl;

}

Оценить/Добавить комментарий
Имя
Оценка
Комментарии:
Где скачать еще рефератов? Здесь: letsdoit777.blogspot.com
Евгений08:24:30 19 марта 2016
Кто еще хочет зарабатывать от 9000 рублей в день "Чистых Денег"? Узнайте как: business1777.blogspot.com ! Cпециально для студентов!
09:41:02 29 ноября 2015

Работы, похожие на Курсовая работа: Имитационное моделирование работы парикмахерской
... в обучении информационному моделированию учащихся старших классов в ...
Дипломная работа По теме: Использование информационных технологий в обучении информационному моделированию учащихся старших классов в рамках ...
Различают аналитическое и имитационное моделирование.
... преобразований и т.д.). Далее, если поинтересоваться общими закономерностями моделирования в разных науках (безотносительно к математическому аппарату) и поставить на первое место ...
Раздел: Рефераты по педагогике
Тип: дипломная работа Просмотров: 14394 Комментариев: 2 Похожие работы
Оценило: 2 человек Средний балл: 3.5 Оценка: неизвестно     Скачать
Имитационная модель СТО с использованием программы С++
Содержание Введение Глава1. Моделирование систем массового обслуживания 1.1. Структура и параметры эффективности и качества функционирования СМО 1.2 ...
Цель курсовой работы по дисциплине "Имитационное моделирование экономических процессов" - ознакомление с современными концепциями построения моделирующих систем, с основными ...
где Tj (j=1,.,12) - значения независимых случайных величин, равномерно распределенных на интервале (0,1).
Раздел: Рефераты по экономико-математическому моделированию
Тип: курсовая работа Просмотров: 3208 Комментариев: 2 Похожие работы
Оценило: 0 человек Средний балл: 0 Оценка: неизвестно     Скачать
Имитационное моделирование системы массового обслуживания
... имени Н.Э. Баумана (Калужский филиал) Кафедра высшей математики Курсовая работа по курсу "Исследование операций" Имитационное моделирование системы ...
Из теории функций случайных величин известно, что для моделирования случайной величины с любой непрерывной и монотонно возрастающей функцией распределения достаточно уметь ...
Так как по своей сути компьютерное имитационное моделирование представляет собой вычислительный эксперимент, то его наблюдаемые результаты в совокупности должны обладать свойствами ...
Раздел: Рефераты по информатике, программированию
Тип: курсовая работа Просмотров: 6203 Комментариев: 3 Похожие работы
Оценило: 1 человек Средний балл: 5 Оценка: неизвестно     Скачать
Разработка имитационной модели
Содержание 1. Введение 2. Постановка задачи 3. Описание метода решения 4. Разработка модели 4.1 Логико-математическое описание моделируемой системы 4 ...
Имитационное моделирование основано на прямом описании моделируемого объекта.
Для формального представления информационной системы при имитационном моделировании обычно используется схема с дискретными событиями.
Раздел: Рефераты по информатике, программированию
Тип: курсовая работа Просмотров: 3176 Комментариев: 2 Похожие работы
Оценило: 1 человек Средний балл: 5 Оценка: неизвестно     Скачать
Разработка и исследование имитационной модели разветвленной СМО ...
Аннотация к работе "Разработка и исследование имитационной модели разветвленной СМО (системы массового обслуживания) в среде VB5" Работа посвящена ...
При имитационном моделировании поэтапно имитируется (с использованием генератора случайных чисел) весь описанный процесс: моделируются входной поток и потоки обслуживаний ...
Функции Rnorm(MT As Single, DT As Single) и Rexp(T As Single) преобразуют случайную величину X, равномерно распределенную на интервале (0;1) - Rnd, в случайную величину Y ...
Раздел: Рефераты по радиоэлектронике
Тип: реферат Просмотров: 2594 Комментариев: 4 Похожие работы
Оценило: 0 человек Средний балл: 0 Оценка: неизвестно     Скачать
Теория организации и системный анализ
ЧУЗ-ИДА Кривой Рог PEI-IBM Частное Учебное Заведение Институт Делового Администрирования Private Educational Institution Institute of Business ...
Так, например: пол встреченного нами человека может быть женским или мужским (дискретная случайная величина); его рост также может быть различным, но это уже непрерывная случайная ...
Статистические методы в имитационном моделировании
Раздел: Рефераты по теории организации
Тип: реферат Просмотров: 1445 Комментариев: 2 Похожие работы
Оценило: 0 человек Средний балл: 0 Оценка: неизвестно     Скачать
Моделирование на GPSS
ОСНОВЫ МОДЕЛИРОВАНИЯ НА GPSS/PC ОГЛАВЛЕНИЕ ВВЕДЕНИЕ . 1 1. ОБЩИЕ СВЕДЕНИЯ О GPSS/PC . 2 2. ОСНОВНЫЕ БЛОКИ GPSS/PC И СВЯЗАННЫЕ С НИМИ ОБЪЕКТЫ .
имитационного моделирования [1-6].
языках моделирования близки к описаниям моделируемых систем на
Раздел: Рефераты по информатике, программированию
Тип: реферат Просмотров: 1507 Комментариев: 5 Похожие работы
Оценило: 0 человек Средний балл: 0 Оценка: неизвестно     Скачать
Моделирование систем управления
Оглавление. Введение. 1. Основные принципы моделирования систем управления. 1.1. Принципы системного подхода в моделировании систем управления. 1.2 ...
В случае имитационной модели необходимо обеспечить создание информационного, математического, технического и программного обеспечении системы моделирования.
В зависимости от характера изучаемых процессов в системе S все виды моделирования могут быть разделены на детерминированные и стохастические, статические и динамические, дискретные ...
Раздел: Рефераты по менеджменту
Тип: курсовая работа Просмотров: 7330 Комментариев: 2 Похожие работы
Оценило: 1 человек Средний балл: 5 Оценка: неизвестно     Скачать
Использование метода ветвей и границ при адаптации рабочей нагрузки к ...
МИНИСТЕРСТВО ОБРАЗОВАНИЯ РЕСПУБЛИКИ БЕЛАРУСЬ "Гомельский государственный университет имени Франциска Скорины" Математический факультет Кафедра МПУ ...
Для пояснения целесообразно обратиться к рис. 1, на котором весь набор случайных чисел представляется в виде точек отрезка [0,1]. Вероятность попадания случайной величины ѭ ...
В связи с этим в машине можно реализовать дискретную совокупность случайных чисел, т.е. конечное множество чисел, имеющих равномерный закон распределения.
Раздел: Рефераты по информатике, программированию
Тип: курсовая работа Просмотров: 967 Комментариев: 2 Похожие работы
Оценило: 0 человек Средний балл: 0 Оценка: неизвестно     Скачать

Все работы, похожие на Курсовая работа: Имитационное моделирование работы парикмахерской (1592)

Назад
Меню
Главная
Рефераты
Благодарности
Опрос
Станете ли вы заказывать работу за деньги, если не найдете ее в Интернете?

Да, в любом случае.
Да, но только в случае крайней необходимости.
Возможно, в зависимости от цены.
Нет, напишу его сам.
Нет, забью.



Результаты(151098)
Комментарии (1843)
Copyright © 2005-2016 BestReferat.ru bestreferat@mail.ru       реклама на сайте

Рейтинг@Mail.ru