1 / 53

Model Antrian

Model Antrian. Slide sebagian besar diambil dari : 1. The Art of Computer Systems Performance Analysis” by Raj Jain, Wiley 1991. 2. Computer Systems Analysis Using Network Models, Edward Lazowska, John Zahorjan, Scott Graham, and Kenneth Sevcik, Prentice-Hall, 1984. Outline. Hukum Operasional

latona
Download Presentation

Model Antrian

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Model Antrian Slide sebagian besar diambil dari: 1. The Art of Computer Systems Performance Analysis” by Raj Jain, Wiley 1991. 2. Computer Systems Analysis Using Network Models, Edward Lazowska, John Zahorjan, Scott Graham, and Kenneth Sevcik, Prentice-Hall, 1984.

  2. Outline • Hukum Operasional • Hukum Utilisasi • Hukum Little • Response Time Law • Forced Flow Law • Dasar teori antrian • Proses stokastik • Analisis satu antrian

  3. Kedatangan Selesai Sistem Sistem sebagai Black box Hukum Operasional • “Operasional” => langsung terukur • Asumsi operasional (Misalnya: jumlah kedatangan == jumlah yang selesai) dapat diveifikasi dengan pengukuran • Kuantitas operasional dapat langsung diukur dalam satu periode observasi tertentu

  4. Notasi T := waktu observasi A := jumlah kedatangan  := kecepatan kedatangan = A/T C := jumlah yang selesai X := throughput = C/T B := busy time / waktu sibuk U := utilisasi = B/T S := mean service time=B/C R := mean time pada sistem (residence time) Z := think time pada terminal user D := service demand V := number of visits N := mean number in system

  5. Hukum Ulitisasi • Utilisasi adalah porsi waktu kerja / sibuk sistem. • U selalu bernilai antara 0 dan 1. Utilisasi sistem (atau sumber daya) sama dengan throughput dikalikan waktu pelayanan rata-rata

  6. Hukum Utilisasi – Contoh 1 • Sebuah disk melayani 50 request/detik; setiap request membutuhkan waktu layanan 0.005 detik. 1) Berapa nilai utilisasinya? U = 50x0.005 = .25 (25%) 2) Kecepatan servis maksimum yang dimungkinkan? U = 1 = (0.005)X X = 200 request/detik

  7. Hukum Utilisasi – Contoh 2 • Sebuah router menyalurkan 100 paket/detik ke sebuah link. Waktu transmisi (yaitu, waktu yang diperlukan untuk meletakkan paket pada link), rata-rata, adalah 1 ms. Berapa nilai utilisasi link? Link throughput: X = 100 paket/detik Service time: S = 0.001 detik U = XS = 0.1 (10%) Kapasitas link?

  8. Hukum Little (1) • Asumsikan Job Flow Balance : jumlah kedatangan sama dengan jumlah yang selesai • Job baru tidak dibangkitkan oleh sistem • Job tidak hilang (selamanya) pada sistem • Jika job hilang dalam sistem (misalnya, karena kapasitas yang terbatas), hukum ini berlaku dengan kecepatan kedatangan yang disesuaikan (adjusted arrival rate) • Mean # pada system = arrival rate x mean response time N =  R = X R • Secara intuitif, kita akan menurunkan hukum ini …

  9. Gb 1: J = Area antara garis “kedatangan” dan “kepergian” Gb 2 & 3: J=area di bawah kurva = waktu total yang diperlukan job dalam sistem Dari Gb 3, mean time pada sistem = J/A Dari Gb 2, mean number pada sistem = J/T = A/T x J/A N =  R = XR (Hukum Little) 3 Kedatangan Nomer Job 2 Kepergian 0 1 Waktu 8 4 5 7 3 Nomer pada sistem 2 1 8 4 5 7 0 2 1 3 Waktu pada sistem # Job Hukum Little (2) Waktu Gb. 1 Gb. 3

  10. R Kedatangan Kepergian Jumlah pada sistem = N Gb: Hukum Little Hukum Little (3) • Jumlah rata-rata pada sistem sama dengan hasil kali throughput sistem dengan residence time rata-rata customer.

  11. Hukum Little – Contoh 1 • Pada jam sibuk, sekitar 20 klien mendatangi sebuah barbershop. Setiap klien, rata-rata, membutuhkan waktu 15 menit di tempat tersebut. Berapa klien ada pada saat yang sama di tempat tersebut? • Dari hukum Little: N =  R = 20 klien/jam x (15/60) = 5 klien

  12. kedatangan kepergian antrian disk Sistem 1 Sistem 2 Hukum Little – Contoh 2 • Hukum Little dapat diterapkan pada banyak subsystem • Satu disk melayani 50 request/detik; setiap request membutuhkan waktu layanan 5 ms; waktu rata-rata untuk memenuhi satu request adalah 20 ms; • Lihat subsystem 1: X = 50, S = 0.005; U = .25. Dalam hal ini, N = U dan S = R. Kenapa? • Lihat subsystem 2: X = 50, R = 0.02; N = XR N = 1 (antri + pada server); # rata-rata yang menunggu palayanan = ?

  13. N = # rata-rata terminal; Z = think time rata-rata; R = Resp. time sistem rata; Dengan menggunakan hukum Little pada sistem (lihat gambar di bagian bawah RHS): N = X(R+Z) R = (N/X) - Z Z Box 1 Terminal X Box 2 Subsistem R Subsistem + Terminal X Response Time Law (1) R+Z Model Time Sharing System

  14. Hukum Little berlaku pada Box 1 dan Box 2 Hukum Little pada Box 2: NS = XR Hukum Little pada Box 1: NT = XZ Perhatikan bahwa: N = NT + NS Z Box 1 Terminal X Box 2 Subsistem R Response Time Law (2) Model Time Sharing System

  15. 64 user interactif; think time rata-rata = 15 detik; system throughput = 4 interaksi/detik. Hitung R? R = (N/X) – Z = 1 detik Z Box 1 Terminal X Box 2 Subsistem R Response Time Law – Contoh 1

  16. Response Time Law – Contoh 2 • Sebuah Web server diukur selama periode satu jam. Selama periode ini, 50 klien diobservasi. Demand waktu CPU rata-rata terukur sebesar 5ms, dengan utilisasi CPU sebesar 0.25. Response time rata-rata untuk request adalah 0.25 detik. Berapa rata-rata client think time (dalam detik)?

  17. Response Time Law – Contoh 2 N = 50; Scpu = 0.005s; Ucpu = 0.25; R = 0.25s Dengan menggunakan hukum utilisasi: X = Ucpu/Scpu = 50 req./s Dengan menggunakan hukum response time: Z = (N/X) – R = 0.75s Pada satu saat, berapa banyak klien yang melakukan “thinking”?

  18. 1 3 2 Forced Flow Law • Setiap “system-level” request dapat membutuhkan lebih dari satu kali layanan “sumber daya” sistem. • Contoh: Suatu transaksi basis bisa memerlukan beberapa kali aksis disk; • Visit ratio (Visit count) – rasio jumlah selesai pelayanan subsistem terhadap jumlah pelayanan sistem Vk := Ck/C

  19. Forced Flow Law • Jika diperlukan Vk layanan pada sumber daya K dalam waktu T dan total X selesainya layanan system-level yang terobservasi pada waktu T, maka: Xk := VkX Uk := XkSk = X VkSk = XDk • Sk := mean service time per layanan di sumber daya K • Dk := total service demand pada sumber daya K

  20. Forced Flow Law – Example 1 • Sebuah server basis data dimonitor selama 15 menit. Pada waktu itu, CPU server berstatus sibuk selama 12 menit. Kemudian diketahui bahwa setiap transaksi membutuhkan rata-rata 2 kali layanan CPU, dan membutuhkan layanan selama 1 milidetik setiap kalinya. Berapa throughput sistem (dalam transaksi per detik)? • T = 15 menit; BC = 12 menit; VC = 2; SC = 1 milidetik UC = B/T = 0.8 UC = X VCSC => X = 0.8/(2x0.001) = 400 transaksi/detik

  21. Forced Flow Law – Contoh 2 • Sebuah sistem interaktif memiliki karakteristik sebagai berikut: jumlah terminal: 18 think time rata-rata: 10 detik layanan pada disk tertentu per interaksi: 20 utilisasi disk ini: 0.3 Kebutuhan rata-rata per layanan pada disk: 20 milidetik Tentukan: 1) disk throughput ? 2) system throughput ? 3) response time ?

  22. Outline • Hukum Operasional • Dasar teori antrian • Definisi • Notasi Kendal • Aturan untuk semua antrian • Proses Stokastik • Analisis satu antrian

  23. Yang berikut ini harus ditentukan (untuk memungkinkan dilakukannya analisis): Populasi pelanggan Proses kedatangan Jumlah server Disiplin (aturan) layanan Distribusi waktu layanan Kapasitas sistem Model Antrian Dasar (1) Disiplin layanan Proses kedatangan Antrian Server Populasi pelanggan

  24. Ukuran Populasi Pelanggan potensial yang dapat memasuki antrian Sistem riil memiliki populasi berhingga Bagaimanapun, jika populasi besar, asumsikan tak hingga untuk kemudahan analisis. Proses kedatangan Pelanggan datang pada waktu t1,t2,…,tj Waktu antar kedatangan j := tj-tj-1 Asumsikan waktu antar kedatangan j merupakan variabel acak IID Misalnya, proses Poisson, Erlang, hipereksponensial, umum. Distribusi waktu layanan Asumsikan variabel acak IID Misalnya, proses Poisson, Erlang, hipereksponensial, umum. Disiplin layanan FIFO (atau FCFS) paling umum Random Round Robin Prioritas … Jumlah server Satu/banyak (identik) server Kapasitas sistem Ruang tunggu + jumlah yang sedang dilayani Asumsikan tak hinggan jika kapasitas besar Model Antrian Dasar (2)

  25. Notasi Kendall A/S/m/B/K/SD A adalah distribusi waktu antar kedatangan S adalah distribusi waktu layanan m adalah jumlah server B adalah jumlah buffer (kapasitas sistem) K adalah ukuran populasi SD adalah disiplin layanan Beberapa singkatan umum M (Markov): menunjukkan distribusi eksponensial (berarti “tidak membutuhkan memori”) D (Deterministik): nilai-nilai bersifat konstan Ek (Erlang): Distribusi Erlang dengan k fase G (General/umum): menunjukkan bahwa distribusi tidak dispesifikasi, hasil valid untuk semua distribusi Bulk arrival (kedatangan yang berjumlah banyak) dilambangkan dengan menggunakan superscript. Misalnya, M[x] Notasi Kendal

  26. Contoh • M/M/3/20/1500/FCFS adalah sistem antrian tunggal dengan: • Waktu antar kedatangan yang terdistribusi eksponensial • Waktu layanan terdistribusi eksponensial • Tiga server • Kapasitas sistem 20; ukuran antrian adalah 20 – 3 = 17 • Ukuran populasi 1500 • Disiplin layanan adalah FCFS • M/M/3: Biasanya, mengasumsikan kapasitas sistem tak hingga, populasi tak hingga, dan layanan FIFO. Pada kasus seperti ini, tiga parameter terakhir tidak dipakai.

  27.  = waktu antar kedatangan  = mean arrival rate (kecepatan kedatangan rata-rata) = 1/E[] Bergantung pada # job pada sistem s = waktu layanan per job  = mean service rate (kecepatan layanan rata-rata) per server = 1/E[s]; total service rate = m nq = # job yang antri ns = # job yang dilayani n = # job pada sistem n = nq + ns adalah panjang antrian r = response time (waktu tanggap) Waktu antri plus dilayani w = waktu tunggu Waktu mulai layanan dikurangi waktu datang Server Kedatangan Antrian   Kedatangan sebelumnya Kedatangan Layanan selesai Layanan dimulai  w s Variabel Acak untuk Antrian r All variable except  and  are random

  28. Aturan untuk semua Antrian (1) • Kondisi Stabilitas • Untuk kestabilan, mean arrival rate harus lebih kecil dari mean service rate:  < m • Tidak berlaku untuk sistem polulasi berhingga dan sistem kapasitas berhingga • Antrian untuk sistem populasi berhingga tidak dapat bertambah tanpa batas • Per definisi, antrian untuk sistem buffer berhingga tidak dapat bertambah tanpa batas.

  29. Aturan untuk semua Antrian (2) • Jumlah pada Sistem versus Jumlah pada Antrian • Jumlah job pada sistem sama dengan jumlah yang sedang antri dan sedang dilayani • n = nq + ns • E[n] = E[nq]+E[ns] • Yaitu, jumlah rata-rata (mean) job pada sistem sama dengan jumlah rata-rata pada antrian ditambah jumlah rata-rata yang sedang dilayani. • Jika service rate server tidak bergantung pada jumlah job pada antrian, maka • Var[n] = Var[nq]+Var[ns] • Cov(nq,ns) = 0

  30. Aturan untuk semua Antrian (3) • Jumlah versus Waktu • Jika job tidak hilang karena buffer penuh, job rata-rata (mean) berhubungan dengan waktu tanggap (response time) sebagai berikut: • mean # job pada sistem = arrival rate x mean resp. time • mean # job pada antrian = arrival rate x mean waktu tunggu • Hubungan di atas didapat dengan menggunakan Hukum Little • Hukum Little dapat dipakai untuk sistem buffer berhingga dengan menganggap effective arrival rate

  31. Aturan untuk semua Antrian (4) • Waktu pada sistem versus Waktu pada Antrian • Waktu yang dihabiskan sebuah job pada sistem adalah jumlah waktu tunggu dan waktu layanan. Yaitu, r = w + s • Mean response time sama dengan jumlah mean waiting time dan mean service time. E[r] = E[w] + E[s] • Jika service rate tidak bergantung pada # job pada antrian • Cov(w,s) = 0 • Var[r] = Var[w] + Var[s]

  32. Outline • Hukum Operasional • Dasar teori antrian • Proses stokastik • Status diskrit vs. Status kontinu • Markov • Birth-Death • Poisson • Analisis Antrian Tunggal

  33. Proses Stokastik • Pemodelan analitik banyak menggunakan variabel acak yang merupakan fungsi waktu. • # job n(t) pada CPU sistem komputer • # job w(t) yang menunggu pada antrian • Fungsi distribusi probabilitas untuk n(t) dan w(t) untuk semua t (yang mungkin) diperlukan untuk menspesifikasi variabel acak ini. • Fungsi acak dari waktu ini disebut proses stokastik

  34. Proses Stokastik –Status Diskrit vs. Status Kontinu • Diklasifikasikan menurut nilai yang bisa dimiliki status • Jika nilai yang mungkin tersebut berhingga atau dapat dicacah=> diskrit • Misalnya, # job pada sistem n(t) {0, 1, 2, …} • n(t) disebut proses stokastik-diskrit atau rangkaian stokastik • Proses status kontinu dapat memiliki semua nilai riil.

  35. Contoh Proses Stokastik – Proses Bernoulli • Penghitungan jumlah sisi gambar pada pelemparan n coin merupakan proses stokastik yang umum dikenal dengan nama proses Bernoulli • Misalkan X1, X2, X3, … adalah variabel acak IID Bernoulli; yaitu • Xi=1 dengan probabilitas p; Xi=0 dengan probabilitas 1-p; • Maka, Sn= X1+ X2+ … + Xn adalah proses Bernoulli • Sn adalah proses status diskrit • Sn memiliki distribusi Binomial, untuk setiap n

  36. Proses Stikastik yang Penting • Proses Markov • Birth-Death Process • Proses Poisson

  37. Proses Markov • Jika probabilitas status yang akan datang tidak bergantung pada status di masa lalu dan hanya bergantung pada masa kini, maka proses tersebut disebut Markov. • Properti Markov memudahkan analisis, karena data dari keadaan sebelumnya tidak perlu diingat. • Markov Chain: Proses Markov status diskrit

  38. p q p 1 0 q Markov Chain • Jika tertarik dengan Markov chain dengan probabilitas transisi status stasioner, yaitu,

  39. Birth-Death Process (1) • Birth-Death process: Markov yang hanya memungkinkan transisi ke status yang bersebelahan • Merepresentasikan status dengan integer. Proses dalam status n dapat transisi ke status n-1 atau n+1 • Contoh, # job dalam antrian pada sistem single server dapat direpresentasikan oleh birth-death process • Birth => kedatangan job => +1 transisi status • Death => kepergian => -1 transisi status • Batched arrival (kedatangan bersamaan) tdiak dapat dimodelkan!

  40. 2 3 0 1 3 2 1 0 μ3 μ1 μ2 μ4 Birth-Death Process (2) • Dengan menggunakan keseimbangan aliran stokastik, probabilitas steady state pada suatu status dapat dihitung.

  41. Proses Markov Birth-Death process Proses Poisson Hubungan antar Proses

  42. Outline • Hukum Operasional • Dasar teori antrian • Proses Stokastik • Analisis of Antrian Tunggal • Antrian M/M/1 • Antrian M/M/c

  43. 3 2     1 0 μ μ μ μ Antrian M/M/1 (1) • Satu server, satu antrian, layanan FIFO • Waktu antar kedatangan dan layanan terdistribusi eksponensial • Populasi tak hingga, kapasitas tak hingga • Dapat dimodelkan sebagai birth-death process Notation: pn := probabilitas steady-state dari keberadaan pada status n

  44. Antrian M/M/1 (2) • Dengan menggunakan persamaan keseimbangan aliran stokastik (stochastic flow balance): pn = (/)n p0 = np0, n=0,1,…,  adalah intensitas trafik (<1 untuk stabilitas) • Total probabilitas adalah. Dengan demikian, ∑ pn = 1, n = 0, 1, …,  p0(0 + 1 + 2 + …) = 1 p0 = (1-) pn = n(1-) • Pengukuran kinerja yang penting adalah …

  45. Antrian M/M/1 (3) • Utilisasi: probabilitas satu atau lebih job berada dalam sistem U = 1- p0 =  • Mean # job pada Sistem E[n] = ∑npn , n = 0, 1, …,  E[n] = /(1-) • Mean response time (hukum Little’s) • Jumlah pada sistem = arrival rate x response time E[n] = E[r] E[r] = (1/)(/(1-)) = (1/)(1/(1-))

  46. Antrian M/M/1 (4) • Mean # job pada antrian E[nq] = ∑(n-1)pn , n = 1, …,  E[nq] = (2)/(1-) • Juga bisa didapat dengan menggunakan: E[n] = E[nq] + E[ns] • Mean waiting time pada antrian (Hukum Little) • Jumlah pada antrian = arrival rate x mean waiting time E[nq] = E[w] E[w] = (1/)((2)/(1-)) = ((1/μ)/(1-))

  47. Antrian M/M/1 (5) • Probabilitas n atau lebih job ada pada sistem P(# pada sistem ≥ n) = ∑pj , j = n,n+1, …,  = ∑(1-)j = n • Distribusi waiting time (waktu tunggu) dan response time (waktu tanggap): • Waiting time pada antrian terdistribusi eksponensial P[0 < w ≤ t] = 1 - e-t(1-) • Response times terdistribusi eksponensial P[0 < r ≤ t] = 1 - e-t(1-)

  48. Antrian M/M/1 – Contoh • Paket pada router datang dengan kecepatan 100 paket/detik. Router membutuhkan 1 milidetik untuk mentransmisikan paket yang masuk ke link yang ke luar. Dengan menggunakan model M/M/1, jawablah pertanyaan berikut ini: • Berapa nilai utilisasi? • Probabilitas n paket pada router? • Mean time yang diperlukan di dalam router router? • Probabilitas buffer overflow jika router hanya dapat menampung 5 paket? • Persyaratan buffer untuk membatasi kehilangan paket sampai 10-6?

  49. Antrian M/M/1 - Contoh • Arrival rate  = 100 pps • Service rate  = 1/.001 = 1000pps • Intensitas trafik  = 0.1 • Waktu beradanya paket dalam router (mean) r = (1/)(1/(1-)) = 1.01 ms • Probabilitas buffer overflow P(# ≥ 6) = 6= 10-12 • Untuk membatasi kehilangan sampai lebih kecil dari 10-6 n ≤ 10-6 n > log(10-6)/log(0.1) > 3

  50. 3 2     1 0 3μ μ 2μ 3μ Antrian M/M/c (1) • c server, satu antrian, layanan FIFO service, waktu antar kedatangan dan layanan terdistribusi eksponensial • Populasi tak hingga, kapasitas tak hingga • Model sebagai birth-death process dengan K status Diagram transisi status untuk antrian M/M/C dengan C=3

More Related