Simulasi Distribusi Diskrit (Poisson)

Distribusi Poisson digunakan untuk menghitung jumlah kejadian dalam suatu interval.

Misal: jumlah siswa yang datang ke ruang konsultasi setiap hari, dengan rata-rata 5 siswa per hari.

set.seed(123)

n <- 50        # jumlah hari pengamatan
lambda <- 5    # rata-rata kejadian per hari

data_diskrit <- rpois(n, lambda)

# Tampilkan data
data_diskrit
##  [1]  4  7  4  8  9  2  5  8  5  5  9  5  6  5  2  8  3  2  4  9  8  6  6 11  6
## [26]  6  5  5  4  3  9  8  6  7  1  5  6  3  4  3  3  4  4  4  3  3  3  5  4  7
# Rata-rata hasil simulasi
mean(data_diskrit)
## [1] 5.24
# Histogram
hist(data_diskrit,
     main = "Simulasi Distribusi Poisson",
     xlab = "Jumlah Kejadian",
     col = "lightgreen")

Rata-rata hasil simulasi sebesar 5,24 mendekati nilai λ = 5, sehingga hasilnya sudah sesuai dengan teori distribusi Poisson. Sebagian besar jumlah siswa berada di sekitar 4 hingga 6 orang per hari, sedangkan nilai yang lebih besar seperti 9 atau 11 hanya muncul sesekali. Hal ini menunjukkan bahwa data mengikuti pola distribusi Poisson, yaitu sebagian besar kejadian berkumpul di sekitar nilai rata-rata.

Simulasi Distribusi Kontinu (Normal)

Distribusi Normal digunakan untuk data yang berbentuk kontinu.

Misal: nilai ujian siswa dengan rata-rata 75 dan standar deviasi 8.

set.seed(123)

n <- 100
mean_nilai <- 75
sd_nilai <- 8

data_kontinu <- rnorm(n, mean = mean_nilai, sd = sd_nilai)

# Tampilkan data
data_kontinu
##   [1] 70.51619 73.15858 87.46967 75.56407 76.03430 88.72052 78.68733 64.87951
##   [9] 69.50518 71.43470 84.79265 77.87851 78.20617 75.88546 70.55327 89.29531
##  [17] 78.98280 59.26706 80.61085 71.21767 66.45741 73.25620 66.79196 69.16887
##  [25] 69.99969 61.50645 81.70230 76.22698 65.89490 85.03052 78.41171 72.63943
##  [33] 82.16101 82.02507 81.57265 80.50912 79.43134 74.50471 72.55230 71.95623
##  [41] 69.44234 73.33666 64.87683 92.35165 84.66370 66.01513 71.77692 71.26676
##  [49] 81.23972 74.33305 77.02655 74.77163 74.65704 85.94882 73.19383 87.13176
##  [57] 62.60998 79.67691 75.99083 76.72753 78.03712 70.98141 72.33434 66.85140
##  [65] 66.42567 77.42823 78.58568 75.42403 82.37814 91.40068 71.07175 56.52665
##  [73] 83.04591 69.32639 69.49593 83.20457 72.72182 65.23426 76.45043 73.88887
##  [81] 75.04611 78.08224 72.03472 80.15501 73.23611 77.65426 83.77471 78.48145
##  [89] 72.39255 84.19046 82.94803 79.38718 76.90985 69.97675 85.88522 70.19792
##  [97] 92.49866 87.26089 73.11440 66.78863
# Rata-rata hasil simulasi
mean(data_kontinu)
## [1] 75.72325
# Ringkasan statistik
summary(data_kontinu)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   56.53   71.05   75.49   75.72   80.53   92.50
# Histogram
hist(data_kontinu,
     main = "Simulasi Distribusi Normal",
     xlab = "Nilai",
     col = "lightblue")

Rata-rata hasil simulasi sebesar 75,72 sangat mendekati mean yang ditentukan yaitu 75, sehingga simulasi sudah sesuai dengan teori distribusi normal. Nilai minimum sekitar 56,53 dan maksimum sekitar 92,50 menunjukkan penyebaran data yang masih wajar berdasarkan standar deviasi 8. Histogram memperlihatkan bentuk menyerupai lonceng dan relatif simetris di sekitar rata-rata, yang merupakan ciri khas distribusi normal.

STUDI KASUS 1 (Distribusi Diskrit – Poisson)

Sebuah perpustakaan kampus mencatat rata-rata 8 mahasiswa per jam datang untuk meminjam buku. Diperlukan Simulasi jumlah mahasiswa yang datang selama 30 jam operasional.

Karena ini menghitung jumlah kejadian dalam interval waktu, maka menggunakan Distribusi Poisson.

set.seed(123)

n_jam <- 30          # jumlah jam pengamatan
lambda <- 8          # rata-rata mahasiswa per jam

data_mahasiswa <- rpois(n_jam, lambda)

