Диссертация (1151153), страница 24
Текст из файла (страница 24)
Функциональная диаграмма процесса прогнозирования социальных выплат регионаЗаконодательство оЗаконодательствосоциально-экономическомо социальнойпланированииподдержке населенияи прогнозированииДанные демографической статистикиДанные статистики социального обеспечения населенияПрогнозирование социальныхвыплат для региона РФИнформация о направлениях социально-демографическойполитикиМноговариантные прогнозы потребностей в бюджетныхсредствах для социальных выплатA0Методыматематической статистики,эконометрики,демографии,Имитационного моделированияРисунок 1 – Контекстная диаграмма процесса прогнозирование социальных выплат региона РФ144Законодательствоо социальнойподдержке населенияДанныедемографическойстатистикиАнализ социальнодемографическойструктуры ЛК и МСПA1Законодательство осоциально-экономическомпланированиии прогнозированииСоциально-экономическаяПрогнозированиеи демографическаяпотенциальнойхарактеристика ЛКпотребности в социальнойвыплатеA2Данные статистикисоциальногообеспечениянаселенияМноговариантныйпрогноз демографическойструктуры ЛКПрогнозированиереальной потребности всоциальной выплатеИнформация о направлениях социально-демографической политикиA3Методыматематической статистики,эконометрики,демографии,имитационного моделированияМноговариантный прогнозпотребности в бюджетных средствахдля социальной выплатыМодели и методы имитации потока заявокРисунок 2 – Функциональная диаграмма процесса прогнозирования социальных выплат региона145Законодательствоо социально-экономическомпланировании и прогнозированииИнформация оПрогнозированиенаправлениях социально- смертностидемографическойполитикиA2.2ДанныедемографическойстатистикиАРПССЭкспоненциальное сглаживаниеБутстрэпСоциально-экономическаяи демографическаяхарактеристика ЛКМноговариантныйпрогнозсмертностиПрогнозированиерождаемостиA2.1РегрессионныеСплайныБутстрэпМноговариантныйпрогноз рождаемостиПередвижка структуры ЛКпо возрастамA2.3Многовариантныйпрогноз демографическойструктуры ЛКМетод передвижениянаселения по возрастамАналитические законы смертностиМетодыматематическойстатистики,эконометрики,демографии,имитационногомоделированияРисунок 3 – Функциональная диаграмма блока прогнозирования потенциальной потребности в социальной выплате146Законодательствоо социальноэкономическомпланиованиии прогнозированииДанныедемографическойстатистики (общийкоэффициентрождаемости,половозрастнаяструктура населения)МноговариантныйпрогнозсмертностиПреобразование данных орождаемостиA2.1.1Показательрождаемостина 1000 женщинрепродуктивного Построение спецификацийвозрастамоделей годовогопоказателя рождаемостиМетод фиктивного поколенияA2.1.2 Спецификациимодели длягодовогопоказателяПостроениерождаемостимноговариантногопрогноза годовойинтенсивности рожденийA2.1.3Варианты прогнозагодовой интенсивности рожденийРегрессионныесплайныИнформация о направленияхсоциально-демографической политикиМетоды сравнениястатистических моделей,стресс-тесты, бутстрэпПостроениемноговариантногопрогноза интенсивностирождений по месяцамA2.1.4Методы математической статистики,эконометрики, имитационногомоделированияМетод моделированиянеоднородного по времениПуассоновского процессаРисунок 4 – Функциональная диаграмма блока прогнозирования рождаемостиМноговариантныйпрогноз рождаемостипо месяцам147Законодательствоо социальноэкономическомпланиованиии прогнозированииДанныедемографическойстатистики (общийкоэффициентсмертности)Построение спецификациймоделей показателянакопленной интенсивностисмертности по годамСпецификацииA2.2.1 моделей длягодовогоПостроениепоказателямноговариантногосмертностипрогноза накопленнойинтенсивности смертностипо годамАРПСС,Экспоненциальное сглаживаниеA2.2.2Варианты прогнозаГодового показателясмертностиМетоды сравнениястатистических моделей,Стресс-тестыИнформация о направленияхсоциально-демографической политикиМетоды математической статистики, эконометрики,демографии, имитационного моделированияПостроениемноговариантногопрогноза накопленнойинтенсивности смертностипо месяцамA2.2.3Метод моделированиянеоднородного по временипуассоновского процессаРисунок 5 – Функциональная диаграмма блока прогнозирования смертностиМноговариантныйпрогноз смертностипо месяцампрогнозного годаПриложение 7.
Реализация алгоритмов в среде VBASub FormulaD() 'Алгоритм моделирования неоднородного по времени процессасмертностиRandomizeDim rand As Double, randt As Double, low As Double, up As Double, left As Double,right As Double, tkappa As Double, l As DoubleDim r As Integer, s As Integer, u As Integer, d1 As Integer, d2 As Integer, iter As Integer,itern As Integer, sumkappa As Double, sumtao As Double, randd As Double, z4 AsDouble, en As Double, dn As DoubleDim i As Integer, j As Integer, n As IntegerDim lambda(), mon(), moncount(), moncountn()Worksheets("model_death").Activateiter = 1iter = InputBox("Введите число итераций")n=0j=5en = 1.3 'Фиксируем оцененные параметры нормального распределения числасмертей за месяцdn = 0.01While Not IsEmpty(Cells(2 + n, j))n=n+1WendReDim lambda(n), mon(n), moncount(n), moncountn(n) 'считываем вектормасштабированной смертности и вектор времениi=0For i = 0 To n - 1lambda(i) = Cells(i + 2, j)mon(i) = Cells(i + 2, j - 1)moncount(i) = 0moncountn(i) = 0Next isumkappa = lambda(n - 1) 'определяем ограничение по накопленной смертностиl = sumkappa / 12 ' используем в случае фиксированной высоты скачкаi=0j=0sumtao = 0For itern = 1 To iterDo 'моделируем моменты скачков по оси y, переносим их на ось x, подсчитываемколичества по месяцам149rand = -Log(Rnd()) 'моделируем интервалы между событиями по оси y cпомощью Exp(1)sumtao = sumtao + rand ' накапливаем случайные приращения по осинакопленной смертностиr=0low = 0left = 0up = lambda(0)right = mon(0)While low < sumtao And r < 12 ' находим интервал по поси времени, в которыйпопадает sumtaoIf lambda(r) < sumtao Thenlow = lambda(r)left = mon(r)up = lambda(r + 1)right = mon(r + 1)End Ifr=r+1randd = 0For j = 1 To 12 'моделируем число смертей randd по нормальному законуrand = Rnd()randd = randd + randNext jrandd = en + dn * (randd - 6)Wendrandt = left + (sumtao - low) * (right - left) / (up - low) ' проецируем sumtao на осьвремени через график накопленной смертности -> randtIf randt < 1 Then ' для контроля выписываем результат итерацииCells(i + 17, 1) = sumtaoCells(i + 17, 2) = randtCells(i + 17, 3) = randdFor s = 0 To n - 1 ' распределяем результат моделирования по месяцамIf randt < mon(s) Thenmoncount(s) = moncount(s) + 1 ' записываем накапливаемое число смертей дляфиксированных приращенийmoncountn(s) = moncountn(s) + randd / en ' записываем накапливаемое числосмертей для нормальных приращенийEnd IfNext sEnd Ifi=i+1Loop While sumtao < sumkappaFor s = 0 To n - 1Cells(2 + s, 6) = moncount(s)150Cells(2 + s, 7 + itern - 1) = moncountn(s)Next si=0j=0sumtao = 0For s = 0 To n - 1moncount(s) = 0moncountn(s) = 0Next sNext iternEnd SubSub modelGammaDistr() 'Алгоритм моделирования денежной потребностиWorksheets("summaryGamma").ActivateRandomizeDim rand As DoubleDim nsim As Integer, nchild() As Integer, u As Integer, iter As IntegerDim i As Integer, j As Integer, n As Integer, s As Integer, t As IntegerDim nobr() As Integer, momobr As Double, rand1 As Double, rand2 As DoubleDim fv() As Double 'Задаем список размеров выплаты с учетом месяца рожденияDim p1 As Double, prod1 As Double ' Задаем вероятности рождения в районах сустановленными коэффициентамиDim p2 As Double, prod2 As DoubleDim rand3 As Double, monsum() As Double, rk As DoubleDim mtrq() As Integer 'трехмерная матрица.
Первое измерение - месяцы рождения.Второе - месяцы подачи заявления. Третье - номер итерации алгоритма.Dim mtrm() As DoubleDim mtri As Integer, mtrj As Integer ' первые 2 измерения матрицыp1 = 0.74 'явно задаем вероятности рождения в районе и коэффициенты кзаработной платеprod1 = 1.15p2 = 0.26prod2 = 1.25nsim = Cells(1, 1) 'задаем число итераций метода Монте-Карлоmtrj = 16 'явно задаем число столбцов и строк матрицыmtri = 5ReDim nchild(mtrj) 'Задаем интенсивность рождений для каждого месяцаReDim fv(mtrj) 'задаем значения федеральной выплаты при рождении ребенка,действующей на соответствующий месяцFor i = 0 To mtrjnchild(i) = Cells(13, 3 + i)fv(i) = Cells(14, 3 + 1)Next i151'Моделируем процесс обращения за пособием для каждого родившегосяReDim nobr(5) 'Число обратившихся с запаздыванием в заданное размерностьювектора количество месяцевReDim monsum(5) 'Сумма потребности в соответствующий месяцReDim mtrq(mtri, mtrj, nsim - 1) As IntegerReDim mtrm(mtri, mtrj, nsim - 1) As DoubleFor t = 0 To mtrj 'месяц рожденияFor iter = 0 To nsim - 1 'число итераций для каждого месяцаFor i = 0 To mtrinobr(i) = 0monsum(i) = 0Next iFor s = 1 To nchild(t)rand = Rnd() 'моделируем день рождения равномерно в течение месяцаrand1 = Rnd() ' моделируем гамма распределение на основе rand1 и rand2rand2 = Rnd()rand3 = Rnd() ' моделируем районный коэффициентIf rand3 < p1 Thenrk = prod1Elserk = prod2End Ifmomobr = rand - 25 / 30.5 * Log(rand1 * rand2) ' /30.5 т.к.
дни переводим в мсяцыIf momobr < 1 Thennobr(0) = nobr(0) + 1monsum(0) = monsum(0) + fv(t) * rkElseIf momobr < 2 Thennobr(1) = nobr(1) + 1monsum(1) = monsum(1) + fv(t) * rkElseIf momobr < 3 Thennobr(2) = nobr(2) + 1monsum(2) = monsum(2) + fv(t) * rkElseIf momobr < 4 Thennobr(3) = nobr(3) + 1monsum(3) = monsum(3) + fv(t) * rkElseIf momobr < 5 Thennobr(4) = nobr(4) + 1monsum(4) = monsum(4) + fv(t) * rkElsenobr(5) = nobr(5) + 1152monsum(5) = monsum(5) + fv(t) * rkEnd IfEnd IfEnd IfEnd IfEnd IfNext sFor i = 0 To mtrimtrq(i, t, iter) = nobr(i)mtrm(i, t, iter) = monsum(i)Next iNext iterNext tFor i = 0 To mtri 'Выводим результат последней итерации для mtrq - распределениеобращений по срокам запаздывания, выраженных в месяцахFor j = 0 To mtrjCells(15 + i, 3 + j) = mtrq(i, j, nsim - 1)Next jNext iFor i = 0 To iter - 1 'Выводим денежный итог по месяцам прогнозного года длячисла итераций iterFor j = 5 To mtrjp2 = 0For k = 0 To mtrip2 = p2 + mtrm(k, j - k, i)Next kCells(23 + i, 3 + j) = p2Next jNext iEnd SubПриложение 8.