Studi Kasus: Sebuah pusat layanan pelanggan menerima panggilan telepon dengan rata-rata 10 panggilan per jam. Kita ingin mensimulasikan jumlah panggilan yang diterima dalam 24 jam.
# Parameter distribusi Poisson
lambda <- 10 # Rata-rata panggilan per jam
jam <- 24 # Jumlah jam
# Simulasi jumlah panggilan per jam
set.seed(123) # Untuk hasil yang reproducible
panggilan_per_jam <- rpois(jam, lambda)
# Menampilkan hasil simulasi
cat("Jumlah panggilan per jam:\n", panggilan_per_jam, "\n")
## Jumlah panggilan per jam:
## 8 9 14 10 10 15 11 5 4 13 11 11 10 8 15 11 3 7 6 8 6 8 4 6
# Visualisasi hasil simulasi
library(ggplot2)
data <- data.frame(Jam = 1:jam, Panggilan = panggilan_per_jam)
ggplot(data, aes(x = Jam, y = Panggilan)) +
geom_bar(stat = "identity", fill = "lightblue") +
labs(title = "Simulasi Jumlah Panggilan per Jam",
x = "Jam",
y = "Jumlah Panggilan") +
theme_minimal()
Penjelasan: 1.Distribusi Poisson:
rpois(jam, lambda) menghasilkan data acak dari distribusi Poisson.
lambda adalah rata-rata panggilan per jam.
2.Visualisasi: Menggunakan ggplot2 untuk membuat grafik batang (bar plot) jumlah panggilan per jam.
Output: Vektor dengan 24 nilai, masing-masing mewakili jumlah panggilan per jam.
Grafik batang yang menunjukkan distribusi jumlah panggilan.
Studi Kasus: Waktu antara kedatangan pelanggan di sebuah restoran mengikuti distribusi eksponensial dengan rata-rata 5 menit. Kita ingin mensimulasikan waktu kedatangan pelanggan selama 1 hari (1440 menit).
# Parameter distribusi eksponensial
lambda <- 1/5 # Rata-rata waktu antara kedatangan (5 menit)
total_waktu <- 1440 # Total waktu simulasi (1 hari)
# Simulasi waktu antara kedatangan
set.seed(123) # Untuk hasil yang reproducible
waktu_kedatangan <- rexp(1000, lambda) # Simulasi 1000 kedatangan
# Menghitung waktu kedatangan kumulatif
waktu_kumulatif <- cumsum(waktu_kedatangan)
waktu_kumulatif <- waktu_kumulatif[waktu_kumulatif <= total_waktu] # Batasi hingga 1 hari
# Menampilkan hasil simulasi
cat("Waktu kedatangan pelanggan (5 contoh):\n", waktu_kumulatif[1:5], "\n")
## Waktu kedatangan pelanggan (5 contoh):
## 4.217286 7.100338 13.74561 13.9035 14.18455
# Visualisasi hasil simulasi
library(ggplot2)
data <- data.frame(Waktu_Kedatangan = waktu_kumulatif)
ggplot(data, aes(x = Waktu_Kedatangan)) +
geom_histogram(binwidth = 30, fill = "lightgreen", color = "black") +
labs(title = "Distribusi Waktu Kedatangan Pelanggan",
x = "Waktu Kedatangan (menit)",
y = "Frekuensi") +
theme_minimal()
Penjelasan: 1.Distribusi Eksponensial: rexp(1000, lambda) menghasilkan
data acak dari distribusi eksponensial. lambda adalah rata-rata waktu
antara kedatangan.
2.Waktu Kumulatif: cumsum(waktu_kedatangan) menghitung waktu kedatangan kumulatif. Data dibatasi hingga 1440 menit (1 hari).
Visualisasi: Menggunakan ggplot2 untuk membuat histogram distribusi waktu kedatangan.
Output : Vektor waktu kedatangan pelanggan dalam 1 hari. Histogram yang menunjukkan distribusi waktu kedatangan.
Studi Kasus: Sebuah toko online menerima pesanan dengan jumlah item yang berdistribusi Poisson (diskrit) dan waktu pengiriman yang berdistribusi eksponensial (kontinu). Simulasikan 100 pesanan dan analisis hasilnya.
# Parameter distribusi Poisson dan Eksponensial
lambda_item <- 5 # Rata-rata jumlah item per pesanan
lambda_waktu <- 1/2 # Rata-rata waktu pengiriman (2 hari)
n_pesanan <- 100 # Jumlah pesanan
# Simulasi jumlah item dan waktu pengiriman
set.seed(123) # Untuk hasil yang reproducible
jumlah_item <- rpois(n_pesanan, lambda_item)
waktu_pengiriman <- rexp(n_pesanan, lambda_waktu)
# Menampilkan hasil simulasi
cat("Jumlah item (5 contoh):\n", jumlah_item[1:5], "\n")
## Jumlah item (5 contoh):
## 4 7 4 8 9
cat("Waktu pengiriman (5 contoh):\n", waktu_pengiriman[1:5], "\n")
## Waktu pengiriman (5 contoh):
## 0.3999558 2.048883 2.055739 0.5693369 3.126104
# Visualisasi hasil simulasi
library(ggplot2)
data <- data.frame(Jumlah_Item = jumlah_item, Waktu_Pengiriman = waktu_pengiriman)
# Grafik jumlah item
ggplot(data, aes(x = Jumlah_Item)) +
geom_bar(fill = "lightblue") +
labs(title = "Distribusi Jumlah Item per Pesanan",
x = "Jumlah Item",
y = "Frekuensi") +
theme_minimal()
# Grafik waktu pengiriman
ggplot(data, aes(x = Waktu_Pengiriman)) +
geom_histogram(binwidth = 0.5, fill = "lightgreen", color = "black") +
labs(title = "Distribusi Waktu Pengiriman",
x = "Waktu Pengiriman (hari)",
y = "Frekuensi") +
theme_minimal()
Penjelasan: 1.Distribusi Poisson: rpois(n_pesanan, lambda_item)
menghasilkan data acak dari distribusi Poisson. lambda_item adalah
rata-rata jumlah item per pesanan.
2.Distribusi Eksponensial: rexp(n_pesanan, lambda_waktu) menghasilkan data acak dari distribusi eksponensial. lambda_waktu adalah rata-rata waktu pengiriman.
Visualisasi: Grafik batang untuk distribusi jumlah item. Histogram untuk distribusi waktu pengiriman.
Output yang Diharapkan: Vektor jumlah item dan waktu pengiriman untuk 100 pesanan.
Grafik batang dan histogram yang menunjukkan distribusi jumlah item dan waktu pengiriman.