# Tampilkan data
data_mahasiswa
##  [1]  6 10  7 11 13  4  8 12  8  8 13  8  9  8  5 12  6  3  7 13 12  9  9 16  9
## [26]  9  8  9  6  5
# Rata-rata hasil simulasi
mean(data_mahasiswa)
## [1] 8.766667
# Probabilitas lebih dari 12 mahasiswa dalam 1 jam
prob_lebih_12 <- sum(data_mahasiswa > 12) / n_jam
prob_lebih_12
## [1] 0.1333333
# Histogram
hist(data_mahasiswa,
     main = "Simulasi Jumlah Mahasiswa per Jam",
     xlab = "Jumlah Mahasiswa",
     col = "lightgreen")

Rata-rata hasil simulasi sebesar 8,77 mendekati nilai λ = 8, sehingga hasilnya sudah sesuai dengan karakteristik distribusi Poisson. Sebagian besar jumlah mahasiswa berada di kisaran 6 hingga 10 orang per jam, sedangkan nilai yang lebih tinggi seperti 13 atau 16 muncul lebih jarang. Histogram menunjukkan pola yang sedikit miring ke kanan, yang merupakan ciri umum distribusi Poisson untuk data jumlah kejadian.

STUDI KASUS 2 (Distribusi Kontinu – Normal)

Nilai ujian Matematika siswa memiliki rata-rata 75 dengan standar deviasi 10. Perlu mensimulasikan nilai 200 siswa.

Karena nilai ujian cenderung menyebar simetris → gunakan Distribusi Normal.

set.seed(123)

n_siswa <- 200
mean_nilai <- 75
sd_nilai <- 10

data_nilai <- rnorm(n_siswa, mean = mean_nilai, sd = sd_nilai)

# Tampilkan 10 nilai pertama
head(data_nilai, 10)
##  [1] 69.39524 72.69823 90.58708 75.70508 76.29288 92.15065 79.60916 62.34939
##  [9] 68.13147 70.54338
# Rata-rata simulasi
mean(data_nilai)
## [1] 74.9143
# Probabilitas nilai di atas 90
prob_diatas_90 <- sum(data_nilai > 90) / n_siswa
prob_diatas_90
## [1] 0.07
# Ringkasan statistik
summary(data_nilai)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   51.91   68.74   74.41   74.91   80.68  107.41
# Histogram
hist(data_nilai,
     main = "Simulasi Nilai Ujian Matematika",
     xlab = "Nilai",
     col = "lightblue")

Rata-rata hasil simulasi sebesar 74,91 sangat mendekati nilai mean yang ditentukan yaitu 75, sehingga simulasi sudah sesuai dengan distribusi normal. Nilai minimum sekitar 51,91 dan maksimum sekitar 107,41 menunjukkan adanya variasi yang wajar berdasarkan standar deviasi 10. Histogram memperlihatkan pola menyerupai lonceng dan relatif simetris di sekitar rata-rata, yang merupakan ciri khas distribusi normal. Probabilitas nilai di atas 90 sebesar 0,07 menunjukkan bahwa hanya sebagian kecil siswa yang memperoleh nilai sangat tinggi.

Distribusi Binomial – Lulus/Tidak Lulus)

Probabilitas siswa lulus ujian adalah 0.8. Simulasikan jumlah siswa yang lulus dari 50 siswa dalam 1 kelas.

set.seed(123)

n_siswa <- 50
prob_lulus <- 0.8

jumlah_lulus <- rbinom(1, size = n_siswa, prob = prob_lulus)

jumlah_lulus
## [1] 42

Hasil simulasi menunjukkan bahwa dari 50 siswa, sebanyak 42 siswa dinyatakan lulus. Nilai ini mendekati ekspektasi teoritis distribusi binomial, yaitu 50 × 0,8 = 40 siswa. Perbedaan kecil tersebut wajar terjadi karena adanya variasi acak dalam simulasi. Hal ini menunjukkan bahwa distribusi binomial sesuai digunakan untuk memodelkan kejadian dengan dua kemungkinan, yaitu lulus atau tidak lulus.

Kesimpulan

Praktikum ini menunjukkan bahwa simulasi variabel random dapat digunakan untuk memodelkan berbagai fenomena dalam bidang pendidikan menggunakan distribusi yang sesuai. Distribusi Poisson dan Binomial digunakan untuk data diskrit seperti jumlah mahasiswa dan kelulusan siswa, sedangkan distribusi Normal digunakan untuk data kontinu seperti nilai ujian. Hasil simulasi menunjukkan bahwa rata-rata empiris mendekati nilai parameter teoritis, sehingga membuktikan bahwa simulasi berjalan dengan baik. Melalui praktikum ini, dapat dipahami bahwa pemilihan distribusi yang tepat sangat penting dalam merepresentasikan data dan fenomena nyata.