PEMODELAN TRANSAKSI PELANGGAN MENGGUNAKAN MODEL HIDDEN MARKOV
DELLA AZIZAH MUNAWAR
DEPARTEMEN MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR BOGOR 2012
ABSTRACT DELLA AZIZAH MUNAWAR. The Modeling of Customer Transactions by Using Hidden Markov Model. Supervised by BERLIAN SETIAWATY and NGAKAN KOMANG KUTHA ARDANA. A customer transaction is one of the activities needed to establish a market. This event may happen at any time in a long time series and may be repeated in the future. If the causes of customer transactions are assumed not to be observed directly and they form a Markov chain, then the customer transactions can be modeled by using the hidden Markov model. The hidden Markov model is characterized by some parameters of initial distribution, transition, and transactions. The parameters in this final assignment are estimated by using the Rabiner method, which consists of forward-backward, Viterbi, and Baum-Welch algorithms. The hidden Markov model for customer transactions is applied to transaction data of Anisa Cell’s cellular company. By using the transactions data, a computer program is created using Mathematica 7.0 and LINGO 11.0 to estimate the parameters of the hidden Markov model. The results show that the hidden Markov model can model the company’s transactions well. This can be seen from the estimation’s accuracy, which is above 96%. Key words: transaction, hidden Markov model, Rabiner method.
ABSTRAK DELLA AZIZAH MUNAWAR. Pemodelan Transaksi Pelanggan Menggunakan Model Hidden Markov. Dibimbing oleh BERLIAN SETIAWATY dan NGAKAN KOMANG KUTHA ARDANA. Transaksi pelanggan adalah salah satu kegiatan yang diperlukan untuk membentuk sebuah pasar. Kejadian tersebut dapat terjadi kapan saja dalam suatu deret waktu yang panjang dan mungkin saja terulang kembali di masa yang akan datang. Jika penyebab terjadinya transaksi pelanggan diasumsikan tidak diamati secara langsung dan membentuk suatu rantai Markov, maka transaksi pelanggan dapat dimodelkan dengan menggunakan model hidden Markov. Model hidden Markov dicirikan oleh parameter peluang awal, peluang transisi, dan peluang transaksi. Penduga parameter dalam tugas akhir ini diestimasi menggunakan metode Rabiner yang terdiri dari algoritme forward-backward, Viterbi, dan Baum-Welch. Model hidden Markov untuk transaksi pelanggan diaplikasikan pada data transaksi suatu perusahaan sellular. Dengan menggunakan data transaksi Anisa Cell, dibuat suatu program komputasi menggunakan software Mathematica 7.0 dan LINGO 11.0 untuk menentukan nilai penduga parameter model hidden Markov. Hasil yang telah diperoleh, menunjukkan model hidden Markov dapat memodelkan transaksi perusahaan tersebut dengan baik. Hal ini dapat dilihat dari nilai persentase ketepatan dugaan di atas 96%. Kata kunci: transaksi, model hidden Markov, metode Rabiner.
PEMODELAN TRANSAKSI PELANGGAN MENGGUNAKAN MODEL HIDDEN MARKOV
DELLA AZIZAH MUNAWAR G54070072
Skripsi Sebagai salah satu syarat untuk memperoleh gelar Sarjana Sains pada Departemen Matematika
DEPARTEMEN MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR BOGOR 2012
Judul Skripsi : Pemodelan Transaksi Pelanggan Menggunakan Model Hidden Markov Nama : Della Azizah Munawar NIM : G54070072
Disetujui
Pembimbing I
Pembimbing II
Dr. Dra. Berlian Setiawaty, MS NIP. 19650505 198903 2 004
Ir. N. K. Kutha Ardana, M.Sc NIP. 19640823 198903 1 001
Diketahui Ketua Departemen
Dr. Dra. Berlian Setiawaty, MS NIP. 19650505 198903 2 004
Tanggal Lulus : ………………………………
PRAKATA Puji dan syukur penulis panjatkan kepada Allah SWT atas segala rahmat dan karunia-Nya serta shalawat dan salam kepada Nabi Muhammad SAW sehingga karya ilmiah ini berhasil diselesaikan. Penyusunan karya ilmiah ini tidak lepas dari peranan berbagai pihak. Pada kesempatan ini, penulis mengucapkan terima kasih yang sebesar-besarnya kepada: 1. Keluargaku tersayang: Bapak dan Ibu (terimakasih atas kasih sayang, kesabaran, kepercayaan, dukungan dan doa yang tiada henti-hentinya) dan adikku Lupita serta Shiyama (terimakasih atas keceriaan, senyum manis, doa, inspirasi, semangat, dan motivasinya). 2. Keluarga besar Bapak: Tante Nina, Tante Nani, Om Edih, Om Deni, Teh Anis, Teh Ulfah, Teh Tia, dan lainnya (terimakasih atas kasih sayang, motivasi, bantuan, dan doanya). 3. Keluarga besar Ibu: Umi Enggum, Wa Pipih, Wa Yayat, Tante Iin, Teh Dhea, Teh Early, Teh Yayu, dan lainnnya (terimakasih atas kasih sayang, motivasi, bantuan dan doanya). 4. Dr. Dra. Berlian Setiawaty, MS selaku dosen pembimbing I (terima kasih atas semua ilmu, waktu, kesabaran, motivasi, dan bantuannya selama penulisan karya ilmiah ini). 5. Ir. Ngakan Komang Kutha Ardana, M.Sc selaku dosen pembimbing II (terima kasih atas semua ilmu, waktu, saran, dan motivasinya). 6. Dr. Ir. I Wayan Mangku, M.Sc selaku dosen penguji (terima kasih atas semua ilmu, waktu dan sarannya). 7. Segenap dosen Departemen Matematika, terima kasih atas ilmu yang telah diberikan. 8. Staf Departemen Matematika: Bu Susi, Pak Yono, Mas Heri, Pak Bono, Bu Ade, dan Mas Deni, dan lainnya (terima kasih atas bantuan dan motivasinya). 9. Kakak-kakak Matematika angkatan 42 dan 43: Ka Nia, Ka Wira, Ka Kunto, Ka Adhi, Ka Chopy, Ka Cupit, Ka Apri, Ka Resty, Ka Arum, Ka Tami, Ka, Fachri, Ka Faizal, Ka Cici, Ka Margi, Ka Razono, Ka Ratna, Ka Agung, Ka Andrew, Ka Dandi, Ka Sunarsih, Ka Bertrand, Ka Septiwi, Ka Ardy, Ka Feli, Ka Sendy, Ka Cumi, Ka Kabil, Ka Hikmah, Ka Iputh, Ka Vera, Ka Aini, Ka Destya, Ka Lia, Ka Putri, Ka Destya, Ka Ro’fah, dan lainnya (terimakasih atas semangat, ilmu, bantuan, doa, motivasi dan kebersamaannya). 10. Teman-teman Matematika angkatan 44: Tyas, Mutia, Sri, Fajar, Rachma, Ayung, Dian, Rofi, Denda, Pandi, Rizqy, Imam, Wenti, Deva, Yuyun, Ndep, Ipul, Selvie, Nurul, Istiti, Ikhsan, Yuli, Ririh, Iresa, Sari, Ihda, Pepi, Aqil, Lilis, Aswin, Eka, Aze, Ali, Fani, Ruhiyat, Wahyu, Ayum, Iam, Endro, Puying, Cita, Tanty, Arina, Lingga, Ima, Dora, Atik, Masay, Diana, Yanti, Lugina, Lukman, Nurfitriana, Vianey, Yogie, Nadiroh, Nurus, Na’im, Dhika, Nunuy, Indin, Sholih, Siska, Lili, Tita, Lina, Tendhy, Chopa, Zae, Fikri dan Gan-gan (terima kasih atas doa, semangat, dukungan, bantuan, motivasai, inspirasi dan kebersamaannya). 11. Adik-adik Matematika angkatan 45: Ana, Cipit, Putri, Ari, Irwan, Yunda, Santi, Kunedi, Fuka, Achie, Roni, Rischa, Gita, Tya, Tika, Fikri, Tiwi, Hardono, Fenny, Vivi, Isna, Mega, Izzun, Agustin, Icha, Haryanto, Arbi, Nurul, Maya, Fina, Wulan, Heru, Prama, Bram, Devita, Beni, Irma dan lainnya (terima kasih atas semangat, motivasi, dukungan, Inspirasi, dan kebersamaannya). 12. Teman-teman Asrama Putri Rusunawa TPB: Ka Mega, Resty, Dyah, Priskila, Tia, Saskia, Antari, Boru, Resi, dan lainnya (terima kasih atas inspirasi, dukungan, dan kebersamaannya). 13. Teman-teman kelas A13 TPB: Tifanny, Zafira, Flora, Aci, Norihiko, Ayi, Irma, Asri, Alex, Novri, Damar, dan lainnya (terima kasih atas motivasi, dukungan, dan kebersamaannya). 14. Sahabat-sahabat tersayang, Annis, Muzha, Sarah, Adis, Diyan, Ushi, Linda, Putri, Mega, Lusiana, Ka Reni, Ka Eno, Ka Tuti, Ka Mira, Ka Delsi, Ka Vivien, Ka Mpit, Fani, Ria, Agus, Fandi, Chandra, Adi, Ajeng, Shiva, Yunas, Anggie, Dita, Illah, Sari, Om Baist dan lainnya (terimakasih atas semangat, motivasi, inspirasi, kasih sayang, dan kebersamaanya). Penulis menyadari bahwa tulisan ini masih memiliki kekurangan dan jauh dari kesempurnaan, oleh karena itu dibutuhkan kritik dan saran yang membangun dari pembaca. Semoga karya ilmiah ini dapat bermanfaat bagi dunia ilmu pengetahuan khususnya matematika dan menjadi inspirasi bagi penelitian-penelitian selanjutnya. Bogor, 2 Agustus 2012
Della Azizah Munawar
RIWAYAT HIDUP Penulis dilahirkan di Sukabumi pada tanggal 11 Juli 1989 dari bapak Cecep dan ibu Nanan. Penulis merupakan putri pertama dari tiga bersaudara. Tahun 2007 penulis lulus dari SMA Negeri 3 Depok dan pada tahun yang sama diterima sebagai mahasiswa IPB melalui jalur Seleksi Penerimaan Mahasiswa Baru (SPMB). Penulis memilih jurusan Matematika, Departemen Matematika, Fakultas Matematika dan Ilmu Pengetahuan Alam. Selama mengikuti perkuliahan, penulis mengikuti kegiatan kemahasiswaan, yaitu anggota Divisi Sosial, Informasi, dan Komunikasi Gugus Mahasiswa Matematika (GUMATIKA) periode 2008-2009, anggota tim acara Welcome Ceremony Mathematics 2009, dan anggota tim Dana dan Usaha Pesta Sains Nasional Institut Pertanian Bogor 2009.
DAFTAR ISI Halaman DAFTAR GAMBAR ............................................................................................................ viii DAFTAR TABEL ................................................................................................................. viii DAFTAR LAMPIRAN ......................................................................................................... viii I
PENDAHULUAN ......................................................................................................... 1.1 Latar Belakang ....................................................................................................... 1.2 Tujuan Penulisan .................................................................................................... 1.3 Sistematika Penulisan .............................................................................................
1 1 1 1
II
LANDASAN TEORI .................................................................................................... 2.1 Ruang Contoh, Kejadian, dan Peluang .................................................................... 2.2 Peubah Acak dan Fungsi Sebaran ........................................................................... 2.3 Rantai Markov ....................................................................................................... 2.4 Algoritme EM (Expectation Maximization) ............................................................
1 1 2 3 4
III PEMODELAN TRANSAKSI PELANGGAN ............................................................. 3.1 Model Hidden Markov ........................................................................................... 3.2 Transaksi Pelanggan ............................................................................................... 3.3 Model Hidden Markov Untuk Transaksi Pelanggan ................................................ 3.4 Proses Estimasi ......................................................................................................
6 6 6 7 9
IV
APLIKASI PEMODELAN TRANSAKSI PELANGGAN ......................................... 4.1 Deskripsi Data ........................................................................................................ 4.2 Interaksi ................................................................................................................. 4.3 Hasil ......................................................................................................................
12 12 12 12
V
SIMPULAN ..................................................................................................................
14
DAFTAR PUSTAKA ............................................................................................................
15
LAMPIRAN ..........................................................................................................................
16
DAFTAR GAMBAR Halaman 1
Pemodelan Transaksi Pelanggan dengan Menggunakan Model Hidden Markov ............
7
2
Persentase Ketepatan Dugaan Barisan Observasi Terhadap
......................................
12
3
Frekuensi Nilai Parameter Awal dengan Peluang Observasi di Atas 80% .......................
27
DAFTAR TABEL Halaman 1
Data Transaksi “Anisa Cell” ........................................................................................
20
2
Persentase Ketepatan Dugaan Barisan Observasi ............................................................
29
3
Nilai Peluang Transisi
................................................................................................
35
4
Nilai Peluang Transaksi
............................................................................................
35
5
Nilai ...........................................................................................................................
36
6
Nilai ...........................................................................................................................
36
7
Nilai ...........................................................................................................................
36
8
Nilai ...........................................................................................................................
37
9
Nilai
..........................................................................................................................
37
10
Nilai
..........................................................................................................................
37
DAFTAR LAMPIRAN Halaman 1
Pembuktian Barisan Peluang Pengamatan .....................................................................
17
2
Pembuktian Salah Satu Sifat Matriks Transisi ...............................................................
19
3
Data Transaksi “Anisa Cell” .........................................................................................
20
4
Komputasi Transaksi Pelanggan Menggunakan Software Mathematica 7.0 ....................
22
5
Grafik Frekuensi Nilai Parameter Awal dengan Peluang Observasi di Atas 80% ............
27
6
Grafik Persentase Ketepatan Dugaan Barisan Observasi terhadap
............................
28
7
Tabel Frekuensi dan Ketepatan Dugaan..........................................................................
29
8
Output Mathematica 7.0 untuk Nilai Parameter Awal dan Nilai Parameter Duga ...........
28
9
Komputasi Transaksi Pelanggan Menggunakan Software LINGO 11.0 ..........................
34
10
Input Komputasi LINGO 11.0 ......................................................................................
35
11
Output Komputasi LINGO 11.0 untuk Nilai-Nilai Fungsi Peluang Transisi ....................
36
12
Output Komputasi LINGO 11.0 untuk Nilai-Nilai Fungsi Peluang Transaksi .................
37
I
PENDAHULUAN
1.1 Latar Belakang Secara umum, pertemuan yang terjadi antara pelanggan dengan perusahaan disebut pasar. Untuk membentuk sebuah pasar, diperlukan kegiatan transaksi yang dilakukan oleh pelanggan. Transaksi yang dilakukan oleh pelanggan terjadi secara berulang. Kejadian ini diteliti oleh Customer Relationship Management (CRM) atau Manajemen Hubungan Pelanggan dengan tujuan meningkatkan transaksi pelanggan di masa yang akan datang. Transaksi pelanggan dapat dipengaruhi antara lain oleh kualitas pelayanan perusahaan, loyalitas pelanggan, dan adanya promosi serta reward yang dilakukan oleh perusahaan. Faktor yang mempengaruhi transaksi pelanggan diasumsikan tidak diamati secara langsung dan membentuk rantai Markov di mana state yang akan datang hanya dipengaruhi oleh state saat ini dan bebas terhadap semua state yang lalu. Model hidden Markov terdiri dari sepasang proses stokastik yaitu proses observasi dan proses yang mempengaruhi terjadinya proses observasi yang diasumsikan membentuk rantai Markov, oleh sebab itu transaksi pelanggan dapat dimodelkan dengan menggunakan model hidden Markov. Model hidden Markov yang digunakan berasal dari jurnal tahun 2008 yang berjudul a hidden Markov model of customer relationship dynamics yang ditulis oleh Oded Netzer, James M. Lattin, dan V Srinivasan. Model hidden Markov dipengaruhi oleh beberapa parameter, yaitu peluang awal, peluang transisi dan peluang transaksi.
II
Contoh
1.2 Tujuan Penulisan Tujuan penulisan karya ilmiah ini adalah: 1. Mengkaji transaksi pelanggan dengan menggunakan model hidden Markov. 2. Mangaplikasikan model hidden Markov untuk transaksi yang dilakukan Anisa Cell. 1.3 Sistematika Penulisan Pada bab pertama dijelaskan latar belakang dan tujuan penulisan tugas akhir. Bab dua berisi landasan teori yang merupakan konsep dasar dalam penyusunan pembahasan. Bab tiga menjelaskan pemodelan transaksi pelanggan. Bab empat dan lima mengenai aplikasi pemodelan transaksi Anisa Cell serta simpulan dan saran.
LANDASAN TEORI
2.1 Ruang Contoh, Kejadian, dan Peluang Definisi 2.1.1 (Percobaan Acak) Dalam suatu percobaan seringkali dilakukan pengulangan dengan kondisi yang sama. Semua kemungkinan hasil yang akan muncul dapat diketahui, akan tetapi hasil pada percobaan berikutnya tidak dapat diduga dengan tepat. Percobaan semacam ini, yang dapat diulang dalam kondisi sama, disebut percobaan acak. (Hogg et. al. 2005) Definisi 2.1.2 (Ruang Kejadian)
Kemudian dengan menggunakan metode Rabiner, akan diperoleh nilai pendugaan parameter hidden Markov menggunakan algoritme forward-backward, Viterbi, dan Baum-Welch. Dalam tugas akhir ini akan dibahas mengenai pemodelan hidden Markov untuk transaksi pelanggan dan aplikasinya pada Anisa Cell. Dengan menggunakan data transaksi Anisa Cell, akan dibuat suatu program komputasi untuk mencari nilai parameter duga dari model hidden Markov menggunakan software Mathematica 7.0 dan LINGO 11.0. Dengan diketahuinya nilai parameter dugaaan yang memaksimumkan proses observasi, maka dapat dilakukan penarikan kesimpulan mengenai cara untuk meningkatkan transaksi pelanggan.
dan
Himpunan semua kemungkinan hasil dari suatu percobaan acak disebut ruang contoh, dinotasikan dengan . Suatu kejadian adalah himpunan bagian dari . (Grimmet dan Stirzaker 2001) Definisi 2.1.3 (Medan- ) Koleksi dari himpunan bagian disebut medan- jika memenuhi syarat: 1. . 2. Jika maka . 3. Jika maka . (Grimmet dan Stirzaker 2001)
2
Definisi 2.1.4 (Ukuran Peluang) Misalkan adalah medandari ruang contoh . Ukuran peluang adalah suatu fungsi yang memenuhi: 1. , . 2. Jika adalah himpunan yang saling lepas yaitu untuk setiap pasangan , maka
Pasangan
disebut ruang peluang. (Grimmet dan Stirzaker 2001)
Definisi 2.1.5 (Peluang Bersyarat) Jika maka peluang bersyarat dari kejadian setelah diketahui kejadian ialah
. (Grimmet dan Stirzaker 2001) Definisi 2.2.3 (Peubah Acak Diskret) Peubah acak disebut sebagai peubah acak diskret jika nilainya hanya berada pada himpunan bagian yang terhitung dari . (Grimmet dan Stirzaker 2001) Definisi 2.2.4 (Fungsi Kerapatan Peluang) Misalkan adalah ruang peluang dan adalah himpunan berhingga. Fungsi kerapatan peluang dari peubah acak diskret adalah fungsi yang didefinisikan oleh . (Grimmet dan Stirzaker 2001)
(Grimmet dan Stirzaker 2001) Definisi 2.1.6 (Kejadian Saling Bebas) Kejadian dan dikatakan saling bebas jika
Definisi 2.2.5 (Fungsi Kerapatan Peluang Bersama Dua Peubah Acak Diskret) Misalkan adalah ruang peluang dan adalah himpunan berhingga. Fungsi kerapatan peluang bersama dari peubah acak diskret dan adalah suatu fungsi yang didefinisikan oleh
. . Misal adalah himpunan indeks. Himpunan kejadian disebut saling bebas jika
untuk setiap himpunan bagian berhingga dari . (Grimmet dan Stirzaker 2001) 2.2 Peubah Acak dan Fungsi Sebaran Definisi 2.2.1 (Peubah Acak) Misalkan adalah medandari ruang contoh . Peubah acak merupakan fungsi di mana untuk setiap . (Grimmet dan Stirzaker 2001) Peubah acak dinotasikan dengan huruf kapital, sedangkan nilai dari peubah acak tersebut dinotasikan dengan huruf kecil. Definisi 2.2.2 (Fungsi Sebaran) Fungsi sebaran dari peubah acak suatu fungsi di mana
(Grimmet dan Stirzaker 2001) Definisi 2.2.6 (Fungsi Kerapatan Peluang Bersyarat) Jika dan merupakan peubah acak diskret, maka fungsi kerapatan peluang bersyarat dari jika diberikan , terdefinisi untuk setiap sedemikian sehingga adalah
(Ross 1996) Definisi 2.2.7 (Fungsi Kerapatan Marginal) Misalkan adalah fungsi kerapatan peluang bersama dari peubah acak diskret dan . Misal adalah himpunan nilai yang mungkin dari dan adalah himpunan nilai yang mungkin dari . Selanjutnya fungsi
dan adalah
3
masing-masing disebut marginal dari dan .
fungsi
kerapatan
(Ghahramani 2005) Definisi 2.2.8 (Bebas Stokastik Identik) Misalkan adalah peubah acak yang memiliki fungsi kepekatan yang sama yaitu sehingga
Dan fungsi kepekatan bersamanya adalah . .…. . Peubah disebut bebas stokastik Identik. (Hogg et. al. 2005) Definisi 2.2.9 (Nilai Harapan Peubah Acak Diskret) Misalkan adalah peubah acak diskret dengan fungsi kepekatan peluang maka nilai harapan dari adalah
asalkan jumlah di atas konvergen. (Hogg et. al. 2005) Definisi 2.2.10 (Teorema Bayes) Misalkan adalah ruang peluang. . Misalkan kejadian terjadi hanya dengan salah satu kejadian , maka peluang bersyarat dari setelah diketahui adalah
Definisi 2.2.13 (Adapted) Misalkan adalah ruang peluang. Barisan peubah acak dikatakan adapted terhadap filtrasi jika terukuruntuk setiap . (Grimmet dan Stirzaker 2001) Definisi 2.2.14 (Terduga) Misalkan adalah filtrasi. Barisan peubah acak dikatakan terduga, jika terukur untuk setiap . (Grimmet dan Stirzaker 2001) 2.3 Rantai Markov Definisi 2.3.1 (Ruang State) Misalkan merupakan himpunan nilai dari barisan peubah acak, maka disebut ruang state. (Grimmet dan Stirzaker 2001) Definisi 2.3.2 (Proses Stokastik) Proses Stokastik adalah suatu koleksi dari peubah acak yang memetakan suatu ruang contoh ke suatu ruang state . Jadi, untuk setiap pada himpunan indeks , adalah suatu peubah acak. (Ross 1996) Dalam hal ini anggap sebagai waktu dan nilai dari peubah acak sebagai state (keadaan) dari proses pada waktu . Definisi 2.3.3 (Rantai Markov dengan Waktu Diskret) Misalkan suatu peubah acak. Proses stokastik dengan ruang state disebut rantai Markov dengan waktu diskret jika untuk setiap berlaku
(Hogg et. al. 2005) Definisi 2.2.11 (Filtrasi) Misalkan adalah medandan merupakan barisan submedandari . disebut filtrasi jika untuk semua . (Grimmet dan Stirzaker 2001) Definisi 2.2.12 (Terukur (Measurable)) Misalkan adalah peubah acak diskret yang terdefinisi pada ruang peluang dan adalah ruang state. Jika , maka dinyatakan terukur- . (Grimmet dan Stirzaker 2001)
untuk
semua
kemungkinan
nilai dari . (Ross 1996)
Jadi untuk suatu Rantai Markov, sebaran bersyarat dari sebarang state saat ini dengan syarat state yang lalu dan state kemarin adalah bebas terhadap semua state yang lalu, dan hanya bergantung pada state kemarin.
4
Proses di atas dapat digambarkan sebagai state rantai Markov dengan peluang transisi dengan . Nilai dari peluang transisi menyatakan peluang bahwa jika proses tersebut berada pada state maka berikutnya akan beralih ke state . Karena nilai peluang adalah tak negatif dan karena proses tersebut harus mengalami transisi ke suatu state maka, a. , untuk semua . b. untuk semua . Peluang transisi dapat dituliskan dalam bentuk matriks yang disebut juga sebagai matriks peluang transisi, yaitu
Definisi 2.3.4 (Matriks Transisi) Misalkan adalah rantai . Markov dengan ruang state Matriks transisi adalah matriks dari peluang transisi
untuk
. (Grimmet dan Stirzaker 2001)
Definisi 2.3.5 (Rantai Markov Homogen) Misalkan adalah rantai Markov dengan ruang state , dikatakan homogen jika
disebut terakses dari state (notasi: ) jika minimal ada sebuah bilangan bulat sehingga dimana adalah peluang bahwa pada waktu ke- proses berada pada state dengan syarat state awal adalah . (Ross 2007) Definisi 2.3.7 (Berkomunikasi) Dua state dan dikatakan berkomunikasi ) jika state dapat diakses dari (notasi: state dan state dapat diakses dari state . (Ross 2007) Definisi 2.3.8 (Kelas State) Suatu kelas dari state adalah suatu himpunan tak kosong sehingga semua pasangan state yang merupakan anggota dari berkomunikasi satu dengan yang lainnya, serta tidak ada yang merupakan anggota yang berkomunikasi dengan suatu state yang bukan anggota dari . (Ross 2007) Definisi 2.3.9 (Tak Tereduksi) Rantai Markov disebut tak tereduksi jika hanya terdapat satu kelas state, yaitu jika semua state berkomunikasi satu dengan yang lainnya. (Ross 2007)
Definisi 2.3.10 (Recurrent dan Transient) State adalah recurrent jika dan transient jika
. (Ross 2007)
untuk
. (Grimmet dan Stirzaker 2001)
Definisi 2.3.6 (Peluang Transisi n-step) Peluang transisi n-step dari rantai Markov adalah peluang proses berpindah dari state ke state dengan langkah yang didefinisikan sebagai berikut:
(Ross 1996) Definisi 2.3.6 (Terakses) Peluang bahwa pada waktu ke- , proses berada pada state dengan syarat state awal adalah dinotasikan dengan . Suatu state
2.4 Algoritme Expectation Maximization (EM) Misalkan adalah himpunan ukuran peluang yang terdefinisi pada dan kontinu absolute terhadap . Misalkan . Fungsi Likelihood yang digunakan untuk menghitung penduga parameter berdasarkan informasi adalah
Maximum Likelihood didefinisikan oleh
Estimator
(MLE)
Umumnya MLE sulit dihitung secara langsng, oleh karena itu diperlukan suatu metode aproksimasi berulang, yakni algoritme
5
Expectation Maximization. Langkah-langkah dalam metode tersebut adalah: 1. Set nilai awal parameter dengan . 2. Set dan hitung dengan
3. Cari . 4. Ganti dengan dan ulangi langkah 2 sampai 4 hingga kriteria hentinya tercapai, yaitu ketika selisih dan kurang dari suatu bilangan yang sangat kecil. Bilangan tersebut dapat ditentukan sesuai dengan seberapa besar ketelitian yang diinginkan. Misalkan kedua dari
, karena turunan selalu positif
Maka merupakan fungsi konveks. Karena merupakan fungsi konveks, maka berdasarkan ketaksamaan Jensen dapat yang dihasilkan barisan merupakan fungsi likelihood yang tak turun, yaitu:
Bentuk bersyarat.
disebut Pseudo Likelihood (Elliot 1995)
6
III
PEMODELAN TRANSAKSI PELANGGAN
3.1 Model Hidden Markov Model hidden Markov terdiri dari pasangan proses stokastik . merupakan penyebab terjadinya proses observasi dan merupakan rantai Markov. Sedangkan adalah proses observasinya. Model hidden Markov dicirikan dengan parameter sebagai berikut: 1. Peluang awal,
merupakan peluang state pada waktu ke-1. 2. Peluang transisi,
merupakan peluang transisi dari state pada waktu ke state pada waktu dengan adalah matriks transisi Markov yang menyatakan bahwa peluang
3.2 Transaksi Pelanggan Transaksi pelanggan adalah salah satu kegiatan yang diperlukan untuk membentuk sebuah pasar dan dapat terjadi kapan saja dalam suatu deret waktu yang panjang. Transaksi yang terjadi dipengaruhi oleh interaksi antara pelanggan dengan perusahaan yang terjadi secara berulang, seperti pelayanan perusahaan, loyalitas pelanggan, dan adanya promosi serta reward yang dilakukan oleh perusahaan. Transaksi tersebut mungkin saja terulang kembali di masa yang akan datang, misal, di waktu sebelumnya perusahaan memberikan pelayanan yang tidak baik kepada pelanggan, akibatnya hubungan antara pelanggan dengan perusahaan menjadi lebih lemah sehingga pelanggan tidak melakukan transaksi untuk saat ini. Karena transaksi pelanggan bisa kembali terjadi di masa yang akan datang, tetapi tidak bisa dipastikan kurun waktunya, besar kemungkinan di waktu yang akan datang
state sebelumnya ( ) cukup kuat untuk bertransisi ke state selanjutnya ( ). 3. Peluang observasi,
di mana: adalah penyebab terjadinya proses observasi pada waktu yang merupakan proses Markov dengan ruang state , dan adalah proses observasi pada waktu dengan ruang state . Dengan menggunakan tiga ciri model hidden Markov, model peluang pengamatan dapat digambarkan pada Lampiran 1, sehingga secara umum dapat dituliskan sebagai berikut,
penyebab terjadinya transaksi pelanggan adalah bagaimana hubungan antara pelanggan dengan perusahaan saat ini jika sebelumnya diketahui interaksi yang terjadi antara pelanggan dengan perusahaan. Selain itu interaksi antara pelanggan dengan perusahaan yang merupakan penyebab terjadinya tansaksi, diasumsikan bersifat Markov. Artinya, meskipun di waktu yang lalu banyak terjadi interaksi antara pelanggan dengan perusahaan yang mempengaruhi terjadinya transaksi, tetapi penyebab terjadinya transaksi saat ini cukup dipengaruhi oleh interaksi di satu waktu sebelumnya. Sehingga, dengan menggunakan rantai Markov, transaksi pelanggan dapat ditentukan melalui state transaksi pelanggan, di mana transaksi tersebut akan bernilai 1 jika pelanggan melakukan transaksi dan bernilai 0 jika pelanggan tidak melakukan transaksi (lihat Gambar 1).
7
Gambar 1 Pemodelan Transaksi Pelanggan dengan Menggunakan Model Hidden Markov 3.3 Model Hidden Markov Untuk Transaksi Pelanggan Model hidden Markov untuk transaksi pelanggan dicirikan sebagai berikut: 3.3.1 Indeks = pelanggan, = hubungan pelanggan, = hubungan pelanggan, = waktu,
perusahaan
dengan
perusahaan
dengan
didefinisikan sebagai peluang hubungan perusahaan dengan pelanggan ke- pada state pada waktu ke-1. Peluang ini memenuhi persamaan , dimana adalah matriks transisi. 3.3.3 Peluang Transisi
didefinisikan sebagai peluang transisi hubungan perusahaan dengan pelanggan kedari state pada waktu ke state pada waktu , dengan . Misal
3.3.2 Peluang Awal
Markov berukuran
State pada waktu State pada waktu
1
2
3
…
1
…
2
… …
adalah matriks transisi sebagai berikut:
8
Secara khusus, sebagai berikut,
dapat didefinisikan didefinisikan sebagai peluang bahwa pelanggan ke- tidak melakukan transaksi pada waktu , di mana: adalah hubungan perusahaan dengan pelanggan ke- pada waktu yang merupakan proses Markov dengan ruang , dan state adalah transaksi pelanggan ke- pada waktu dengan ruang state .
dan memenuhi sifat,
(dijelaskan pada Lampiran 2)
dengan, = =
=
dampak pelanggan ke- yang bertransisi dari state , hubungan perusahaan dengan pelanggan ke- antara sampai , batas hubungan perusahaan dengan pelanggan ke- yang berada pada state .
3.3.4 Peluang Transaksi Pelanggan
Transaksi pelanggan diasumsikan sebagai kondisi yang bebas dan jika pelanggan melakukan transaksi, akan memenuhi persamaan,
dengan, = koefisien state = rata-rata transaksi pelanggan kepada waktu = respon pelanggan terhadap transaksi pada state di mana, dibatasi oleh:
dan memenuhi,
dengan, didefinisikan sebagai peluang bahwa pelanggan ke- melakukan transaksi pada waktu , dan
3.3.5 Peluang Urutan Transaksi Pelanggan Peluang barisan transaksi pelanggan adalah sebagai berikut,
9
3.4 Transaksi Pelanggan Transaksi yang dilakukan pelanggan, diasumsikan dipengaruhi oleh dua interaksi, yaitu: 1. Interaksi berdampak jangka panjang Interaksi yang memiliki dampak jangka panjang misalnya, diberikan informasi mengenai upaya mengembangkan usaha, iklan, dan kualitas pelayanan perusahaan. Interaksi ini didefinisikan oleh vektor . 2. Interaksi berdampak jangka pendek Interaksi yang memiliki dampak jangka pendek misalnya, adanya reward setelah melakukan transaksi sebesar nominal tertentu, lokasi tempat usaha yang strategis, dan promosi. Interaksi ini didefinisikan oleh vektor . Bentuk data transaksi yang bisa digunakan untuk model ini berupa barisan yang bernilai 1 jika pelanggan melakukan transaksi atau 0 jika pelanggan tidak melakukan transaksi. Barisan tersebut kemudian diestimasi dengan menggunakan fungsi peluang barisan transaksi pelanggan sehingga diperoleh nilai dari parameter . Setelah diperoleh nilai parameter tersebut, nilai yang menggambarkan interaksi berdampak jangka panjang dan nilai yang menggambarkan interaksi berdampak jangka pendek, dapat diperoleh dengan mengestimasi parameter dan . Sehingga melalui nilai dan yang telah diperoleh, dapat diketahui interaksi yang paling mempengaruhi terjadinya transaksi pelanggan. 3.5 Proses Estimasi Dalam proses estimasi diasumsikan banyaknya pelanggan adalah satu. Banyaknya barisan observasi (data transaksi) juga diasumsikan dibangkitkan oleh model hidden Markov yang dicirikan oleh parameter , sehingga
dapat diestimasi dengan menggunakan metode Rabiner (Wijayanti 2010). Tujuan metode Rabiner adalah: 1. Menduga barisan observasi , dan 2. Menentukan nilai parameter duga yang memaksimumkan fungsi Likelihood, yaitu . Langkah-langkah algoritme pemrograman untuk metode Rabiner dalam pemodelan transaksi pelanggan adalah sebagai berikut: 1. Menginput data (banyaknya data adalah ) 2. Menginput awal, (berfungsi untuk mencatat nilai parameter yang telah dibangkitkan) 3. Menetapkan ( adalah banyaknya state penyebab kejadian) 4. Membangkitkan nilai peluang awal yang dibangkitkan secara acak dan dicatat dengan . , , , dan memenuhi: a. , b. , dan c. . 5. Menggunakan algoritme forward. Tujuan algoritme menghitung nilai
forward
adalah
Nilai , dapat diperoleh dengan cara menghitung nilai . Nilai diperoleh dengan cara menghitung nilai secara rekursif untuk .
10
6. Menggunakan algoritme Viterbi. Tujuan algoritme viterbi adalah mencari barisan yang membuat nilai maksimum. Barisan yang membuat nilai
Melalui nilai yang telah diperoleh, maka dapat ditentukan state yang menghasilkan nilai , dengan cara menelusuri kembali melalui
Dengan menghasilkan
adalah barisan , yaitu
yang
. 7. Menduga barisan observasi berdasarkan barisan state yang membuat nilai maksimum. 8. Jika barisan observasi yang duga memiliki ketepatan lebih besar dari 80% maka hal-hal di bawah ini disimpan: Nilai observasi duga , Nilai persentase ketepatan dugaan terbesar, dan Frekuensi nilai peluang yang dibangkitkan.
maksimum, dapat diperoleh dengan cara menghitung nilai terlebih dahulu. Nilai diperoleh dengan cara menghitung nilai secara rekursif untuk .
perhitungan nilai .
untuk
9. Kembali ke langkah ke-5, dan lakukan untuk . 10. Menggunakan algoritme Baum-Welch. Tujuan algoritme Baum-Welch adalah menentukan nilai sehingga maksimum. Dengan menggunkan algoritme Expectation Maximization (EM) akan di peroleh nilai yang memaksimumkan nilai . Berikut Algoritme EM: a. Berikan nilai parameter , b. Hitung fungsi Baum-Welch , c. Jika kondisi berikut terpenuhi: maka . Jika tidak terpenuhi, maka menjadi , lalu ulangi prosedur a.
11
Dengan menggunkan Metode Lagrange, dapat diperoleh kondisi parameter yang
membuat
maksimum, yaitu
Dengan
diperoleh algoritme
backward, yang dihitung secara rekursif untuk .
d. Mencetak nilai parameter duga . e. Mencetak grafik persentase ketepatan barisan observasi duga .
f. Kembali ke langkah ke-3, lakukan untuk . g. Berhenti di atau saat nilai perubahan persentase kurang dari 1%.
Nilai dengan
dan menggunakan
IV
APLIKASI PEMODELAN TRANSAKSI PELANGGAN PADA TRANSAKSI ANISA CELL
Pada bab ini akan dibahas aplikasi pemodelan transaksi pelanggan pada transaksi perusahaan sellular Anisa Cell. Terlebih dahulu akan dijelaskan mengenai input data yang digunakan sebagai data observasi (transaksi) pada model hidden Markov.
hari tersebut, maka akan diberi nilai 1 dan akan diberi nilai 0 jika pada hari tersebut tidak melakukan transaksi. 4.2 Hasil Dengan menggunakan metode Rabiner dan software Mathematica 7.0, melalui data yang telah diperoleh akan dihasilkan persentase ketepatan dugaan barisan observasi dan nilai parameter dugaan . Persentase ini akan terus meningkat, seiring dengan bertambahnya nilai .
4.1 Deskripsi Data Data yang digunakan dalam karya ilmiah ini berasal dari “Cempaka Cell”. Sampel yang digunakan adalah transaksi yang dilakukan oleh “Anisa Cell” sejak 11 April 2011 sampai dengan 14 Februari 2012, sehingga terdapat 310 data observasi . Jika “Anisa Cell” melakukan transaksi lebih dari satu kali pada 100 90
96.45
97.74
97.74
98.06
2
3
4
5
98.06 100.00
Persentase (%)
80 70 60 50 40 30 20 10 0 1
6
7
8
NS
Gambar 2 Persentase Ketepatan Dugaan Barisan Observasi Terhadap
Untuk selanjutnya, akan digunakan nilai parameter dugaan saat . Karena pada kondisi tersebut, nilai persentase ketepatan
dugaan barisan observasi sudah mulai stabil. Dengan menggunakan software LINGO 11.0 dan nilai parameter dugaan saat yaitu,
13
Dari persamaan (1) dan (2) diperoleh nilai
dan
sebagai berikut,
.
Dari hasil yang telah diperoleh, vektorvektor yang terdapat di dalam memiliki nilai yang lebih besar dan beragam dibandingkan dengan vektor-vektor yang terdapat di dalam yang hanya memiliki nilai 0 di setiap vektornya. Sehingga interaksi yang memiliki dampak jangka panjang, memiliki nilai yang jauh lebih besar
dibandingkan dengan interaksi yang memiliki dampak jangka pendek. Oleh karena itu, dapat disimpulkan bahwa interaksi yang paling mempengaruhi transaksi yang dilakukan “Anisa Cell” adalah interaksi yang memiliki dampak jangka panjang, seperti diberikannya informasi mengenai cara mengembangkan usaha setiap bulannya serta iklan yang mendukung usaha tersebut.
V
SIMPULAN DAN SARAN
5.1 Simpulan Dari pembahasan dapat ditarik kesimpulan sebagai berikut, 1. Transaksi pelanggan dapat dikaji dengan menggunakan model hidden Markov. 2. Transaksi yang dilakukan Anisa Cell dapat dimodelkan dengan menggunakan model hidden Markov dengan cukup baik. Hal ini dapat ditunjukkan melalui nilai persentase ketepatan dugaan di atas 96.4516% (mulai dari ).
3.
4.
Parameter model hidden Markov untuk transaksi Anisa Cell dapat diduga dengan menggunakan metode Rabiner. Melalui nilai dan yang diperoleh, diketahui bahwa hal yang paling mempengaruhi terjadinya transaksi yang dilakukan “Anisa Cell” adalah interaksi yang berdampak jangka panjang.
5.2 Saran 1.
Hasil yang diperoleh dalam karya ilmiah ini masih belum sempurna, karena data transaksi yang digunakan masih sederhana dengan membagi kejadian transaksi menjadi dua kriteria, sehingga masih dimungkinkan untuk melakukan penelitian menggunakan data transaksi dengan kriteria yang lebih baik.
2.
Program yang digunakan untuk memperoleh nilai parameter dan nilai variabel menggunakan software yang berbeda, sehingga kemungkinan besar masih ada hasil yang lebih baik jika menggunakan software yang sama, agar hasil yang diperoleh menjadi lebih maksimal.
D AFTAR PUSTAKA Elliot RJ, Aggoun L, Moore JB. 1995. Hidden Markov Models Estimation and Control. Springer Verlag. New York. Ghahramani S. 2005. Fundamentals of Probability. Second Ed. Pretince Hall. New Jersey. Grimmet, G. R. and D. R. Stirzaker. 2001. Probability and Random Processes. Third Ed. Clarendon Press. Oxford. Hogg, RV. and AT Craig. JW McKean. 2005. Introduction to Mathematical Statistics. Sixth Ed. Pretince Hall, Pearson Education, New Jersey.
Netzer O, Lattin JM, Srinivasan V. 2008. A Hidden Markov Model of Customer Relationship Dynamics. Journal of Marketing Science 27:185-204. Ross, S. M. 1996. Stochastic Process. Second Ed. John Wiley & Sons. New York. Ross, S. M. 2007. Introduction to Probability Model. Ninth Ed. Elsevier. New York. Wijayanti, H. 2010. Kajian Model Hidden Markov Diskret dengan Algoritme Rabiner dan Aplikasinya pada DNA. Tesis. Institut Pertanian Bogor.
LAMPIRAN
17
Lampiran 1 Pembuktian Barisan Peluang Pengamatan Pada waktu 1:
Pada waktu 2:
Pada waktu 3:
18
19
Lampiran 2 Pembuktian Salah Satu Sifat Matriks Transisi
20
Lampiran 3 Data Transaksi “Anisa Cell” Tabel 1 Data Transaksi “Anisa Cell” t
Anisa Cell
30-Mei-2011
50
1
19-Jul-2011
100
0
11-Apr-2011
Tanggal
1
1
31-Mei-2011
51
1
20-Jul-2011
101
0
12-Apr-2011
2
0
1-Jun-2011
52
0
21-Jul-2011
102
1
13-Apr-2011
3
0
2-Jun-2011
53
1
22-Jul-2011
103
1
14-Apr-2011
4
0
3-Jun-2011
54
1
23-Jul-2011
104
1
15-Apr-2011
5
0
4-Jun-2011
55
1
24-Jul-2011
105
1
16-Apr-2011
6
0
5-Jun-2011
56
1
25-Jul-2011
106
1
17-Apr-2011
7
0
6-Jun-2011
57
1
26-Jul-2011
107
1
18-Apr-2011
8
1
7-Jun-2011
58
1
27-Jul-2011
108
0
19-Apr-2011
9
0
8-Jun-2011
59
1
28-Jul-2011
109
1
20-Apr-2011
10
0
9-Jun-2011
60
0
29-Jul-2011
110
0
21-Apr-2011
11
0
10-Jun-2011
61
0
30-Jul-2011
111
1
22-Apr-2011
12
0
11-Jun-2011
62
1
31-Jul-2011
112
1
23-Apr-2011
13
0
12-Jun-2011
63
0
1-Agt-2011
113
0
24-Apr-2011
14
0
13-Jun-2011
64
1
2-Agt-2011
114
1
25-Apr-2011
15
0
14-Jun-2011
65
0
3-Agt-2011
115
1
26-Apr-2011
16
0
15-Jun-2011
66
1
4-Agt-2011
116
1
27-Apr-2011
17
0
16-Jun-2011
67
1
5-Agt-2011
117
1
28-Apr-2011
18
0
17-Jun-2011
68
1
6-Agt-2011
118
1
29-Apr-2011
19
0
18-Jun-2011
69
0
7-Agt-2011
119
1
30-Apr-2011
20
0
19-Jun-2011
70
0
8-Agt-2011
120
0
1-Mei-2011
21
1
20-Jun-2011
71
0
9-Agt-2011
121
1
2-Mei-2011
22
1
21-Jun-2011
72
0
10-Agt-2011
122
0
3-Mei-2011
23
0
22-Jun-2011
73
1
11-Agt-2011
123
1
4-Mei-2011
24
0
23-Jun-2011
74
1
12-Agt-2011
124
0
5-Mei-2011
25
1
24-Jun-2011
75
1
13-Agt-2011
125
1
6-Mei-2011
26
1
25-Jun-2011
76
1
14-Agt-2011
126
1
7-Mei-2011
27
0
26-Jun-2011
77
1
15-Agt-2011
127
0
8-Mei-2011
28
1
27-Jun-2011
78
1
16-Agt-2011
128
1
9-Mei-2011
29
1
28-Jun-2011
79
0
17-Agt-2011
129
0
10-Mei-2011
30
0
29-Jun-2011
80
1
18-Agt-2011
130
0
11-Mei-2011
31
1
30-Jun-2011
81
0
19-Agt-2011
131
1
12-Mei-2011
32
0
1-Jul-2011
82
0
20-Agt-2011
132
1
13-Mei-2011
33
1
2-Jul-2011
83
1
21-Agt-2011
133
1
14-Mei-2011
34
1
3-Jul-2011
84
1
22-Agt-2011
134
1
15-Mei-2011
35
1
4-Jul-2011
85
0
23-Agt-2011
135
0
16-Mei-2011
36
0
5-Jul-2011
86
1
24-Agt-2011
136
1
17-Mei-2011
37
1
6-Jul-2011
87
0
25-Agt-2011
137
1
18-Mei-2011
38
1
7-Jul-2011
88
0
26-Agt-2011
138
0
19-Mei-2011
39
1
8-Jul-2011
89
0
27-Agt-2011
139
0
20-Mei-2011
40
1
9-Jul-2011
90
1
28-Agt-2011
140
0
21-Mei-2011
41
1
10-Jul-2011
91
1
29-Agt-2011
141
0
22-Mei-2011
42
1
11-Jul-2011
92
1
30-Agt-2011
142
1
23-Mei-2011
43
1
12-Jul-2011
93
1
31-Agt-2011
143
1
24-Mei-2011
44
0
13-Jul-2011
94
1
1-Sep-2011
144
0
25-Mei-2011
45
1
14-Jul-2011
95
1
2-Sep-2011
145
1
26-Mei-2011
46
1
15-Jul-2011
96
1
3-Sep-2011
146
0
27-Mei-2011
47
0
16-Jul-2011
97
1
4-Sep-2011
147
1
28-Mei-2011
48
1
17-Jul-2011
98
1
5-Sep-2011
148
0
29-Mei-2011
49
1
18-Jul-2011
99
1
6-Sep-2011
149
1
21
7-Sep-2011
150
0
31-Okt-2011
204
1
24-Des-2011
258
0
8-Sep-2011
151
0
1-Nov-2011
205
0
25-Des-2011
259
0
9-Sep-2011
152
1
2-Nov-2011
206
0
26-Des-2011
260
0
10-Sep-2011
153
0
3-Nov-2011
207
0
27-Des-2011
261
0
11-Sep-2011
154
0
4-Nov-2011
208
0
28-Des-2011
262
1
12-Sep-2011
155
1
5-Nov-2011
209
0
29-Des-2011
263
1
13-Sep-2011
156
1
6-Nov-2011
210
0
30-Des-2011
264
1
14-Sep-2011
157
1
7-Nov-2011
211
1
31-Des-2011
265
1
15-Sep-2011
158
1
8-Nov-2011
212
0
1-Jan-2012
266
1
16-Sep-2011
159
1
9-Nov-2011
213
1
2-Jan-2012
267
0
17-Sep-2011
160
0
10-Nov-2011
214
0
3-Jan-2012
268
1
18-Sep-2011
161
0
11-Nov-2011
215
1
4-Jan-2012
269
1
19-Sep-2011
162
0
12-Nov-2011
216
0
5-Jan-2012
270
1
20-Sep-2011
163
0
13-Nov-2011
217
1
6-Jan-2012
271
0
21-Sep-2011
164
0
14-Nov-2011
218
1
7-Jan-2012
272
1
22-Sep-2011
165
1
15-Nov-2011
219
0
8-Jan-2012
273
0
23-Sep-2011
166
0
16-Nov-2011
220
0
9-Jan-2012
274
1
24-Sep-2011
167
1
17-Nov-2011
221
1
10-Jan-2012
275
0
25-Sep-2011
168
0
18-Nov-2011
222
0
11-Jan-2012
276
1
26-Sep-2011
169
1
19-Nov-2011
223
1
12-Jan-2012
277
0
27-Sep-2011
170
0
20-Nov-2011
224
1
13-Jan-2012
278
1
28-Sep-2011
171
0
21-Nov-2011
225
1
14-Jan-2012
279
1
29-Sep-2011
172
1
22-Nov-2011
226
0
15-Jan-2012
280
1
30-Sep-2011
173
1
23-Nov-2011
227
1
16-Jan-2012
281
1
1-Okt-2011
174
0
24-Nov-2011
228
1
17-Jan-2012
282
1
2-Okt-2011
175
0
25-Nov-2011
229
1
18-Jan-2012
283
0
3-Okt-2011
176
0
26-Nov-2011
230
0
19-Jan-2012
284
1
4-Okt-2011
177
0
27-Nov-2011
231
1
20-Jan-2012
285
0
5-Okt-2011
178
1
28-Nov-2011
232
1
21-Jan-2012
286
1
6-Okt-2011
179
1
29-Nov-2011
233
1
22-Jan-2012
287
1
7-Okt-2011
180
1
30-Nov-2011
234
0
23-Jan-2012
288
0
8-Okt-2011
181
0
1-Des-2011
235
0
24-Jan-2012
289
1
9-Okt-2011
182
1
2-Des-2011
236
1
25-Jan-2012
290
0
10-Okt-2011
183
0
3-Des-2011
237
1
26-Jan-2012
291
1
11-Okt-2011
184
0
4-Des-2011
238
0
27-Jan-2012
292
0
12-Okt-2011
185
0
5-Des-2011
239
1
28-Jan-2012
293
1
13-Okt-2011
186
0
6-Des-2011
240
1
29-Jan-2012
294
1
14-Okt-2011
187
0
7-Des-2011
241
0
30-Jan-2012
295
0
15-Okt-2011
188
0
8-Des-2011
242
1
31-Jan-2012
296
0
16-Okt-2011
189
0
9-Des-2011
243
1
1-Feb-2012
297
0
17-Okt-2011
190
0
10-Des-2011
244
1
2-Feb-2012
298
1
18-Okt-2011
191
1
11-Des-2011
245
0
3-Feb-2012
299
0
19-Okt-2011
192
1
12-Des-2011
246
0
4-Feb-2012
300
1
20-Okt-2011
193
1
13-Des-2011
247
1
5-Feb-2012
301
0
21-Okt-2011
194
0
14-Des-2011
248
1
6-Feb-2012
302
0
22-Okt-2011
195
1
15-Des-2011
249
1
7-Feb-2012
303
1
23-Okt-2011
196
0
16-Des-2011
250
1
8-Feb-2012
304
0
24-Okt-2011
197
0
17-Des-2011
251
1
9-Feb-2012
305
1
25-Okt-2011
198
1
18-Des-2011
252
1
10-Feb-2012
306
0
26-Okt-2011
199
1
19-Des-2011
253
1
11-Feb-2012
307
0
27-Okt-2011
200
1
20-Des-2011
254
1
12-Feb-2012
308
0
28-Okt-2011
201
0
21-Des-2011
255
1
13-Feb-2012
309
0
29-Okt-2011
202
0
22-Des-2011
256
1
14-Feb-2012
310
0
30-Okt-2011
203
0
23-Des-2011
257
1
22
Lampiran 4 Komputasi Transaksi Pelanggan Menggunakan Software Mathematica 7.0 Input data transaksi
data 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 2, 2, 1, 1, 2, 1, 1, 2, 1, 2, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 2, 1, 2, 1, 1, 1, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 2, 1, 2, 2, 1, 1, 2, 1, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 2, 1, 1, 2, 1, 2, 2, 1, 1, 1, 1, 2, 1, 1, 2, 2, 2, 2, 1, 1, 2, 1, 2, 1, 2, 1, 2, 2, 1, 2, 2, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 1, 2, 1, 2, 1, 2, 2, 1, 1, 2, 2, 2, 2, 1, 1, 1, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 2, 1, 2, 2, 1, 1, 1, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 1, 2, 1, 2, 1, 2, 1, 1, 2, 2, 1, 2, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 2, 2, 1, 1, 2, 1, 1, 2, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 2, 1, 2, 1, 2, 1, 1, 1, 1, 1, 2, 1, 2, 1, ;
1, 2, 1, 2, 1, 2, 1, 1, 2, 2, 2, 1, 2, 1, 2, 2, 1, 2, 1, 2, 2, 2, 2, 2
Input SeedRandom Awal
SeedRandom berfungsi untuk mencatat nilai parameter Lambda yang dibangkitkan secara acak
z0 1; Menetapkan NS2
NS adalah ruang state untuk memodelkan Transaksi Pelanggan menggunakan Model Hidden Markov
ns 2; Membangkitkan nilai parameter awal
transisix_, y_ : Blocka, b, c, a RandomReal0, 1, x , y ; b Plus Transposea; c a b;
HasilAkhir ; Forns 2, ns 7, frek 0; PresBar ; zSeedRan ; Forz z0, z 2000, SeedRandom z;
transMns_ : transisins, 2; transQns_ : transisins, ns; phiQns_ : transisi1, ns; M transMns; Q transQns; phi phiQns; Algoritme Forward tM TransposeM; myt_ : TransposetMdata1, t;
Alpha untuk t1
alpha1 Transposephi my1;
phiQns_ : transisi1, ns; M transMns; Q transQns;
23
phi phiQns; Algoritme Forward tM TransposeM; myt_ : TransposetMdata1, t;
Alpha untuk t1
alpha1 Transposephi my1; Alpha untuk t1,2,...,T Alpha
NestListTransposeTranspose 1.Q my 2 1, 2 1 &, alpha1, 1, LengthTransposedata 1;
alphaT AlphaLengthTransposedata 1, 1; PeluangObservasi Sum alphaTi, i, ns; Algoritme Viterbi Delta
NestListTableMax 1 TransposeQi, i, ns my 2 1,
2 1 &,
alpha1, 1, LengthTransposedata 1; deltaT DeltaLengthTransposedata, 1; PeluangStateMaks MaxdeltaT; BST TablePositionDeltai, 1, MaxDeltai, 1, i, LengthTransposedata;
BarisanStateTerbaik TableBSTi, 11, i, LengthTransposedata;
Menduga barisan observasi berdasarkan barisan state yang memiliki nilai peluang maksimum BarisanObservasiDuga
TableRandomChoiceMBarisanStateTerbaiki 1, 2, 1, i, LengthBarisanStateTerbaik Flatten;
Memilih barisan observasi duga yang memiliki ketepatan lebih besar dari 80
banding Flattendata, BarisanObservasiDuga Transpose;
JmldtL_ : Countbanding, L, _;
JmldtdgT_, C_ : Countbanding, T , C;
PresTepatdgD_ : JmldtdgD , D JmldtD 100 N; PresTepatdg1 PresTepatdg1; PresTepatdg2 PresTepatdg2; PresTepDgBar
Sum Jmldtdgi, i, i, 2 LengthTransposedata 100 N;
IfPresTepatdg1 80 && PresTepatdg2 80, frek frek 1; PresBar AppendPresBar, PresTepDgBar; zSeedRan AppendzSeedRan, z; Printz, PresTepatdg1, PresTepatdg2, PresTepDgBar, 0; z ; Printns; Printfrek; PrintMaxPresBar;
PrintzSeedRanPositionPresBar, MaxPresBar Flatten; Hasil
frek frek 1; PresBar AppendPresBar, PresTepDgBar; zSeedRan AppendzSeedRan, z; Printz, PresTepatdg1, PresTepatdg2, PresTepDgBar, 0;
24
z ; Printns; Printfrek; PrintMaxPresBar;
PrintzSeedRanPositionPresBar, MaxPresBar Flatten; Hasil
ns, frek, MaxPresBar,
zSeedRanPositionPresBar, MaxPresBar Flatten Flatten;
HasilAkhir AppendHasilAkhir, Hasil; ns
;
PrintHasilAkhir;
Grafik frekuensi nilai parameter yang memiliki peluang di atas 80 terhadap NS THA TransposeHasilAkhir; X THA1; Y THA2; Z THA3;
XY TableXi, Yi, i, 6; XZ TableXi, Zi, i, 6;
ListPlotXY, Frame True, Joined True, PlotMarkers
"\\\StyleBox\"\",\n FontSize18,\n FontColorRGBColor1,0,0\",
GridLines Automatic, Axes True, True, PlotRange 0, 10, 0, 2000, Ticks Range0, 10, 1, Range 0, 2000, 400, GridLinesStyle DirectiveOrange, Dashed, FrameLabel " NS",
" Frekuensi nilai parameter awal dengan peluang observasi di atas 80", AspectRatio 1 Grafik perbandingan persentase ketepatan dugaan barisan observasi terhadap NS ListPlotXZ, Frame True, Joined True, PlotMarkers
"\\\StyleBox\"\",\n FontSize18,\n FontColorRGBColor1,0,0\",
GridLines Automatic, Axes True, True, PlotRange 0, 10, 0, 100, Ticks Range0, 10, Range0, 100,
GridLinesStyle DirectiveOrange, Dashed,
FrameLabel " NS", "Presentase Ketepatan Dugaan Barisan Observasi ",
AspectRatio 1
25
THA TransposeHasilAkhir; X THA1; Y THA2; Z THA3; R THA4; Fori 1, i 7, ns Xi; z Ri; transisix_, y_ : Blocka, b, c, a RandomReal0, 1, x , y ; b Plus Transposea; c a b;
SeedRandom z; transMns_ : transisins, 2; transQns_ : transisins, ns; phiQns_ : transisi1, ns; M transMns; Q transQns; phi phiQns; Algoritme Forward Backward tM TransposeM; myt_ : TransposetMdata1, t; alpha1 Transposephi my1; Alpha
NestListTransposeTranspose 1.Q my 2 1, 2 1 &, alpha1, 1, LengthTransposedata 1;
alphaT AlphaLengthTransposedata 1, 1;
beta NestListQ. 1 my 2, 2 1 &, ConstantArray1, ns, LengthTransposedata, LengthTransposedata 1;
Algoritme Baum Welch albetm TableAlphai, 1 betaLengthTransposedata i, 1 myi 1, i, LengthTransposedata 1;
Epsi TableTableFlattenalbetm j Qi, i, ns, j, LengthTransposedata 1;
SumEpsi TableSum Epsili, j, i, ns, j, ns, l, LengthTransposedata 1;
Epsilon TableEpsii SumEpsii, i, LengthTransposedata 1;
Gama TableTotalEpsiloni, j, i, LengthTransposedata 1, j, ns;
SumEpsilon
TableSum Epsiloni, jl, i, LengthTransposedata 1, j, ns, l, ns;
SumGama TableSum Gamai, j, i, LengthTransposedata 1, j, ns; Qdugaan TableSumEpsiloni, j SumGamai, i, ns, j, ns N; phidugaan ListGama1 N;
dataMduga DeleteFlattendata, LengthFlattendata; Mduga
SumEpsi TableSum Epsili, j, i, ns, j, ns, l, LengthTransposedata 1;
Epsilon TableEpsii SumEpsii, i, LengthTransposedata 1;
26
Gama TableTotalEpsiloni, j, i, LengthTransposedata 1, j, ns;
SumEpsilon
TableSum Epsiloni, jl, i, LengthTransposedata 1, j, ns, l, ns;
SumGama TableSum Gamai, j, i, LengthTransposedata 1, j, ns; Qdugaan TableSumEpsiloni, j SumGamai, i, ns, j, ns N; phidugaan ListGama1 N;
dataMduga DeleteFlattendata, LengthFlattendata; Mduga Transpose
TableSum GamaPositiondataMduga, 1i, 2, j, i, LengthPositiondataMduga, 1, j, ns,
TableSum GamaPositiondataMduga, 2i, 2, j, i, LengthPositiondataMduga, 2, j, ns;
Mdugaan TableMdugai, j SumGamai, i, ns, j, 2 N; Output Parameter Nilai Duga Print Grid" NS", ns,
" Urutan parameter yang memiliki ketepatan dugaan barisan observasi paling maksimum ", z,
"Persentase ketepatan dugaan barisan observasi", Zi Grid" Nilai parameter awal",
" phi", "", MatrixForm phi, "Q", "", MatrixForm Q,
" M", "", MatrixForm M Grid" Nilai parameter dugaan",
" phi", "", MatrixForm phidugaan, "Q", "", MatrixForm Qdugaan,
;
" M", "", MatrixForm Mdugaan
i ; Menyimpan hasil parameter dugaan di file Excel Export" phi.xls", phidugaan; Export"Q.xls", Qdugaan; Export" M.xls", Mdugaan;
27
Lampiran 5 Grafik Frekuensi Nilai Parameter Awal dengan Peluang Observasi di Atas 80%
F rek u en si n ilai p aram eter aw al d en g an p elu an g o b serv asi d i atas 8 0
2000
1500
1000
500
0 0
2
4
6
8
10
NS
Gambar 3 Frekuensi Nilai Parameter Awal dengan Peluang Observasi di Atas 80%
28
Lampiran 6 Grafik Persentase Ketepatan Dugaan Barisan Observasi terhadap
P resen tase K etep atan D u g aan B arisan O b serv asi
100
80
60
40
20
0 0
2
4
6
8
NS
Gambar 4 Persentase Ketepatan Dugaan Barisan Observasi terhadap
10
29
Lampiran 7 Tabel Frekuensi dan Ketepatan Dugaan Tabel 2 Persentase Ketepatan Dugaan Barisan Observasi
NS
SeedRandom ke-
Persentase ketepatan dugaan barisan observasi (%)
Perubahan Persentase (%)
2
206
96.4516
-
3
1438
97.7419
1.2903
4
494
97.7419
0
5
1744
98.0645
0.3226
6
1663
98.0645
0
7
903
100
1.9355
30
Lampiran 8 Output Mathematica 7.0 untuk Nilai Parameter Awal dan Nilai Parameter Duga
31
32
33
34
Lampiran 9 Komputasi Transaksi Pelanggan Menggunakan Software LINGO 11.0 Sets: State/1..3/; Transaction/1 2/;! 1=melakukan transaksi, 2=tidak melakukan transaksi; Link1(State,State):Myu, a, rho, q, x, B; Link2(State):beta; Link3(State,Transaction): m; EndSets Data: @Ole('FungsiNS_3.xlsx','Myu_3','a_3','rho_3','x_3','b_3','beta_3') = Myu, a, rho, x, B, beta; q, m = @ole('FungsiNS_3.xlsx','q_3','m_3'); EndData @for(link1(i,j)|j#GT#i: @for(link1(i,j)|j#GT#i: @for(link1(i,j)|j#GT#i: @for(link1(i,j)|j#GT#i:
a(i,j) = rho(i,j) x(i,j) = B(i,j) =
0); = 0); 0); 0);
!untuk mencari nilai myu 1; @for(Link2(i): q(i,1) = (@exp(Myu(i,1) - @sum(link2(j): a(i,j) * rho(i,j))) / 1 + @exp(Myu(i,1) - @sum(link2(j): a(i,j) * rho(i,j))))); !untuk mencari nilai myu 2; @for(Link2(i): q(i,2) = (@exp(Myu(i,2) - @sum(link2(j): a(i,j) * rho(i,j))) / (1 + @exp(Myu(i,2) - @sum(link2(j): a(i,j) * rho(i,j))))) (@exp(Myu(i,1) - @sum(link2(j): a(i,j) * rho(i,j))) / (1 + @exp(Myu(i,1) - @sum(link2(j): a(i,j) * rho(i,j)))))); !untuk mencari nilai myu terakhir; @for(Link2(i): q(i,3) = 1 - (@exp(Myu(i,2) - @sum(link2(j): a(i,j) * rho(i,j))) / 1 + @exp(Myu(i,2) - @sum(link2(j): a(i,j) * rho(i,j))))); !untuk mencari nilai beta (transaksi); @for(Link2(i): m(i,1) = (@exp(beta(i) + @sum(link2(j)|j#LE#i: x(i,j) * B(i,j))) / (1 + @exp(beta(i) + @sum(link2(j)|j#LE#i: x(i,j) * B(i,j)))))); !untuk mencari nilai beta (tidak transaksi); @for(Link2(i): m(i,1) = 1 - (@exp(beta(i) + @sum(link2(j)|j#LE#i: x(i,j) * B(i,j))) / (1 + @exp(beta(i) + @sum(link2(j)|j#LE#i: x(i,j) * B(i,j)))))); !untuk mencari nilai beta; beta(1) = b(1,1); @for(Link2(i)|i#GE#2: beta(i) = B(i,1) + @sum(Link2(j)|j#LE#i #AND# j#GE#2: @exp(B(i,j)))); @for(Link2(j): @for(Link2(i)|j#GT#i: beta(i) < beta(j))); End
35
Lampiran 10 Input Komputasi LINGO 11.0 Tabel 3 Nilai Peluang Transisi State 1 2 0.509966627 0.237523354 1 0.455650477 0.32904664 2 0.190170048 0.57058217 3 Tabel 4 Nilai Peluang Transaksi State Transaksi Tidak Transaksi 0.502409808 0.497590192 1 0.547915474 0.452084526 2 0.612576139 0.387423861 3
3 0.252510019 0.215302883 0.239247781
36
Lampiran 11 Output Komputasi LINGO 11.0 untuk Nilai-Nilai Fungsi Peluang Transisi Tabel 5 Nilai State 1 0.181794375 1 0 2 0 3
2 0.25 0.543571787 1.386389041
3 0 0 0
Tabel 6 Nilai State 1 10000001.13 1 7.860553143 2 11.78793464 3
2 0 0.201392753 0.19316426
3 0 0 0.181239819
Tabel 7 Nilai State 1 0.25 1 0.181794375 2 0.192811387 3
2 0 0.249125625 0.181781916
3 0 0 0.248411191
37
Lampiran 12 Output Komputasi LINGO 11.0 untuk Nilai-Nilai Fungsi Peluang Transaksi Tabel 8 Nilai State 1 2 3
1 0 0 0
Tabel 9 Nilai State 1 2 3
1 0 0 0
Tabel 10 Nilai State 0 1 0.192251863 2 0.458153903 3
2 0 0 0
2 0 0 0
3 0 0 0
3 0 0 0