1 / 1 / 1
Регистрация: 04.05.2013
Сообщений: 47
|
|
1 | |
Моделирование банковских вкладов12.11.2015, 21:49. Показов 834. Ответов 5
Метки нет (Все метки)
Доброго времени суток, уважаемые форумчане!
Прошу помощи, хотя-бы в словесном алгоритме, попытаюсь на его основе что-нибудь написать. Задача по имитационному моделированию в экономике: Смоделировать ситуацию открытия 1000 вкладов, дождаться их закрытия. Посчитать общую сумму по начисленным процентам для клиентов. Исходные данные: 1) Интервалы времени между поступлениями владов от клиентов 3 часа (+/- 2 часа); 2) Клиенты вносят на банковский вклад от 500 до 1500 рублей. 3) Клиенты закрывают свои вклады и снимают все денежные средства в среднем через 375 дней после открытия вклада (+/- 100 дней). 4) Банк начисляет процент (0,1 % от первоначальной суммы вклада за 10 дней).
0
|
12.11.2015, 21:49 | |
Ответы с готовыми решениями:
5
Обновление вкладов в PageControl Калькулятор вкладов в Excel Таблицы. Расчет процентов вкладов Задача по подсчету процентов и продолжительности вкладов |
1816 / 1030 / 285
Регистрация: 13.02.2012
Сообщений: 3,339
|
|
12.11.2015, 23:24 | 2 |
Добрый день.
Общая идея на самом деле не сложная, всё в лоб просто. Можете посмотреть примеры из книги Кудрявцев имитационное моделирование на GPSS Код
GENERATE ВКЛАДЫ 3,2,,1000 ASSIGN SUMMA,(DUNIFORM(500,1500)) ASSIGN DNEI,DUNIFORM ОТ 275 ДО 475 ADVANCE p$dnei#24ЧАСА SAVEVALUE BANK+,0.1 ПРОЦЕНТ ОТ p$summa КАЖДЫЕ 10 ДНЕЙ TERMINATE 1 START 1000
1
|
1 / 1 / 1
Регистрация: 04.05.2013
Сообщений: 47
|
|
13.11.2015, 10:26 [ТС] | 3 |
Dukalys, спасибо за алгоритм, максимально приближенный к коду.
Вот, что накидал, в комментариях, задал пару вопросов Код
GENERATE 3,2,,1000; ASSIGN SUMMA,(DUNIFORM(1,500,1500)); создаем переменную SUMMA кладем в нее случ. число от 500 до 1500 ASSIGN DNEI,(DUNIFORM(2,275,475)); создаем переменную DNEI кладем в нее случ. число от 275 до 475 ADVANCE P$DNEI,1; делаем задержку вклада на количество дней в переменной DNEI (+/- 1 день) почему у вас часовой формат 24??? SAVEVALUE BANK+,((P$DNEI/10)#(0.1#P$SUMMA)); в переменную BANK складываем наши проценты 0.1 от SUMMA, каждые 10 дней TERMINATE 1; START 1000; У меня такое ощущение, что идет несоответствие дней и часов в коде: Отчет: Код
GPSS World Simulation Report - Untitled Model 1.27.1 Friday, November 13, 2015 10:17:41 START TIME END TIME BLOCKS FACILITIES STORAGES 0.000 3379.071 6 0 0 NAME VALUE BANK 10002.000 DNEI 10001.000 SUMMA 10000.000 LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY 1 GENERATE 1000 0 0 2 ASSIGN 1000 0 0 3 ASSIGN 1000 0 0 4 ADVANCE 1000 0 0 5 SAVEVALUE 1000 0 0 6 TERMINATE 1000 0 0 SAVEVALUE RETRY VALUE BANK 0 3728532.640
0
|
1816 / 1030 / 285
Регистрация: 13.02.2012
Сообщений: 3,339
|
|
13.11.2015, 10:32 | 4 |
здесь часы GENERATE 3,2,,1000; А переменные в GPSS это VARIABLE. в которых задаётся формула. При вызове переменной, например V$name происходит расчёт по формуле её текущего значения. Ну и последнее меня смущает зачем дан интервал времени 3+-2 часа между заходящими если они всё равно минимум на 270 дней застревают в системе, почему сразу 1000 не пустить в нулевой момент времени и разруливать .... какое-то непонятное приближение к реальности
0
|
1 / 1 / 1
Регистрация: 04.05.2013
Сообщений: 47
|
|
13.11.2015, 10:55 [ТС] | 5 |
Dukalys,
попытался все перевести в часы: Код
GENERATE 3,2,,1000; ASSIGN SUMMA,(DUNIFORM(1,500,1500)); создаем параметр SUMMA кладем в нее случ. число от 500 до 1500 ASSIGN DNEI,(DUNIFORM(2,275#24,475#24)); параметр DNEI задаем так, чтобы были тоже часы ADVANCE P$DNEI,0; делаем задержку вклада на количество ЧАСОВ в параметре DNEI (0 означает что разброса нет?) SAVEVALUE BANK+,((P$DNEI/240)#(0.1#P$SUMMA)); в BANK складываем проценты 0.1 от SUMMA, каждые 10дн. (240 часов) TERMINATE 1; START 1000; Код
GPSS World Simulation Report - Untitled Model 1.30.1 Friday, November 13, 2015 10:45:23 START TIME END TIME BLOCKS FACILITIES STORAGES 0.000 14275.151 6 0 0 NAME VALUE BANK 10002.000 DNEI 10001.000 SUMMA 10000.000 LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY 1 GENERATE 1000 0 0 2 ASSIGN 1000 0 0 3 ASSIGN 1000 0 0 4 ADVANCE 1000 0 0 5 SAVEVALUE 1000 0 0 6 TERMINATE 1000 0 0 SAVEVALUE RETRY VALUE BANK 0 3728787.017 Как это сделать? Код
GENERATE 1000;
0
|
1816 / 1030 / 285
Регистрация: 13.02.2012
Сообщений: 3,339
|
|
13.11.2015, 12:17 | 6 |
D - ограничение на количество заявок Если A B С оставить пустыми(не пробелами!) то момент времени 0 имеется ввиду.
0
|
13.11.2015, 12:17 | |
13.11.2015, 12:17 | |
Помогаю со студенческими работами здесь
6
Распечатать суммы вкладов через 5 лет Какова будет совокупная величина вкладов к началу 3-го года? Вычислить суммы вкладов клиентов банка на конец года Класс Банк. Метод для вычисление общей суммы вкладов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |