Sequence Clustering pada Event Logs Menggunakan ProM

Table of Contents
Penemuan model proses (discovery) untuk event logs yang kompleks akan menghasilkan model proses yang kompleks pula. Dalam proses mining, contoh model proses yang kompleks adalah Spaghetti Process. Disebut spaghetti karena bentuk proses memiliki flow yang rumit, seperti halnya makanan spaghetti yang kita kenal sehari-hari. Event logs yang menghasilkan model proses Spaghetti tidak mudah dibaca oleh manusia. Padahal tujuan penemuan model proses pada event logs adalah untuk menganalisis jalannya proses bisnis guna mendeteksi berbagai fraud yang dimungkinkan terjadi.  Wil van der Aalst dalam bukunya Process Mining : Discovery, Conformance and Enhancement of Business Procesess mencontohkan model proses spaghetti terbentuk dari event logs sebuah rumah sakit di Belanda yang menggambarkan proses diagnosis dan pengobatan sebanyak 2765 pasien. Event logs tersebut berisikan 114.592 kejadian (event), 619 kegiatan yang berbeda dilakukan oleh 266 Individu yang berbeda (dokter, perawat, dll). Hasil discovery terhadap event logs tersebut ditunjukkan pada gambar 1.


Gambar 1 Contoh Model Proses "Spaghetti"
Salah satu solusi untuk mempermudah mengurai kerumitan model proses spaghetti adalah melakukan clustering (pengelompokan) terhadap model proses hasil discovery. Salah satu teknik pengelompokan yang tersedia dalam plugin ProM adalah sequence clustering. Teknik clustering ini akan mengelompokkan model proses sesuai dengan urutan aktivitas yang mirip mengacu pada case event logs.

Sebagai contoh implementasi sequence clustering, saya sajikan suatu model proses (gambar 2) hasil discovery terhadap suatu event logs kegiatan pelabuhan di Surabaya. Proses discovery menggunakan algoritma Alpha++ pada ProM, dan telah dipastikan bahwa model proses hasil discovery sesuai dengan standar operasional prosedur (SOP) perusahaan.
Gambar 2 Hasil Discovery Model Proses Untuk Event Logs Pelabuhan
Kemudian, kita akan mengelompokkan model proses pada gambar 2 sesuai dengan jumlah kelompok yang kita inginkan. Untuk itu, pilih menu Analysis pada ProM, lalu pilih Sequence Clustering. Selanjutnya muncul tampilan seperti pada gambar 3.
Gambar 3 Analysis Sequence Clustering menggunakan Plugin pada ProM
Secara otomatis, plugin ini akan menampilkan jumlah instances yang akan dikelompokkan. Pada event logs, instances ini menunjukkan jumlah case. Sesuai dengan studi kasus yang sedang digunakan, jumlah instances yang tersedia berjumlah sepuluh buah (PP1 hingga PP10).

