Введение
1. Задание
Выполнить моделирование работы магазина, торгующего 20 видами товаров. Для каждого вида товаров, средний интервал прихода покупателей равномерно распределен в интервале от 20 до 70 минут. Среднее количество денег, расходуемых на каждый вид товаров, равномерно распределено в интервале от 1 до 10 гривен. Поступление каждого вида товаров имеет средний интервал в 100 раз больший, чем интервал прихода покупателей за этим товаром, а средняя величина поставки товара (в гривнах), в 100 раз больше, средней цены покупки этого вида товара. Промоделировать обслуживание заданного числа.
2. Текст модели
3. Последняя статистика по модели
Выводы
Литература
Введение
Тема контрольной работы по дисциплине «Компьютерное моделирование процессов и систем» «Иммитационное моделирование работы магазина».
Разработчикам и пользователям вычислительных систем (ВС) приходится решать задачи оценки различных вариантов организации вычислительного процесса в ВС, поиска оптимальной структуры ВС, состава и конфигурации оборудования и операционной системы (ОС) при различных потоках заявок на оборудование. Аналитические методы подобных расчетов базируются на упрощенных математических моделях и позволяют определить только порядок результатов. Поэтому сейчас все шире распространяются методы имитационного программирования. Построение имитационных моделей ВС требует, с одной стороны, детального знания их структуры и функциональных особенностей, а с другой - наличия подходящих средств их отражения в модели.
Наиболее удобными и эффективными для целей моделирования представляются специализированные языки, предоставляющие разработчику модели широкий выбор средств описания моделей, а также сервисных средств, что облегчает конструирование модели и эксперименты с ней.
Цель контрольной работы состоит в углублении практических навыков в области имитационного моделирования систем с использованием языка GРSS. Этот язык предназначен для моделирования преимущественно дискретных систем массового обслуживания, к которым относятся и ВС.
Основная цель работы: научиться решать задачи моделирования систем массового обслуживания средней сложности.
1. Задание
Выполнить моделирование работы магазина, торгующего 20 видами товаров. Для каждого вида товаров, средний интервал прихода покупателей равномерно распределен в интервале от 20 до 70 минут. Среднее количество денег, расходуемых на каждый вид товаров, равномерно распределено в интервале от 1 до 10 гривен.
Поступление каждого вида товаров имеет средний интервал в 100 раз больший, чем интервал прихода покупателей за этим товаром, а средняя величина поставки товара (в гривнах), в 100 раз больше, средней цены покупки этого вида товара.
Промоделировать обслуживание заданного числа покупателей, например, 15000.
Реальные интервалы прихода покупателей за товаром, распределены по экспоненциальному закону относительно средней величины. Реальные интервалы поставки распределены по равномерному закону с заданным средним значением, и отклонением в 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 15000
reset
start 15000
reset
start 15000
reset
start 15000
3. Последняя статистика по модели
Последняя статистика по модели будет выглядеть следующим образом:
GPSSWorldSimulationReport - sample.32.4
Friday, May 14, 2004 07:33:25
START TIME END TIME BLOCKS FACILITIES STORAGES
95636.524 127422.725 32 0 0
NAME VALUE
BASEINTP 1000.000
BASENUM 2000.000
BASENUMMAG 3000.000
DELTA 10008.000
INTP 10003.000
NEXT 15.000
NUM 10004.000
RRET 8.000
RRET1 25.000
SUMIN 10009.000
SUMOUT 10010.000
TIP 10006.000
TMP 10005.000
TMP1 10007.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 15020 20 0
9 SPLIT 15000 0 0
10 ASSIGN 15000 0 0
11 ASSIGN 15000 0 0
12 TEST 15000 0 0
13 SAVEVALUE 13669 0 0
14 SAVEVALUE 13669 0 0
NEXT 15 BUFFER 15000 0 0
16 SAVEVALUE 15000 0 0
17 TERMINATE 15000 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 10033.071
3016 0 0.618
3017 0 4395.957
3018 0 601.167
3019 0 4198.037
3020 0 11921.806
TMP 0 20.000
TMP1 0 20.000
DELTA 0 60938.868
SUMIN 0 399641.893
SUMOUT 0 338703.025
FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE
60677 0 127423.320 3 8 9
INTP 21.119
TIP 2.000
NUM 9.537
60673 0 127427.925 13 8 9
INTP 54.846
NUM 1.648
TIP 12.000
60661 0 127432.117 12 8 9
INTP 44.616
TIP 11.000
NUM 7.462
60669 0 127433.071 10 8 9
INTP 55.061
NUM 3.312
TIP 9.000
60670 0 127440.907 20 8 9
INTP 20.408
TIP 19.000
NUM 7.392
60675 0 127441.767 9 8 9
INTP 52.735
NUM 7.723
TIP 8.000
60660 0 127446.699 21 8 9
INTP 46.387
NUM 9.561
TIP 20.000
60658 0 127449.963 15 8 9
INTP 25.438
NUM 8.915
TIP 14.000
60674 0 127453.320 1 8 9
INTP 64.050
NUM 3.344
TIP 1.000
60638 0 127453.990 18 8 9
INTP 51.936
NUM 9.660
TIP 17.000
60659 0 127457.240 8 8 9
INTP 55.886
NUM 5.945
TIP 7.000
60671 0 127457.864 19 8 9
INTP 62.604
TIP 18.000
NUM 1.331
60644 0 127475.255 5 8 9
INTP 41.728
TIP 4.000
NUM 9.375
60678 0 127480.770 6 8 9
INTP 68.173
NUM 3.247
TIP 5.000
60676 0 127482.678 16 8 9
INTP 25.678
NUM 4.716
TIP 15.000
60665 0 127494.309 11 8 9
INTP 68.285
NUM 2.381
TIP 10.000
60649 0 127498.513 17 8 9
INTP 46.349
NUM 8.100
TIP 16.000
60633 0 127499.227 14 8 9
INTP 55.905
TIP 13.000
NUM 3.515
57089 0 127503.863 38 25 26 1 1018.000
2 2018.000
INTP 6260.355
TIP 18.000
NUM 133.113
60583 0 127509.408 4 8 9
INTP 59.403
NUM 6.606
TIP 3.000
60672 0 127589.550 7 8 9
INTP 46.497
NUM 1.631
TIP 6.000
60282 0 127967.620 22 25 26 1 1002.000
2 2002.000
INTP 2111.915
NUM 953.733
TIP 2.000
47507 0 128140.437 36 25 26 1 1016.000
2 2016.000
INTP 4634.950
TIP 16.000
NUM 810.014
60155 0 128992.238 35 25 26 1 1015.000
2 2015.000
INTP 2567.830
NUM 471.646
TIP 15.000
60326 0 129127.090 34 25 26 1 1014.000
2 2014.000
INTP 2543.760
TIP 14.000
NUM 891.475
58659 0 129370.529 27 25 26 1 1007.000
2 2007.000
INTP 5588.615
TIP 7.000
NUM 594.535
60146 0 130053.205 24 25 26 1 1004.000
2 2004.000
INTP 4172.845
TIP 4.000
NUM 937.454
59945 0 130360.030 29 25 26 1 1009.000
2 2009.000
INTP 5506.080
NUM 331.157
TIP 9.000
47089 0 130437.748 30 25 26 1 1010.000
2 2010.000
INTP 6828.505
NUM 238.095
TIP 10.000
60563 0 130704.906 39 25 26 1 1019.000
2 2019.000
INTP 2040.820
TIP 19.000
NUM 739.168
59842 0 131372.702 37 25 26 1 1017.000
2 2017.000
INTP 5193.640
TIP 17.000
NUM 966.023
59850 0 132168.432 33 25 26 1 1013.000
2 2013.000
INTP 5590.495
NUM 351.530
TIP 13.000
58645 0 132253.017 2 25 26 1 1001.000
2 2001.000
INTP 6404.955
TIP 1.000
NUM 334.444
55442 0 132525.520 32 25 26 1 1012.000
2 2012.000
INTP 5484.610
TIP 12.000
NUM 164.759
57722 0 132939.817 26 25 26 1 1006.000
2 2006.000
INTP 4649.720
TIP 6.000
NUM 163.080
59207 0 134420.835 31 25 26 1 1011.000
2 2011.000
INTP 4461.570
TIP 11.000
NUM 746.220
57466 0 134731.483 28 25 26 1 1008.000
2 2008.000
INTP 5273.505
TIP 8.000
NUM 772.295
57039 0 134861.994 23 25 26 1 1003.000
2 2003.000
INTP 5940.275
NUM 660.581
TIP 3.000
58047 0 135849.297 40 25 26 1 1020.000
2 2020.000
INTP 4638.690
NUM 956.109
TIP 20.000
55932 0 136006.464 25 25 26 1 1005.000
2 2005.000
INTP6817.275
NUM324.653
TIP 5.000
Выводы
Для построения модели понадобилось 3 группы X – параметров, по 20 параметров каждая. Эти параметры сохраняют средний интервал поступления каждого товара, среднюю сумму поставки, и текущее количество каждого товара. Эти группы параметров используются как массивы. После того, как решение о структуре данных принято, фактически, несложно написать текст самой модели.
Результаты моделирования подтверждают правильность работы модели.
Литература
1. Советов Б.Я., Яковлев С.А. Моделирование систем. - М.: Высшая школа, 1985.- 271 с.
2. Советов Б.Я., Яковлев С.А. Моделирование систем, лабораторный практикум М.: Высшая школа, 1989.- 80 с.
3. Советов Б.Я., Яковлев С.А. Моделирование систем, курсовое проектирование, учебное пособие для вузов. - М.: Высшая школа, 1988.-136 с.
4. Голованов О.В. и др. Моделирование сложенных дискретных систем на ЭВМ третьего поколения. - М.: Энергия, 1978. - 160 с.
5. Шрайбер Т. Дж. Моделирование на GРSS/ Перевод с англ. - М.: Машиностроение, 1980.- 592 с.