IMPLEMENTASI FORMULA ERLANG B UNTUK MENENTUKAN QOS (QUALITY OF SERVICE) DAN PERAMALAN DATA CALL OFFERED DENGAN RADIAL BASIS FUNCTION NETWORK PADA CALL CENTER BERBASIS ASTERISK FOR JAVA Muhammad Firdaus AlKautsar, Mike Yuliana, Reni Soelistijorini Jurusan Teknik Telekomunkasi - Politeknik Elektronika Negeri Surabaya Institut Teknologi Sepuluh Nopember (ITS) Surabaya Kampus PENS-ITS, Keputih, Sukolilo, Surabaya. Telp : +62+031+5947280; Fax. +62+031+5946011 Email : alkautsar @student.eepis-its.edu Abstrak Call center adalah suatu pusat pelayanan jarak jauh yang dilakukan melalui media telekomunikasi telepon dimana pelanggan dapat berkomunikasi secara real time dengan petugas pelayan. Sumber daya teknologi yang dibutuhkan dalam penerapan call center antara lain : call center media server, IP Agents, dan base system [1]. Perangkat-perangkat tersebut biasanya diproduksi oleh perusahaan lain sehingga harganya cukup mahal. Ditambah lagi, untuk memantau kinerja call center, data-data yang tercatat pada server harus diolah secara manual untuk mendapatkan nilai QoS (Quality of Service) nya. Sehingga dibutuhkan sumber daya tambahan untuk mengolah data-data tersebut. Pada tugas akhir ini dibangun prototype call center berbasis Asterisk for Java yang telah terintegrasi dengan software penghitung QoS berbasis formula Erlang B dan peramalan data call offered pada call center untuk beberapa waktu ke depan dengan metode Radial Basis Function Network (RBFN) Dari hasil pengujian menunjukkan bahwa sistem call center yang dibuat telah berhasil dengan baik. Pengukuran waktu eksekusi koneksi ke database dengan 10 kali pengambilan data untuk status panggilan ANSWERED rata-rata 6,8 milidetik. Untuk status panggilan BUSY rata-rata waktu eksekusi 1,4 milidetik. Untuk perhitungan QoS dengan menggunakan program Formula Erlang B memiliki rata-rata kesalahan 0,0000635%. Peramalan data call offered dengan metode RBFN memiliki prosentase kesalahan rata-rata 7,1928 %. Kata kunci : call center, Asterisk for Java, QoS, Erlang-B, RBFN 1. PENDAHULUAN Call center merupakan bagian penting pada sebuah perusahaan yang memiliki layanan jasa untuk konsumennya. Call center terdiri dari sistem dan agent. Sistem disini adalah arsitektur perangkat yang membangun sistem call center. Agent adalah sumber daya manusia yang menggunakan sistem tersebut untuk melayani konsumen. Sistem pada sebuah call center biasanya terdiri atas server yang berfungsi sebagai pusat distribusi panggilan, monitor kegiatan agent, dan lain sebagainya. Sistem yang dimiliki oleh call center sebuah perusahaan memiliki harga yang relatif mahal karena server yang digunakan merupakan produk dari sebuah brand tertentu. Setiap perusahaan pasti menginginkan call center yang memiliki kinerja yang baik. Kinerja sebuah call center dapat diukur dengan melihat parameter QoSnya. QoS (Quality of Service) adalah indeks penilain kinerja call center. Nilai tertinggi sebesar 1. Semakin besar nilai QoS maka semakin baik kualitas call center tersebut. Kualitas sebuah server ditentukan dari jumlah parameter panggilan yang masuk (call offered ),panggilan yang diterima (call answered), panggilan yang ditolak (call blocked), jumlah agent yang tersedia, dan beberapa parameter lain. Semakin banyak panggilan yang ditolak dalam rentang waktu tertentu maka semakin buruk performa call center tersebut. Perhitungan QoS sebuah call center dapat memanfaatkan formula Erlang B. Formula ini merupakan model penolakan panggilan dimana ketika layanan (agent) tidak tersedia, panggilan konsumen yang meminta layanan ditolak dan harus mengulang kembali panggilannya. Dapat diasumsikan seperti trunk telepon. Ketika seluruh trunk telepon penuh, pemanggil menerima nada sibuk dan harus 1
memutus panggilannya untuk mengulanginya kembali hingga layanan (trunk yang kosong) tersedia. Formula Erlang B memberikan perhitungan untuk Grade of Service (GoS). GoS adalah probabilitas penolakan panggilan yang masuk. Nilai QoS didapat dengan persamaan : QoS = 1 - GoS Pada tugas akhir ini, akan dibuat prototype call center yang dilengkapi dengan fitur penghitung QoS berbasis formula Erlang B serta peramalan data trafik. Server call center dibangun dengan pemrograman Asterisk for Java. Fitur penghitung QoS dibangun dengan pemrograman Java. Ketika server diaktifkan, maka software penghitung QoS diintegrasikan dengan server. Sehinga server mampu menghitung jumlah panggilan masuk, panggilan yang ditolak, dan parameter lain yang nantinya akan digunakan sebagai inputan untuk menghitung QoS sistem serta peramalan data trafik. 2. TRAFIK Secara bahasa, trafik diartikan lalu-lintas. Lalu-lintas adalah pergerakan dari sebuah objek dari titik awal (origination) ke titik tujuan (terminating) secara acak. Volume of traffic adalah jumlah objek yang bergerak dalam satu periode tertentu. Volume trafik menentukan jumlah saluran yang dibuuhkan. Selain volume trafik, rute dan waktu juga harus diperhatikan dalam pembahasan trafik. Pada bidang telekomunikasi, trafik dapat diartikan pembangkitan panggilan telepon pada satu grup sirkuit yang berkenaan dengan lama dan jumlah panggilan. 2.1 Intensitas Trafik Intensitas trafik menyatakan jumlah rata-rata dari panggilan yang terjadi secara bersama-sama selama selang waktu tertentu. Persamaannya adalah : a = λh.(1) [2] Dimana a adalah intensitas trafik λ adalah volume trafik h adalah periode pendudukan Pada pure loss system terdapat 3 jenis panggilan yaitu : λ offered yaitu jumlah panggilan yang datang λ carried dilayani λ lost yaitu jumlah panggilan yang mampu yaitu jumlah panggilan yang gagal Dari ketiga jenis panggilan di atas, didapatkan 3 jenis trafik : Traffic Offered (a offered ) = λ offered. h [2] Traffic Carried (a ocarried ) = λ carried. h [2] Traffic Lostd (a lost ) = λ lost. h [2] Satuan trafik adalah erlang dimana 1 erlang menyatakan rata-rata dari sebuah panggilan selama satu periode waktu. Trafik juga dinyatakan dalam seratus percakapan per detik per jam atau CCS (Hundreds of calls seconds per hour). Karena 1 jam terdiri dari 3600 detik maka 1 erlang = 1 call hour = 3600 detik = 36 CCS 2.2 FORMULA ERLANG B Erlang B adalah model penolakan panggilan masuk dimana ketika seluruh layanan (agent) sedang sibuk, panggilan datang akan langsung ditolak. User harus mengulangi kembali panggilannya hingga terdapat agent yang bebas. Formula ini menyediakan GoS (Grade of Service) dimana probabilitas P b adalah probabilitas sebuah panggilan yang datang pada sebuah jaringan ditolak karena semua server sibuk. Formula Erlang B dituliskan sebagai berikut : Pb = B(E,m) =!!..(2) [2] Dimana : P b adalah probabilitas ditolaknya panggilan yang masuk m adalah jumlah sumber daya atau server pada sebuah jaringan E = λh adalah total jumlah traffik yang disediakan pada satuan erlang 2.3 PERAMALAN DENGAN RADIAL BASIS FUNCTION NETWORK (RBFN) Terdapat enam langkah untuk proses peramalan dengan metode ini[5] yaitu penentuan variable input, penentuan center atau neuron pada hidden layer, perhitungan skala jarak (radius), perhitungan bobot, perhitungan nilai fungsi Gaussian, dan peramalan. Langkah 1 : Penentuan Input Jaringan Untuk menentukan input pada RBFN, salah satu metodenya adalah dengan mencobacoba berbagai kombinasi input dan membandingkan persen errornya. Kombinasi input yang dipilih adalah kombinasi input yang memiliki persen error terkecil. Langkah 2 : Penentuan Center Untuk menentukan center, Orr [5] menggunakan metode Orthogonal Least Square (OLS) dengan bantuan Matlab memanfaatkan fungsi rbfdesign dan forwardselect. Center yang terbentuk ditandai dengan indeks c j. 2
Langkah 3 : Menghitung faktor Skala (radius) Untuk menghitung faktor skala menggunakan persamaan : r = ( )..(3) [5] Dimana : m adalah jumlah center yang terbentuk pada langkah 2 c j adalah nilai center pada indeks ke-j c adalah rata-rata nilai center Langkah 4 : Menghitung bobot Untuk menghitung bobot optimal menggunan persamaan : w = (H H) H y (4) [5] Dimana : w adalah bobot H adalah matriks yang berisi nilai semua center yang terbentuk y adalah data yang dijadikan input jaringan RBFN. Jumlah bobot yang dihasilkan sebanyak jumlah center. Langkah 5 : Perhitungan Nilai Fungsi Gaussian Menghitung nilai Gaussian dengan peramaan : h j (x)=e..(5) [5] dimana : h j adalah fungsi Gaussian pada indeks ke-j x i adalah data input indeks ke-i yang didapatkan dari langkah 1 c j adalah center pada indeks ke-j r j adalah factor skala yang didapat pada langkah 3 Langkah 6 : Peramalan Untuk meramalkan data menggunakan persamaan : ŷ = f(x) = W h (x) (9) [5] dimana ŷ = f(x) adalah data peramalan 3. Pengujian Sistem 3.1 Set-Up pengujian Gambar 1. Set-Up Pengukuran IP PBX server berfungsi sebagai pendistribusi panggilan dan monitoring aktivitas panggilan dan menyimpannya ke database. User atau client harus melakukan panggilan ke nomor ekstensi server Panggilan akan dirutekan ke agent jika tersedia. 3.2 Hasil Pengujian dan Analisa 1. Proses Login Pada Program Monitoring Pada sistem call center yang dibangun, segala proses monitoring hanya dapat diakses oleh pihak tertentu saja. Dalam hal ini, pihak yang mempunyai privilidge untuk mengakses memiliki username dan password tertentu. Pada sistem, pengaturan username dan password diatur pada subbab 4.1.3. Untuk menguji keamanan pengaksesan, dilakukan pengujian proses Login sebanyak 10 kali. Pada setiap kali engujian, nama dan password yang dimasukkan berubah. Pada manager.conf telah diinisialisasi username = tesar dan password = tesar. Berikut hasil pengujian Login sebanyak 10 kali : Tabel 1 Pengujian login pada program monitoring username password Kondisi manager pa55w0rd V MaNaGeR pa55w0rd V Sukses Gagal client pa55w0rd V manager PA55W0rD V client client V 3
Pengujian dilakukan dengan memasukkan username dan password yang berbeda beda pada saat program meminta proses otentifikasi. Pengujian proses dilakukan selama 10 kali. Username dan password yang dimasukkan sebagai input kedalam program seperti yang terlihat di tabel di atas. Dari hasil pengujian diketahui bahwa untuk username tidak case sensitif. Namun password case sensitif. 2. Event Ketika sistem dijalankan, sistem akan menunggu panggilan masuk. Ketika ada panggilan yang masuk, sistem akan memunculkan event-event yang dijalankan. Event akan muncul baik pada kondisi sistem dijalankan, ada panggilan yang masuk, panggilan diterima oleh agent, dan panggilan berakhir. Daftar event yang muncul padaketiga kondisi di atas adalah sebagai berikut : Tabel 2 Event yang muncul saat panggilan masuk ke sistem Kondisi Event yang muncul Sistem dijalankan pertama kali 1. Connect Event 2. StatusCompleteEvent Ketika agent 1. DialEvent mendapatkan 2. NewCallerIdEvent panggilan 3. NewStateEvent Ketika agent 1. NewAccountCodeEvent menerim panggilan 2. BridgeEvent Ketika panggilan berakhir 1. CdrEvent 2. HangupEvent 3. Ketepatan Jumlah Panggilan Salah satu parameter keberhasilan sistem yang dibuat pada proyek akhir ini adalah sistem dapat menghitung dengan benar jumlah panggilan yang masuk ke dalamnya. Jika dilakukan panggilan sebanyak 20 kali, pada database akan tersimpan 20 panggilan pula. Berikut pengambilan data dan hasil penyimpanannya pada database : Gambar 2 Hasil input sistem ke database 4. Perhitungan QoS sistem Dilakukan pengujian ketepatan perhitungan dari program yang telah dibuat dengan perhitungan secara manual seperti dijelaskan di atas. Diasumsikan jumlah agent tetap yaitu 20 orang. yang dijadikan pengujian adalah data berurutan dari Januari 2009 hingga Oktober 2009. Perbandingannya ditunjukkan pada tabel 4.4 di bawah. Tabel 3 Perhitungan QoS sistem No λ Dur asi Perhitungan Progra Man m ual 0.88 6895 515 1 467 140 0.88689 551458 94993 2 480 171 0.77139 300359 79162 3 486 149 0.83820 426300 56233 4 492 148 0.83538 427178 97162 5 447 151 0.87247 292133 20312 6 432 217 0.78554 840963 17549 7 444 149 0.88164 535844 13146 8 433 206 0.72511 380395 26862 9 444 128 0.93984 818064 07768 10 348 160 0.94599 675345 36642 0.77 1393 003 0.83 8204 263 0.83 5384 271 0.87 2472 921 0.78 5548 409 0.88 1645 358 0.72 5113 803 0.93 9848 180 0.94 5996 753 Error (%) 4,62852 7,75112 6,70846 E-12 9,45333 3,80563 8,0422E- 10 5,00557 1,31384 E-09 6,81787 4,79562 4
Tabel 4 Perbandingan pemilihan input dan rata-rata error Gambar 3 Hasil perhitungan QoS sistem Input Average Error (%) X t-1 dan X t-15 8.483814624050957 X t-15 dan X t-30 12.721268890117384 X t-2 dan X t-15 10.48900403773106 X t-1 dan X t-30 7.192876922621033 X t-20 dan X t-30 26.967762413003527 X t-10 dan X t-20 23.748771655851577 X t-2 dan X t-3 15.320572630220017 X t-1 dan X t-3 13.180168956886435 Dari 20 kali pengujian didpatkan kombinasi input dengan rata-rata error terkecil adalah X t-1 dan X t-30. Kombinasi ini yang dijadikan inputan untuk proses perhitungan seterusnya. Gambar 4 Grafik perbandingan perhitungan Erlang B Dari hasil perbandingan antara perhitungan secara manual dengan hasil program didapatkan prosentase kesalahan yang sangat kecil. Kesalahan hanya disebabkan oleh jumlah angka dibelakang koma. Hal ini disebabkan oleh perbedaan jumlah angka dibelakang koma antara output program dengan hasil perhitungan kalkulator. Prosentase error yang kecil menandakan program yang dibuat sudah mendekati teori 5. Peramalan Call Offered Sistem 5.1 Pemilihan Input Optimal Pada RBFN yang dibangun, untuk mendapatkan hasil peramalan yang optimal dengan cara mencoba-coba berbagai kombinasi input. Beberapa kombinasi diimplementasikan pada program dan dilihat perbandingan hasil peramalan dengan data asli yang dijadikan testing(x 345 hingga x 360 ). Kombinasi yang terbaik memiliki rata-rata error terkecil Rata-rata error didapatkan dengan persamaan : Rata-rata error = ( ) ( ) ( ) x 100 % Dimana m adalah jumlah data yang diramalkan Pengujian kombinasi input dilakukan selama 20 kali. Pada tabel 4.0 ditampilkan 8 kombinasi input dengan rata-rata error kecil yang lebih kecil dibandingkan yang lain. 5.2 Peramalan dengan RBFN Setelah didapatkan input optimal, dilakukan pengujian peramalan data sebanyak data testing. Hasil pegujiannya adalah sebagai berikut Tabel 5 Perbandingan hasil permalan dengan data asli Asli (Xt) ramal (Yt) Persen Error Input X t-1 dan X t-30 X 346 X 347 X 348 X 349 X 350 265.0 269.0 287.0 304.0 307 186.5 253.44 284.75 272.34 279.53 29.62 5.78% 0.78% 10.41% 8.94% % X 351 X 352 X 353 X 354 X 355 Asli (Xt) 270 263 277 311 359 ramal (Yt) 250 263.7 268.45 298.52 349.98 Persen Error 7,40% 0,26% 3,08% 4,01% 2,51% X 356 X 357 X 358 X 359 X 360 Asli (Xt) 375 359 375 363 329 ramal (Yt) 391.5 2 370.63 391.52 352.62 269.14 Persen Error 4,40% 3,23% 4,40% 2,85% 18,19% Jika hasil peramalan untuk data testing seperti terlihat pada tabel 4.11 divisiualisasikan dalam bentuk grafik didapatkan tampilan sebagai berikut : 5
6. Jaringan Radial Basis Function yang digunakan sebagai metode peramalan menggunakan input optimal X t-1 dan X t-30 7. Program peramalan data call offered mampu memprediksi nilai call offered waktu mendatang dengan prosentase kesalahan rata-rata 7.1928 % Gambar 5 Grafik Perbandingan Asli dengan Peramalan Secara grafik, hasil peramalan mendekati bentuk grafik dari data asli yang dijadikan testing meskipun prosentase kesalahan bervariasi dengan rata-rata kesalahan peramalan 7.1928 % Pada pembuatan RBFN untuk peramalan ini, telah dilakukan usaha untuk memperkecil prosentase error yaitu dengan menormalisasi input seperti dijelaskan pada subbab 4.1.5.1 dan memilih kombinasi input optimal. Dari hasil peramalan masih memiliki prsentase error sebesar 7.1928%. Hal ini dimungkinkan karena pada jaringan RBFN yang dibuat tidak dilakukan perubahan atau peng-update-an bobot. Pada RBFN ini, bobot dianggap sebagai bobot optimal mengikuti teori yang dikenalkan [5] oleh Orr dan diimplementasikan pada perangkat lunak Matlab. REFERENSI / DAFTAR PUSTAKA [1] Anugrah, Andi, Sukses Mengelola Call center (Edisi Revisi), Telexindo Bizmeda, 2009 [2] Iversen, Villy B. 2004. Teletraffic Engineering and Network Planning. Technical University of Denmark : Building 345v. [3] Yuliana, Mike, Call Centre, 2009. [4] M. Jim Van, M. Leif: Asterisk: The Future of Telephony 2 nd Edititon, Safari Books Online, 2007. [5] Sumadi, 2007. Radial Basis Function Network untuk Peramalan Time Series, Tesis tidak diterbitkan. Surabaya : ITS [6] Goncalves E. Flavio: Asterisk PBX Configuration Guide, Digium Inc, 2006. 6. KESIMPULAN Setelah melakukan pengujian dan analisa pada sistem ini diperoleh kesimpulan sebagai berikut : 1. Sistem yang dibangun telah mampu menyimpan data jumlah panggilan sesuai dengan kondisi real yang terjadi. Keberhasilan penyimpanan data panggilan mencapai 100 %. 2. Waktu yang dibutuhkan untuk mengakses data panggilan yang tersimpan di database adalah sebagai berikut : Untuk panggilan dengan status Answered sebesar 6,8 milisekon Untuk panggilan dengan status Busy sebesar 1,4 milisekon Semakin sedikit jumlah data yang tersimpan maka semakin cepat waktu pengaksesan data tersebut. 4. Program penghitung Erlang B menghasilkan probabilitas penolakan yang menyerupai perhitungan secara manual. Persentase kesalahan rata-rata 0,00000635 % 5. Waktu yang dibutuhkan untuk perhitungan Formula Erlang B rata-rata sebesar 10 milisekon dengan jumlah pengambilan sampel sebanyak 10 kali. 6