Иммитационное моделирование работы магазина
Разработчикам и пользователям вычислительных систем (ВС) приходится решать задачи оценки различных вариантов организации вычислительного процесса в ВС, поиска оптимальной структуры ВС, состава и конфигурации оборудования и операционной системы (ОС) при различных потоках заявок на оборудование. Аналитические методы подобных расчетов базируются на упрощенных математических моделях и позволяют… Читать ещё >
Иммитационное моделирование работы магазина (реферат, курсовая, диплом, контрольная)
1. Задание.
Выполнить моделирование работы магазина, торгующего 20 видами товаров. Для каждого вида товаров, средний интервал прихода покупателей равномерно распределен в интервале от 20 до 70 минут. Среднее количество денег, расходуемых на каждый вид товаров, равномерно распределено в интервале от 1 до 10 гривен. Поступление каждого вида товаров имеет средний интервал в 100 раз больший, чем интервал прихода покупателей за этим товаром, а средняя величина поставки товара (в гривнах), в 100 раз больше, средней цены покупки этого вида товара. Промоделировать обслуживание заданного числа.
2. Текст модели.
3. Последняя статистика по модели Выводы.
Введение
Тема контрольной работы по дисциплине «Компьютерное моделирование процессов и систем» «Иммитационное моделирование работы магазина».
Разработчикам и пользователям вычислительных систем (ВС) приходится решать задачи оценки различных вариантов организации вычислительного процесса в ВС, поиска оптимальной структуры ВС, состава и конфигурации оборудования и операционной системы (ОС) при различных потоках заявок на оборудование. Аналитические методы подобных расчетов базируются на упрощенных математических моделях и позволяют определить только порядок результатов. Поэтому сейчас все шире распространяются методы имитационного программирования. Построение имитационных моделей ВС требует, с одной стороны, детального знания их структуры и функциональных особенностей, а с другой — наличия подходящих средств их отражения в модели.
Наиболее удобными и эффективными для целей моделирования представляются специализированные языки, предоставляющие разработчику модели широкий выбор средств описания моделей, а также сервисных средств, что облегчает конструирование модели и эксперименты с ней.
Цель контрольной работы состоит в углублении практических навыков в области имитационного моделирования систем с использованием языка GРSS. Этот язык предназначен для моделирования преимущественно дискретных систем массового обслуживания, к которым относятся и ВС.
Основная цель работы: научиться решать задачи моделирования систем массового обслуживания средней сложности.
1. Задание Выполнить моделирование работы магазина, торгующего 20 видами товаров. Для каждого вида товаров, средний интервал прихода покупателей равномерно распределен в интервале от 20 до 70 минут. Среднее количество денег, расходуемых на каждый вид товаров, равномерно распределено в интервале от 1 до 10 гривен.
Поступление каждого вида товаров имеет средний интервал в 100 раз больший, чем интервал прихода покупателей за этим товаром, а средняя величина поставки товара (в гривнах), в 100 раз больше, средней цены покупки этого вида товара.
Промоделировать обслуживание заданного числа покупателей, например, 15 000.
Реальные интервалы прихода покупателей за товаром, распределены по экспоненциальному закону относительно средней величины. Реальные интервалы поставки распределены по равномерному закону с заданным средним значением, и отклонением в 20% от среднего.
Реальные затрата на покупку и поставку складывается из половины от среднего и добавки еще в половину, распределенную по экспоненциальному закону. Определить суммарную стоимость всех покупок и всех поступлений, а также разницу между ними.
2. Текст модели Текст модели может выглядеть следующим образом:
baseintp equ 1000.
basenum equ 2000.
basenummag equ 3000.
; shop.
;покупатели.
generate 0,0,0,20.
assign intp,(uniform (1,20,70)).
assign num,(uniform (1,1,10)).
savevalue tmp+, 1.
assign tip, X$tmp.
savevalue (baseintp+X$tmp),(p$intp#100).
savevalue (basenum+X$tmp),(p$num#100).
rret advance (exponential (1,0,p$intp)).
split 1, rret.
assign 1,(basenummag+p$tip).
assign 2,(exponential (1,p$num/2,P$num/2)).
test le p2, x*1,next.
savevalue p1-, p2.
savevalue sumout+, p$num.
next buffer.
savevalue delta,(x$sumin-x$sumout).
terminate 1.
; завоз.
generate 0,0,0.1,20.
savevalue tmp1+, 1.
assign 1,(baseintp+x$tmp1).
assign 2,(basenum+x$tmp1).
assign intp,(x*1).
assign num, x*2.
assign tip, X$tmp1.
rret1 advance (exponential (1,0,p$intp)).
split 1, rret1.
assign 1,(basenummag+p$tip).
assign 2,(exponential (1,p$num/2,P$num/2)).
savevalue p1,(x*1+p2).
buffer.
savevalue sumin+, p2.
terminate.
start 15 000.
reset.
start 15 000.
reset.
start 15 000.
reset.
start 15 000.
3. Последняя статистика по модели Последняя статистика по модели будет выглядеть следующим образом:
GPSS World Simulation Report — sample.32.4.
Friday, May 14, 2004 07:33:25.
START TIME END TIME BLOCKS FACILITIES STORAGES.
95 636.524 127 422.725 32 0 0.
NAME VALUE.
BASEINTP 1000.000.
BASENUM 2000.000.
BASENUMMAG 3000.000.
DELTA 10 008.000.
INTP 10 003.000.
NEXT 15.000.
NUM 10 004.000.
RRET 8.000.
RRET1 25.000.
SUMIN 10 009.000.
SUMOUT 10 010.000.
TIP 10 006.000.
TMP 10 005.000.
TMP1 10 007.000.
LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY.
1 GENERATE 0 0 0.
2 ASSIGN 0 0 0.
3 ASSIGN 0 0 0.
4 SAVEVALUE 0 0 0.
5 ASSIGN 0 0 0.
6 SAVEVALUE 0 0 0.
7 SAVEVALUE 0 0 0.
RRET 8 ADVANCE 15 020 20 0.
9 SPLIT 15 000 0 0.
10 ASSIGN 15 000 0 0.
11 ASSIGN 15 000 0 0.
12 TEST 15 000 0 0.
13 SAVEVALUE 13 669 0 0.
14 SAVEVALUE 13 669 0 0.
NEXT 15 BUFFER 15 000 0 0.
16 SAVEVALUE 15 000 0 0.
17 TERMINATE 15 000 0 0.
18 GENERATE 0 0 0.
19 SAVEVALUE 0 0 0.
20 ASSIGN 0 0 0.
21 ASSIGN 0 0 0.
22 ASSIGN 0 0 0.
23 ASSIGN 0 0 0.
24 ASSIGN 0 0 0.
RRET1 25 ADVANCE 192 20 0.
26 SPLIT 172 0 0.
27 ASSIGN 172 0 0.
28 ASSIGN 172 0 0.
29 SAVEVALUE 172 0 0.
30 BUFFER 172 0 0.
31 SAVEVALUE 172 0 0.
32 TERMINATE 172 0 0.
SAVEVALUE RETRY VALUE.
1001 0 6404.955.
1002 0 2111.915.
1003 0 5940.275.
1004 0 4172.845.
1005 0 6817.275.
1006 0 4649.720.
1007 0 5588.615.
1008 0 5273.505.
1009 0 5506.080.
1010 0 6828.505.
1011 0 4461.570.
1012 0 5484.610.
1013 0 5590.495.
1014 0 2543.760.
1015 0 2567.830.
1016 0 4634.950.
1017 0 5193.640.
1018 0 6260.355.
1019 0 2040.820.
1020 0 4638.690.
2001 0 334.444.
2002 0 953.733.
2003 0 660.581.
2004 0 937.454.
2005 0 324.653.
2006 0 163.080.
2007 0 594.535.
2008 0 772.295.
2009 0 331.157.
2010 0 238.095.
2011 0 746.220.
2012 0 164.759.
2013 0 351.530.
2014 0 891.475.
2015 0 471.646.
2016 0 810.014.
2017 0 966.023.
2018 0 133.113.
2019 0 739.168.
2020 0 956.109.
3001 0 1771.310.
3002 0 3118.466.
3003 0 1011.787.
3004 0 4530.221.
3005 0 357.841.
3006 0 1392.925.
3007 0 1973.228.
3008 0 5053.080.
3009 0 552.172.
3010 0 0.598.
3011 0 3937.707.
3012 0 935.779.
3013 0 625.270.
3014 0 4736.679.
3015 0 10 033.071.
3016 0 0.618.
3017 0 4395.957.
3018 0 601.167.
3019 0 4198.037.
3020 0 11 921.806.
TMP 0 20.000.
TMP1 0 20.000.
DELTA 0 60 938.868.
SUMIN 0 399 641.893.
SUMOUT 0 338 703.025.
FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE.
60 677 0 127 423.320 3 8 9.
INTP 21.119.
TIP 2.000.
NUM 9.537.
60 673 0 127 427.925 13 8 9.
INTP 54.846.
NUM 1.648.
TIP 12.000.
60 661 0 127 432.117 12 8 9.
INTP 44.616.
TIP 11.000.
NUM 7.462.
60 669 0 127 433.071 10 8 9.
INTP 55.061.
NUM 3.312.
TIP 9.000.
60 670 0 127 440.907 20 8 9.
INTP 20.408.
TIP 19.000.
NUM 7.392.
60 675 0 127 441.767 9 8 9.
INTP 52.735.
NUM 7.723.
TIP 8.000.
60 660 0 127 446.699 21 8 9.
INTP 46.387.
NUM 9.561.
TIP 20.000.
60 658 0 127 449.963 15 8 9.
INTP 25.438.
NUM 8.915.
TIP 14.000.
60 674 0 127 453.320 1 8 9.
INTP 64.050.
NUM 3.344.
TIP 1.000.
60 638 0 127 453.990 18 8 9.
INTP 51.936.
NUM 9.660.
TIP 17.000.
60 659 0 127 457.240 8 8 9.
INTP 55.886.
NUM 5.945.
TIP 7.000.
60 671 0 127 457.864 19 8 9.
INTP 62.604.
TIP 18.000.
NUM 1.331.
60 644 0 127 475.255 5 8 9.
INTP 41.728.
TIP 4.000.
NUM 9.375.
60 678 0 127 480.770 6 8 9.
INTP 68.173.
NUM 3.247.
TIP 5.000.
60 676 0 127 482.678 16 8 9.
INTP 25.678.
NUM 4.716.
TIP 15.000.
60 665 0 127 494.309 11 8 9.
INTP 68.285.
NUM 2.381.
TIP 10.000.
60 649 0 127 498.513 17 8 9.
INTP 46.349.
NUM 8.100.
TIP 16.000.
60 633 0 127 499.227 14 8 9.
INTP 55.905.
TIP 13.000.
NUM 3.515.
57 089 0 127 503.863 38 25 26 1 1018.000.
2 2018.000.
INTP 6260.355.
TIP 18.000.
NUM 133.113.
60 583 0 127 509.408 4 8 9.
INTP 59.403.
NUM 6.606.
TIP 3.000.
60 672 0 127 589.550 7 8 9.
INTP 46.497.
NUM 1.631.
TIP 6.000.
60 282 0 127 967.620 22 25 26 1 1002.000.
2 2002.000.
INTP 2111.915.
NUM 953.733.
TIP 2.000.
47 507 0 128 140.437 36 25 26 1 1016.000.
2 2016.000.
INTP 4634.950.
TIP 16.000.
NUM 810.014.
60 155 0 128 992.238 35 25 26 1 1015.000.
2 2015.000.
INTP 2567.830.
NUM 471.646.
TIP 15.000.
60 326 0 129 127.090 34 25 26 1 1014.000.
2 2014.000.
INTP 2543.760.
TIP 14.000.
NUM 891.475.
58 659 0 129 370.529 27 25 26 1 1007.000.
2 2007.000.
INTP 5588.615.
TIP 7.000.
NUM 594.535.
60 146 0 130 053.205 24 25 26 1 1004.000.
2 2004.000.
INTP 4172.845.
TIP 4.000.
NUM 937.454.
59 945 0 130 360.030 29 25 26 1 1009.000.
2 2009.000.
INTP 5506.080.
NUM 331.157.
TIP 9.000.
47 089 0 130 437.748 30 25 26 1 1010.000.
2 2010.000.
INTP 6828.505.
NUM 238.095.
TIP 10.000.
60 563 0 130 704.906 39 25 26 1 1019.000.
2 2019.000.
INTP 2040.820.
TIP 19.000.
NUM 739.168.
59 842 0 131 372.702 37 25 26 1 1017.000.
2 2017.000.
INTP 5193.640.
TIP 17.000.
NUM 966.023.
59 850 0 132 168.432 33 25 26 1 1013.000.
2 2013.000.
INTP 5590.495.
NUM 351.530.
TIP 13.000.
58 645 0 132 253.017 2 25 26 1 1001.000.
2 2001.000.
INTP 6404.955.
TIP 1.000.
NUM 334.444.
55 442 0 132 525.520 32 25 26 1 1012.000.
2 2012.000.
INTP 5484.610.
TIP 12.000.
NUM 164.759.
57 722 0 132 939.817 26 25 26 1 1006.000.
2 2006.000.
INTP 4649.720.
TIP 6.000.
NUM 163.080.
59 207 0 134 420.835 31 25 26 1 1011.000.
2 2011.000.
INTP 4461.570.
TIP 11.000.
NUM 746.220.
57 466 0 134 731.483 28 25 26 1 1008.000.
2 2008.000.
INTP 5273.505.
TIP 8.000.
NUM 772.295.
57 039 0 134 861.994 23 25 26 1 1003.000.
2 2003.000.
INTP 5940.275.
NUM 660.581.
TIP 3.000.
58 047 0 135 849.297 40 25 26 1 1020.000.
2 2020.000.
INTP 4638.690.
NUM 956.109.
TIP 20.000.
55 932 0 136 006.464 25 25 26 1 1005.000.
2 2005.000.
INTP 6817.275.
NUM 324.653.
TIP 5.000.
Выводы Для построения модели понадобилось 3 группы X — параметров, по 20 параметров каждая. Эти параметры сохраняют средний интервал поступления каждого товара, среднюю сумму поставки, и текущее количество каждого товара. Эти группы параметров используются как массивы. После того, как решение о структуре данных принято, фактически, несложно написать текст самой модели.
Результаты моделирования подтверждают правильность работы модели.
1. Советов Б. Я., Яковлев С. А. Моделирование систем. — М.: Высшая школа, 1985. 271 с.
2. Советов Б. Я., Яковлев С. А. Моделирование систем, лабораторный практикум М.: Высшая школа, 1989. 80 с.
3. Советов Б. Я., Яковлев С. А. Моделирование систем, курсовое проектирование, учебное пособие для вузов. — М.: Высшая школа, 1988.-136 с.
4. Голованов О. В. и др. Моделирование сложенных дискретных систем на ЭВМ третьего поколения. — М.: Энергия, 1978. — 160 с.
5. Шрайбер Т. Дж. Моделирование на GРSS/ Перевод с англ. — М.: Машиностроение, 1980. 592 с.