BAB IV IMPLEMENTASI
4.5 Implementasi Proses Mining
• Importing Data
ProM mengimpor event log yang sesuai dengan format MXML atau XES dan dapat memuat definisi model proses dalam format yang berbeda. Penulis menggunakan format csv sebagai contoh dalam proses filter, proses Discovery dan visualisasi. Beberapa fitur utama ProM adalah: menemukan perspektif aliran kontrol suatu proses, analisis jaringan sosial, menganalisis sumber daya dan perspektif kinerja.
74
Gambar 4.46 Data Purchasing Example dengan format csv Terlihat pada gambar 4.46 merupakan data yang digunakan untuk memfilter data pada ProM. Menggunakan contoh data purchasing example yang terdapat pada fluxicon.com.
Gambar 4.47 Button untuk import data pada ProM
• Filtering Data
Setelah mengimpor event log langsung ke ProM. Ada berbagai pilihan untuk memfilter log di ProM termasuk memfilter log berdasarkan event, memfilter log berdasarkan atribut, memfilter log berdasarkan nilai atribut event, menyaring log pada nilai atribut jejak, memfilter log menggunakan awalan bahasa tertutup, memfilter log pada enam bulan pertama per jejak (waktu) dan memfilter Log menggunakan Simple Herustics. Seperti pada Gambar 4.47, merupakan tampilan awal dalam memilih filter yang akan digunakan.
76
Gambar 4.48 Tampilan dalam Memilih Action filter Filter log menggunakan Simple Herustics: Menggunakan filter ini memungkinkan untuk memilih kejadian yang ingin di simpan atau hindari. Jika kelas memiliki kasus yang dibatalkan, dapat membuang instance tersebut. Langkah selanjutnya dalam menggunakan filter ini mempertahankan event yang hanya dimulai dengan tugas yang dipilih di Gambar 4.48
• Process Discovery
Penggambaran struktur model proses bergantung pada audiens. Misalnya aliran kontrol, varian petri net, model fuzzy, representasi BPMN. Model fuzzy tidak dapat dieksekusi seperti petri net, tetapi model ini memungkinkan representasi yang lebih sederhana, menambah masalah yang terkait dengan aktivitas yang tidak terstruktur dan berjumlah besar. Dalam alat dengan lebih dari 600 + plugin tidak dapat menemukan seluruhnya, namun untuk log percobaan, penulis menggunakan fuzzy miner dan heuristic miner untuk menunjukkan model proses yang dihasilkan. Input untuk fuzzy miner adalah log yang difilter dan outputnya berupa model fuzzy.
78
Heuristic Miner adalah algoritma kedua yang diturunkan setelah algoritma alfa yang berpotensi mengatasi kebisingan dan aktivitas bersamaan. Heuristic Miner mengambil log yang difilter dan mengeluarkan jaring Herustics. Proses ini penting pada saat petri net diperlukan untuk analisis lebih lanjut dan ketika jumlah kejadian yang lebih sedikit direpresentasikan dalam kehidupan nyata.
Gambar 4.51 Model Proses Menggunakan Heuristics Miner untuk ProM
4.5.2 Disco
• Importing Data
Disco mendukung berbagai format import event log termasuk CSV, MS Excel, MXML, XES, FXL Disco Logs dan file proyek DSC Disco. Penulis menggunakan format csv sebagai contoh dalam proses filter, proses Discovery dan visualisasi. Beberapa fitur termasuk penemuan proses otomatis, animasi peta proses, pemfilteran event log dengan berbagai parameter, manajemen proyek, dan statistik terperinci.
80
Gambar 4.52 Button untuk import data pada Disco • Filtering Data
Sebelum menggunakan Disco, event log harus memenuhi persyaratan minimum untuk analisis, termasuk case ID, Activity dan Timestamp seperti pada gambar 4.52. Selanjutnya, Disco membaca file yang telah dikonfigurasi sebelumnya terlihat seperti pada gambar 4.533
Gambar 4.54 Tampilan setelah data di import
Disco menyediakan pemetaan proses secara otomatis setelah event log diimport ke sistem seperti pada gambar 4.53. Hal ini memungkinkan dengan mudah memfilter dan memeriksa atribut secara paralel dengan model fuzzy.
Ada lima jenis filter yang tersedia di Disco: 1. Filter Timeframe
Filter ini memungkinkan untuk fokus pada bagian log yang dijalankan dalam jangka waktu tertentu. Misalnya, dalam log tertentu yang diambil selama bertahun-tahun, jika pengguna hanya perlu menganalisis proses selama enam bulan terakhir, filter kerangka waktu menyediakan pemilihan kerangka waktu yang fleksibel.
82
Gambar 4.55 Filter Timeframe pada Disco
2. Filter Variasi
Filter variasi menyediakan metode untuk memfilter perilaku yang paling umum atau luar biasa dalam suatu proses. Saat proses terstruktur, filter variasi penting untuk memilih perilaku. Namun demikian, karena prosesnya semakin kompleks, filter variasi kurang berfungsi.
3. Filter Performance
Filter performance adalah filter kasus lain yang berhubungan dengan sekumpulan kriteria kinerja tertentu. Jika ingin melihat semua kasus yang di bawah atau di atas waktu throughput yang diberikan, filter kinerja memungkinkan untuk melakukannya dengan tepat.
Gambar 4.57 Filter Performance pada Disco
4. Filter Endpoint
Filter ini memangkas event yang tidak berada dalam batas aktivitas awal dan aktivitas akhir. Di filter trim, bisa fokus pada event tertentu untuk memulai dan mengakhiri event.
84
Gambar 4.58 Filter Endpoints pada Disco
5. Filter Atribut
Filter atribut memungkinkan untuk memilih event berdasarkan aktivitas dan sumber daya. Contoh terdapat dalam log, atribut filer mendukung untuk memilih kasus di mana perbaikan telepon berdasarkan telepon yang telah diperbaiki atau tidak.
• Process Discovery
Pada aplikasi Disco, setelah filter yang diperlukan diterapkan, maka user dapat menemukan model fuzzy dengan semua informasi yang diperlukan. Misalnya, untuk aktivitas tertentu, bilah notifikasi menampilkan frekuensi dan kinerja masing-masing.
Gambar 4.60 Penemuan proses otomatis di Disco
4.5.3 PM4Py
• Importing Data
Di bagian ini, informasi tentang mengimpor dan mengekspor event log, yang disimpan dalam berbagai format data, disajikan. Sebelum menyelami detail mengimpor dan mengekspor berbagai jenis file yang berisi data event, pertama-tama penulis menjelaskan secara singkat dua pengertian dasar data event yang digunakan dalam PM4Py. Secara umum, membedakan antara dua tipe objek data event yang berbeda:
1. Importing IEEE XES files
IEEE XES adalah format str yang menjelaskan bagaimana event log disimpan. Untuk informasi lebih lanjut tentang formatnya,
86
silakan pelajari Situs web IEEE XES. Event log sintetis sederhana dapat diunduh dari sini. Perhatikan bahwa beberapa event log nyata telah tersedia, selama beberapa tahun terakhir. dapat menemukannya di sini.
Kode contoh di sebelah kanan menunjukkan cara mengimpor event log, disimpan dalam format IEEE XES, yang diberi jalur file ke file log. Fragmen kode menggunakan importir str (iterparse, dijelaskan di paragraf selanjutnya). Perhatikan bahwa Event log IEEE XES diimpor ke objek Event log, yaitu, seperti yang dijelaskan sebelumnya.
Event log disimpan sebagai perpanjangan dari struktur data daftar Python. Untuk mengakses jejak di log, cukup dengan memberikan indeksnya di event log. Pertimbangkan contoh di sebelah kanan tentang cara mengakses objek berbeda yang disimpan di log yang diimpor.
Metode apply () dari xes_importer, yaitu terletak di pm4py.objects.log.importer.xes.importer.py, berisi dua parameter opsional: varian dan parameter. Parameter varian menunjukkan varian mana dari importir yang akan digunakan. Parameter parameter adalah kamus Python, menentukan parameter pilihan tertentu.
Gaya pemanggilan metode ini digunakan di seluruh PM4Py dalam berbagai algoritme berbeda yang diimplementasikan, yaitu, dengan membungkus di ser implementasi yang berbeda, varian baru algoritme dengan mudah dipanggil, menggunakan kode PM4Py yang ditulis sebelumnya. W.r.t. Importir XES, tersedia dua varian. Satu implementasi didasarkan pada fungsi iterparse () dari xml.etree. Varian lainnya adalah parser kustom baris demi baris (untuk meningkatkan performa).
Gambar 4.61 Import IEE XES Files pada PM4Py 2. Importing CSV files
Terlepas dari str IEEE XES, banyak event log sebenarnya disimpan dalam file CSV. Secara umum, ada dua cara untuk menangani file CSV di PM4Py:
Impor CSV ke DataFrame ps Secara umum, sebagian besar algoritme yang ada di PM4Py dikodekan agar fleksibel dalam hal masukannya, yaitu, jika objek event log tertentu yang disediakan tidak dalam bentuk yang benar, menerjemahkannya ke bentuk yang sesuai. Karenanya, setelah mengimpor kerangka data, sebagian besar algoritme secara langsung dapat bekerja dengan bingkai data.
Ubah CSV menjadi objek event log (mirip dengan hasil importir IEEE XES yang disajikan di bagian sebelumnya); Dalam kasus ini, langkah pertama adalah mengimpor file CSV menggunakan p (mirip dengan poin sebelumnya) dan kemudian mengonversinya menjadi objek event log. Di sisa bagian ini, untuk menyoroti secara singkat cara mengonversi DataFrame ps menjadi event log.
Untuk mengonversi objek di PM4Py, ada paket khusus, yaitu objek.conversion. Paket konversi memungkinkan seseorang untuk mengubah objek dari tipe tertentu ke objek baru dari tipe yang berbeda (jika konversi seperti itu berlaku). Di dalam paket konversi, konvensi penamaan str diterapkan, yaitu tipe objek input menentukan paket tempat kode berada. Jadi, bahwa DataFrame
88
yang diimpor mewakili event log, penulis menemukan konversi yang sesuai dalam paket object.conversion.log.
Ada beberapa alasan untuk ini. Pertama-tama, file CSV, menurut definisi, lebih dekat dengan Arus Event, yaitu mewakili urutan event. Karena event log 'merekatkan' event bersama-sama yang termasuk dalam kasus yang sama, yaitu, ke dalam jejak event, perlu menentukan ke konverter atribut apa yang akan digunakan untuk ini. Parameter yang perlu atur untuk ini, yaitu dalam konverter adalah parameter CASE_ID_KEY. Nilai defaultnya adalah 'case: concept: name'. Oleh karena itu, ketika data event input , yang disimpan dalam file csv memiliki kolom dengan nama case: concept: name, kolom itu digunakan untuk mendefinisikan jejak.
Gambar 4.62 Import CSV Files pada PM4Py • Filtering Data
Pemfilteran dalam teknik pada pm4py merupakan salah satu teknik terpenting dalam Process Mining karena memungkinkan untuk mengambil sebagian kecil dari log yang berisi informasi yang perlukan untuk menggunakan / mengeksploitasi.
Ada 4 jenis filter dalam Process Mining for python yaitu sebagai berikut :
1. Timestamp
Metode ini digunakan untuk menyortir sesuai dengan waktu yang diinginkan dalam suatu event, seperti telihat
pada gambar 4.63 adalah source code untuk melakukan filter berdasarkan timestamp.
Gambar 4.63 Kode untuk melakukan filter timestamp pada PM4Py
2. Performance
Metode ini digunakan untuk menyortir event log berdasarkan kinerja seperti terlihat pada gambar 4.63 merupakan source code untuk melakukan filter berdasarkan performance.
Gambar 4.64 Kode untuk melakukan filter performance pada PM4Py
3. Variant
Metode ini digunakan untuk menyortir event log berdasarkan variasi seperti terlihat pada gambar 4.64 merupakan source code untuk melakukan filter berdasarkan variant.
90
Gambar 4.65 Kode untuk melakukan filter performance pada PM4Py
4. Attribute
Metode ini digunakan untuk menyortir event log berdasarkan atribut seperti terlihat pada gambar 4.65 merupakan source code untuk melakukan filter berdasarkan attribute
Gambar 4.67 Kode untuk melakukan filter attribute pada PM4Py
• Process Discovery
Process Discovery pada PM4Py adalah dengan menemukan model proses yang sesuai yang menggambarkan urutan kejadian / aktivitas yang dijalankan selama eksekusi proses.
1. Process Discovery Menggunakan Alpha Algoritma
Process Discovery Algoritma ingin menemukan model proses yang sesuai yang menggambarkan urutan kejadian / aktivitas yang dijalankan selama eksekusi proses. Alpha algoritma adalah salah satu algoritma proses yang paling terkenal dan dapat menemukan berbagai jenis :
1. Model petri net di mana semua transisi terlihat dan unik dan sesuai dengan event rahasia (misalnya, untuk aktivitas).
2. Penanda awal yang menggambarkan status model petri net saat eksekusi dimulai
3. Penanda akhir yang menggambarkan status model petri net saat eksekusi berakhir
Penulis memberikan contoh di mana log dibaca, alpha algoritma diterapkan dan petri net bersama dengan tanda awal dan akhir ditemukan. Log yang penulis ambil sebagai input adalah log XES running-example.xes yang dapat ditemukan di folder tes / input_data seperti terlihat pada gambar 4.68 merupakan source code yang digunakan.
Gambar 4.68 Kode Proses Alpha Miner pada PM4Py 2. Process Discovery Menggunakan Heuristics Miner
Heuristics Miner adalah algoritma yang bekerja pada Directly-Follows Graph, menyediakan cara untuk menangani noise dan menemukan konstruksi umum (ketergantungan antara dua aktivitas, AND). Output dari Heuristics Miner adalah Heuristics Net, jadi suatu
92
objek yang berisi aktivitas dan hubungan diantara mereka. Net Heuristik kemudian dapat diubah menjadi Petri Net. Pertama, log dapat diimpor:
Gambar 4.69 Kode Proses Heuristic Miner pada PM4Py
4.6 Proses Visualization