Loss Distribution Modeling Dalam Bahasa Pemrograman R
Peran utama aktuari ialah memodelkan jumlah klaim untuk pembuatan rate, atau evaluasi resiko lainnya. Paket actuar berisi berbagai fungsi untuk loss distribution modeling dan risk theory. Program R juga menyertakan fungsi-fungsi probabilitas (probability laws) untuk menghitung probability density function (pdf) dan cumulative distribution function (cdf).
Tabel 7.1. Probability laws yang didukung oleh actuar
Actuar juga menyediakan fasilitas grouped data, dengan contoh sebagai berikut:
Tabel 7.2. Contoh data percobaan
Menggunakan R, dapat deprogram sebagai berikut:
> x <- grouped.data(Group = c(0,
25, 50, 100,
150,
250,
+
500), Line.1 = c(30, 31, 57,
42, 65, 84),
Line.2 = c(26,
+ 33, 31, 19, 16, 11))
Maka objek x akan disimpan secara
internal sebagai kelas
list
> class(x)
[1] "grouped.data" "data.frame"
Dengan
method print, objek ini dapat ditampilkan dengan cara
> x
Group Line.1
Line.2 1 (0, 25] 30 26
2 (25, 50] 31 33
3 (50, 100] 57 31
4 (100, 150] 42 19
5 (150, 250] 65 16
6 (250, 500] 84 11
Kemudian, paket mendukung method ekstrasi dan pergantian untuk “grouped.data” menggunakan operator [ dan [<-.
(i)
Ekstraksi vector dari batasan group
> x[, 1]
[1] 0 25 50 100 150 250
500
(ii) Ekstrasi vector atau matrik
dari frekwensi group
> x[, -1]
Line.1 Line.2 1 30 26
2 31 33
3 57 31
4 42 19
5 65 16
6 84 11
(iii) Ekstraksi sebuah
subset dari keseluruhan objek
> x[1:3, ]
Group Line.1
Line.2 1 (0, 25] 30 26
2 (25, 50] 31 33
3 (50, 100] 57 31
Untuk operasi
pergantian (replacement
1 atau lebih group),
berikut contohnya:
> x[1, 2] <- 22
> x
Group Line.1
Line.2 1 (0, 25] 22 26
2 (25, 50] 31 33
3 (50, 100] 57 31
4 (100, 150] 42 19
5 (150, 250] 65 16
6 (250, 500] 84 11
Serta dapat menampilkan histogram dengan sangat
mudah sebagai berikut:
Gambar 7.1. Histogram menggunakan R
Paket R berisi fungsi summary untuk objek data group menggunakan fungsi mean
> mean(x) Line.1 Line.2 188.0 108.2
R menyediakan juga fungsi dataset
yang mudah, misalnya klaim dental individu dan klaim dental tergroup
> data("dental")
> dental
[1] 141 16 46 40 351 259 317 1511 107 567
> data("gdental")
> gdental
Cj |
nj |
1 (0, 25] |
30 |
2 ( 25, 50] |
31 |
3 ( 50, 100] |
57 |
4 (100,
150] |
42 |
5 (150,
250] |
65 |
6 (250,
500] |
84 |
7 (500,
1000] |
45 |
8 (1000, 1500] 10
9 (1500, 2500] 11
10 (2500, 4000] 3
Gambar 7.2. Plot data x
7.2
Risk Theory
Risk theory mengacu
pada teknik pemodelan
dan pengukuran resiko yang
diasosiasikan dengan portofolio dari kontrak-kontrak asuransi.
Beberapa teknik numeric
untuk menghitung distribusi agregat klaim membutuhkan distribusi aritmatika klaim yang diskrit yaitu distribusi yang didefinisikan pada 0; h; 2h; : : : untuk
beberapa step (atau span, atau lag) h. Saat ini proses pendiskritan (discretization) memiliki 4 metode antara lain upper discretization, lower discretization, rounding
dan unbiased.
Gambar 7.3. Perbandingan 4 metode diskretisasi
Contoh penerapan pada R:
>
fx <- discretize(pgamma(x, 2, 1), method
= "upper",
+ from = 0, to = 17, step
= 0.5)
>
fx <- discretize(pgamma(x, 2, 1), method =
"unbiased",
+ lev = levgamma(x, 2, 1), from =
0, to = 17, step = 0.5)
Fungsi aggregateDist dapat menghitung atau aproksimasi aggregate claim amount random variable
S.
>
fx <- discretize(pgamma(x, 2, 1), from
= 0, to = 22,
+ step = 0.5, method = "unbiased", lev = levgamma(x, 2, 1))
R> Fs <- aggregateDist("recursive", model.freq = "poisson",
+ model.sev = fx, lambda
= 10, x.scale = 0.5)
>
summary(Fs)
Aggregate
Claim Amount Empirical CDF: Min.
1st Qu. Median Mean 3rd Qu. Max. 0.0 14.5 19.5 20.0 25.0 71.0
Objek Fs berisi cdf empiris
>
knots(Fs)
[1] 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5
[13] 6.0 6.5 7.0 7.5 8.0 8.5 9.0 9.5 10.0
10.5 11.0 11.5
[25] 12.0 12.5 13.0 13.5 14.0 14.5 15.0 15.5 16.0 16.5 17.0 17.5
[37] 18.0 18.5 19.0 19.5 20.0 20.5 21.0 21.5 22.0 22.5 23.0 23.5
[49] 24.0 24.5 25.0 25.5 26.0 26.5 27.0 27.5 28.0 28.5 29.0 29.5
[61] 30.0 30.5 31.0 31.5 32.0 32.5 33.0 33.5 34.0 34.5 35.0 35.5
[73] 36.0 36.5 37.0 37.5 38.0 38.5 39.0 39.5 40.0 40.5 41.0 41.5
[85] 42.0 42.5 43.0 43.5 44.0 44.5 45.0 45.5 46.0 46.5 47.0 47.5
[97] 48.0 48.5 49.0 49.5 50.0 50.5 51.0 51.5 52.0 52.5 53.0 53.5
[109] 54.0 54.5 55.0 55.5 56.0 56.5 57.0 57.5 58.0 58.5 59.0 59.5
[121] 60.0 60.5 61.0 61.5 62.0 62.5 63.0 63.5 64.0 64.5 65.0 65.5
[133] 66.0 66.5 67.0 67.5 68.0 68.5 69.0 69.5 70.0 70.5 71.0
Untuk menampilkan grafik dari plot data ini menggunakan fungsi plot:
>
plot(Fs, do.points = FALSE,
verticals = TRUE, xlim = c(0, 60))
Gambar 7.4 Plot aggregate claim amount distribution
7.3
Simulasi Compound Hierarchical Model
Function simul mensimulasikan portofolio data dimana komoonen frekwensi dan severity
memiliki sebuah struktur hirarkis, berikut contohnya:
>
nodes <- list(cohort = 2, entity = c(4,
3), year = c(4,
+ 4, 4, 4, 5,
5, 5))
Journal of Statistical Software 27
>
mf <- expression(cohort
= rexp(2), entity = rgamma(cohort,
+ 1), year = rpois(weights * entity))
>
ms <- expression(cohort
= rnorm(2, sqrt(0.1)), entity = rnorm(cohort,
+ 1), year = rlnorm(entity, 1))
>
wijt <- runif(31, 0.5, 2.5)
>
pf <- simul(nodes = nodes,
model.freq = mf, model.sev = ms,+ weights
= wijt)
7.4
Credibility Theory
Credibility model ialah tool aktuaria untuk mendistribusikan premium
diantara group heterogen, dengan kata lain metode prediksi. Salah satu fungsi yang digunakan ialah
cbind sebagai berikut:
>
X
<- cbind(cohort = c(1,
2, 1, 2, 2), hachemeister)
>
fit <- cm(~cohort +
cohort:state, data = X, ratios = ratio.1:ratio.12,
+ weights = weight.1:weight.12, method =
"iterative")
>
fit
Call:
cm(formula = ~cohort + cohort:state, data = X, ratios
= ratio.1:ratio.12,
weights = weight.1:weight.12,
method = "iterative") Structure
Parameters Estimators
Collective premium: 1746 Between
cohort variance: 88981
Within cohort/Between state
variance: 10952 Within state variance: 139120026
The function returns a _tted
model object
Gambar
7.5 Hasil garis regresi dari
collective, individual dan credibility.
Post a Comment for "Loss Distribution Modeling Dalam Bahasa Pemrograman R"