Diketahui fungsi survival suatu individu diberikan oleh: \(𝑆(𝑥) = 𝑒^{−(0.02)*𝑥^2}, 𝑥 ≥ 0\)
Tentukan:
fungsi distribusi kumulatif 𝐹(𝑥)
fungsi densitas probabilitas 𝑓(𝑥)
force of mortality \(𝜇_𝑥\)
hitung probabilitas seseorang berusia 30 tahun dapat bertahan hidup hingga usia 40 tahun
# ==========================================================
# JAWABAN SOAL NOMOR 1
# ==========================================================
# Diketahui: S(x) = exp(-0.02 * x^2)
# --- a) Fungsi Distribusi Kumulatif F(x) ---
# Rumus: F(x) = 1 - S(x)
cat("a) Fungsi Distribusi Kumulatif F(x):\n")
## a) Fungsi Distribusi Kumulatif F(x):
cat(" F(x) = 1 - exp(-0.02 * x^2)\n\n")
## F(x) = 1 - exp(-0.02 * x^2)
# --- b) Fungsi Densitas Probabilitas f(x) ---
# Rumus: f(x) = d/dx F(x) atau f(x) = -d/dx S(x)
S_expr <- expression(exp(-0.02 * x^2))
f_x <- D(expression(1 - exp(-0.02 * x^2)), "x")
cat("b) Fungsi Densitas Probabilitas f(x):\n")
## b) Fungsi Densitas Probabilitas f(x):
print(f_x)
## exp(-0.02 * x^2) * (0.02 * (2 * x))
# Output: exp(-0.02 * x^2) * (0.02 * (2 * x))
# Atau disederhanakan menjadi: 0.04 * x * exp(-0.02 * x^2)
cat("\n")
# --- c) Force of Mortality (mu_x) ---
# Rumus: mu_x = f(x) / S(x)
# f(x) = 0.04 * x * exp(-0.02 * x^2)
# S(x) = exp(-0.02 * x^2)
# mu_x = (0.04 * x * exp(-0.02 * x^2)) / exp(-0.02 * x^2)
cat("c) Force of Mortality mu_x:\n")
## c) Force of Mortality mu_x:
cat(" mu_x = 0.04 * x\n\n")
## mu_x = 0.04 * x
# --- d) Menghitung Probabilitas 10p30 ---
# Rumus: tpx = S(x+t) / S(x)
# Mencari probabilitas usia 30 bertahan sampai 40 (t=10, x=30)
# Definisikan fungsi survival dalam R
Sx <- function(x) {
exp(-0.02 * x^2)
}
x_awal <- 30
t_tahun <- 10
x_akhir <- x_awal + t_tahun
prob_10p30 <- Sx(x_akhir) / Sx(x_awal)
cat("d) Hitung Probabilitas 10p30:\n")
## d) Hitung Probabilitas 10p30:
cat(" Hasil Perhitungan:", prob_10p30, "\n")
## Hasil Perhitungan: 8.315287e-07
Diketahui:Mortalita mengikuti distribusi Weibull dengan fungsi survival: \(S(x) = e^{-(x/80)^3}\) untuk \(0 \le x \le 100\).Jumlah populasi awal pada usia 0 tahun (\(l_0\)) adalah 500.000.
Ditanya:Buatlah life table untuk usia 0-60 tahun yang memuat kolom: \(x, l_x, d_x, p_x, q_x\).Jawab:Dalam pengerjaan ini, digunakan perangkat lunak R untuk menghitung setiap komponen tabel berdasarkan rumus:\(l_x = l_0 \cdot S(x)\)\(d_x = l_x - l_{x+1}\)\(p_x = \frac{l_{x+1}}{l_x}\)\(q_x = 1 - p_x\)
# ==========================================================
# JAWABAN SOAL NOMOR 2
# ==========================================================
# 1. Definisikan parameter awal
l0 <- 500000
usia <- 0:60
# 2. Definisikan Fungsi Survival Weibull sesuai soal
Sx_weibull <- function(x) {
exp(-(x/80)^3)
}
# 3. Menghitung lx (Jumlah orang hidup)
# Kita hitung sampai usia 61 agar bisa mendapatkan selisih untuk dx pada usia 60
lx_data <- l0 * Sx_weibull(0:61)
# 4. Menghitung komponen tabel lainnya
lx <- lx_data[1:61] # lx dari usia 0-60
lx_plus_1 <- lx_data[2:62] # lx+1 dari usia 1-61
dx <- lx - lx_plus_1 # Jumlah kematian
px <- lx_plus_1 / lx # Probabilitas bertahan hidup
qx <- 1 - px # Probabilitas meninggal
# 5. Menggabungkan data ke dalam tabel (Data Frame)
life_table <- data.frame(
x = usia,
lx = round(lx, 2),
dx = round(dx, 2),
px = round(px, 6),
qx = round(qx, 6)
)
# 6. Menampilkan tabel
# Menampilkan semua baris (0-60)
print(life_table)
## x lx dx px qx
## 1 0 500000.0 0.98 0.999998 0.000002
## 2 1 499999.0 6.84 0.999986 0.000014
## 3 2 499992.2 18.55 0.999963 0.000037
## 4 3 499973.6 36.13 0.999928 0.000072
## 5 4 499937.5 59.56 0.999881 0.000119
## 6 5 499877.9 88.84 0.999822 0.000178
## 7 6 499789.1 123.96 0.999752 0.000248
## 8 7 499665.2 164.90 0.999670 0.000330
## 9 8 499500.2 211.66 0.999576 0.000424
## 10 9 499288.6 264.20 0.999471 0.000529
## 11 10 499024.4 322.51 0.999354 0.000646
## 12 11 498701.9 386.54 0.999225 0.000775
## 13 12 498315.3 456.26 0.999084 0.000916
## 14 13 497859.1 531.61 0.998932 0.001068
## 15 14 497327.5 612.54 0.998768 0.001232
## 16 15 496714.9 698.98 0.998593 0.001407
## 17 16 496016.0 790.86 0.998406 0.001594
## 18 17 495225.1 888.09 0.998207 0.001793
## 19 18 494337.0 990.58 0.997996 0.002004
## 20 19 493346.4 1098.21 0.997774 0.002226
## 21 20 492248.2 1210.86 0.997540 0.002460
## 22 21 491037.4 1328.41 0.997295 0.002705
## 23 22 489708.9 1450.71 0.997038 0.002962
## 24 23 488258.2 1577.61 0.996769 0.003231
## 25 24 486680.6 1708.93 0.996489 0.003511
## 26 25 484971.7 1844.49 0.996197 0.003803
## 27 26 483127.2 1984.10 0.995893 0.004107
## 28 27 481143.1 2127.54 0.995578 0.004422
## 29 28 479015.6 2274.58 0.995252 0.004748
## 30 29 476741.0 2425.00 0.994913 0.005087
## 31 30 474316.0 2578.54 0.994564 0.005436
## 32 31 471737.4 2734.94 0.994202 0.005798
## 33 32 469002.5 2893.90 0.993830 0.006170
## 34 33 466108.6 3055.15 0.993445 0.006555
## 35 34 463053.4 3218.38 0.993050 0.006950
## 36 35 459835.1 3383.27 0.992642 0.007358
## 37 36 456451.8 3549.48 0.992224 0.007776
## 38 37 452902.3 3716.69 0.991794 0.008206
## 39 38 449185.6 3884.53 0.991352 0.008648
## 40 39 445301.1 4052.65 0.990899 0.009101
## 41 40 441248.5 4220.67 0.990435 0.009565
## 42 41 437027.8 4388.22 0.989959 0.010041
## 43 42 432639.6 4554.90 0.989472 0.010528
## 44 43 428084.7 4720.34 0.988973 0.011027
## 45 44 423364.3 4884.12 0.988464 0.011536
## 46 45 418480.2 5045.86 0.987942 0.012058
## 47 46 413434.3 5205.14 0.987410 0.012590
## 48 47 408229.2 5361.56 0.986866 0.013134
## 49 48 402867.7 5514.71 0.986311 0.013689
## 50 49 397352.9 5664.20 0.985745 0.014255
## 51 50 391688.7 5809.63 0.985168 0.014832
## 52 51 385879.1 5950.59 0.984579 0.015421
## 53 52 379928.5 6086.71 0.983979 0.016021
## 54 53 373841.8 6217.60 0.983368 0.016632
## 55 54 367624.2 6342.88 0.982746 0.017254
## 56 55 361281.3 6462.21 0.982113 0.017887
## 57 56 354819.1 6575.23 0.981469 0.018531
## 58 57 348243.9 6681.61 0.980813 0.019187
## 59 58 341562.3 6781.04 0.980147 0.019853
## 60 59 334781.2 6873.21 0.979470 0.020530
## 61 60 327908.0 6957.85 0.978781 0.021219
# 7. Membuat Visualisasi Grafik lx (Opsional namun disarankan)
plot(usia, lx, type="o", col="red", pch=16, cex=0.5,
main="Grafik Penurunan Populasi (lx) Usia 0-60",
xlab="Usia (x)", ylab="Jumlah Penduduk (lx)")
grid()
Diketahui:Model mortalita: \(l_{x} = 1000 - 8x\) untuk \(0 \le x \le 100\).Tingkat suku bunga kontinu: \(\delta = 0.04\).
Ditanya:
Anuitas jiwa seumur hidup kontinu untuk usia 40 tahun (\(\bar{a}_{40}\)).
Anuitas jiwa berjangka 20 tahun kontinu untuk usia 50 tahun (\(\bar{a}_{50:\overline{20|}}\)).
Anuitas jiwa tertunda 10 tahun berjangka 15 tahun untuk usia 35 tahun (\({}_{10|}\bar{a}_{35:\overline{15|}}\)).
Interpretasi perbedaan hasil dari ketiga model anuitas
# ==========================================================
# JAWABAN SOAL NOMOR 3
# ==========================================================
# 1. Parameter Dasar
delta <- 0.04
lx_func <- function(x) { 1000 - 8*x }
tpx <- function(t, x) {
lx_func(x + t) / lx_func(x)
}
integrand <- function(t, x) {
exp(-delta * t) * tpx(t, x)
}
# --- a) Anuitas jiwa seumur hidup kontinu (x=40) ---
# Batas atas integrasi adalah usia maksimal (100) dikurangi usia sekarang (40)
res_a <- integrate(integrand, lower = 0, upper = 60, x = 40)
a_bar_40 <- res_a$value
# --- b) Anuitas jiwa berjangka 20 tahun kontinu (x=50, n=20) ---
res_b <- integrate(integrand, lower = 0, upper = 20, x = 50)
a_bar_50_20 <- res_b$value
# --- c) Anuitas jiwa tertunda 10 tahun berjangka 15 tahun (x=35, n=15, m=10) ---
# Integrasi dilakukan dari masa tunda (10) sampai (10 + 15)
res_c <- integrate(integrand, lower = 10, upper = 25, x = 35)
a_bar_deferred <- res_c$value
# Menampilkan Hasil
cat("Hasil Perhitungan Nomor 3:\n")
## Hasil Perhitungan Nomor 3:
cat("a) Anuitas Seumur Hidup (40 thn) :", a_bar_40, "\n")
## a) Anuitas Seumur Hidup (40 thn) : 17.64706
cat("b) Anuitas Berjangka 20 thn (50 thn) :", a_bar_50_20, "\n")
## b) Anuitas Berjangka 20 thn (50 thn) : 12.17338
cat("c) Anuitas Tertunda 10 thn (35 thn) :", a_bar_deferred, "\n")
## c) Anuitas Tertunda 10 thn (35 thn) : 6.153451