Kesepuluh instances tersebut akan dikelompokkan berdasarkan urutan aktivitas yang sejenis. Untuk mempermudah teman-teman dalam mengamati alur case, masing-masing instances saya dirincikan satu persatu urutan aktivitasnya dalam tabel berikut :
Instances
Urutan Aktivitas (Traces)
PP1
Kapal Sandar di Dermaga – Input EDI – Dokumen Lengkap – Haulage ke Reefer – Stack Non Reefer – Prepare Alat Bantu – Return Alat Bantu – Clearance doc – Delivery
PP2
Kapal Sandar di Dermaga – Input EDI – Dokumen Lengkap – Haulage ke Reefer – Stack Non Reefer – Prepare Alat Bantu – Return Alat Bantu – Clearance doc – Delivery
PP3
Kapal Sandar di Dermaga – Input EDI – Dokumen Lengkap – Haulage ke Reefer – Stack Non Reefer – Prepare Alat Bantu – Return Alat Bantu – Clearance doc – Delivery
PP4
Kapal Sandar di Dermaga – Input EDI – Dokumen Lengkap – Haulage ke Reefer – Stack Non Reefer – Prepare Alat Bantu – Return Alat Bantu – Clearance doc – Delivery
PP5
Kapal Sandar di Dermaga – Input EDI – Dokumen Lengkap – Haulage ke Reefer – Stack Non Reefer – Prepare Alat Bantu – Return Alat Bantu – Clearance doc – Delivery
PP6
Kapal Sandar di Dermaga – Input EDI – Dokumen Lengkap – Haulage ke Reefer – Stack Non Reefer – Prepare Alat Bantu – Return Alat Bantu – Clearance doc – Delivery
PP7
Kapal Sandar di Dermaga – Input EDI – Dokumen Lengkap – Input EDI – Haulage ke Reefer – Stack Non Reefer – Prepare Alat Bantu – Return Alat Bantu – Clearance doc – Delivery
PP8
Kapal Sandar di Dermaga – Input EDI – Dokumen Lengkap – Haulage ke Reefer – Stack Non Reefer – Prepare Alat Bantu – Return Alat Bantu – Clearance doc – Clearance doc  – Delivery
PP9
Kapal Sandar di Dermaga – Input EDI – Dokumen Lengkap – Haulage ke Reefer – Stack Reefer – Prepare Alat Bantu – Plug Power – Delivery
PP10
Kapal Sandar di Dermaga – Input EDI – Dokumen Lengkap – Haulage ke Reefer – Stack Reefer – Prepare Alat Bantu – Plug Power – Delivery
Untuk melakukan pengelompokan, tentukan terlebih dahulu jumlah kelompok yang bakal dibentuk. Pada contoh ini, kelompok yang dibentuk berjumlah 2 buah. Klik tombol cluster untuk memulai proses. Terkadang timbul pertanyaan, bagaimana saya bisa menentukan jumlah cluster! Memang tidak ada acuan pasti. Namun perlu diketahui bahwa sistem akan menyesuaikan jumlah cluster secara otomatis. Misalnya, kita menentukan cluster sebanyak 10, sistem akan mengecek apakah model proses dapat dikelompokkan menjadi 10 buah. Jika tidak, maka yang terisi mungkin hanya cluster0 hingga cluster1 saja, sementara cluster2 hingga cluster9 kosong. Hal itu menunjukkan bahwa sesungguhnya model proses hanya dapat dikelompokkan menjadi 2 cluster saja menggunakan sequence clustering.
Gambar 4 Hasil Cluster menggunakan Sequence Clustering
Sistem akan mengelompokkan instanses berdasarkan jumlah cluster yang telah ditentukan. Karena pada contoh ini cluster yang dibentuk berjumlah 2, maka instances dibagi menjadi 2 kelompok besar. Penentuan cluster didapatkan dari urutan proses sejenis yang otomatis terdeteksi dari sistem.
Cluster0
PP1, PP2, PP3, PP4, PP5, PP6, PP8
Cluster1
PP7, PP9, PP10
Masing-masing cluster dapat divisualisasikan dalam bentuk model. Transisi antar model memiliki nilai dalam interval 0.0 hingga 1.0. Nilai 1.0 adalah nilai maksimum menunjukkan proses dalam model tersebut pasti dilewati untuk semua case (instances) dalam satu cluster. Misalkan transisi “IN” ke “Kapal Sandar di Dermaga” memiliki nilai 1.0, artinya pada cluster1 (PP7, PP9, PP10), seluruh instances pasti melewati proses “Kapal Sandar di Dermaga” tanpa ada pilihan ke proses lain. Contoh lain, transisi dari proses “Dokumen Lengkap” memiliki pilihan ke “Haulage ke Reefer CY” bernilai 0.875 dan ke “Input EDI” bernilai 0.125, artinya cluster1 (PP7, PP9, PP10), sebagian besar proses condong ke “Haulage ke Reefer CY”.

Pilih tab Markov Chain untuk mendapatkan model pada setiap cluster. Model tersebut menunjukkan urutan yang mungkin pada setiap cluster, ditandai dengan adanya nilai probabilitas pada setiap transisi antar model.
Gambar 5 Model Hasil Cluster0

Gambar 6 Model Hasil Cluster1
Demikian penjelasan dingkat mengenai sequence clustering pada event logs menggunakan ProM. Semoga bermanfaat bagi teman-teman. Silakan ditanyakan apabila ada yang kurang faham.

Post a Comment