Seminar Nasional Telekomunikasi dan Informatika (SELISIK 2016)
ISSN : 2503-2844
Bandung, 28 Mei 2016
IMPLEMENTASI MESIN FORWARD CHAINING PADA SISTEM PAKAR MENGGUNAKAN TABULASI FREKUENSI ANTESEDEN PADA RULE (1, 2)
Aslan Alwi(1), Munirah(2) Universitas Muhammadiyah Ponorogo Jalan Budi Utomo 10 Ponorogo (1)
[email protected] (2)
[email protected]
Abstrak Sistem pakar berinteraksi dengan pengguna biasanya dengan mengajukan pertanyaan-pertanyaan untuk memvalidasi fakta-fakta atau gejala-gejala yang mungkin dialami atau diketahui oleh pengguna. Ketika pengguna menjawab dengan ya atau tidak terhadap sebuah fakta yang ditanyakan maka sistem melakukan inferensi atau memilih fakta lain untuk ditanyakan. Aktivitas sistem pakar untuk memilih fakta atau gejala yang ada dalam basis pengetahuan untuk ditanyakan kepada pengguna menjadi suatu persoalan pengambilan keputusan bagi sistem tentang bagaimana memilih fakta untuk ditanyakan secara efisien tanpa harus menanyakan seluruh fakta atau gejala yang mungkin, atau tanpa melakukan pemilihan acak secara heuristik. Untuk mengatasi masalah pengambilan keputusan tersebut, pada makalah diusulkan metode perangkingan fakta atau gejala dengan cara melakukan tabulasi frekuensi kemunculan fakta pada anteseden rule yang ada dalam basis pengetahuan. Tabulasi dilakukan secara berulang dan senantiasa diperbaharui setiap kali pengguna melakukan validasi terhadap fakta yang ditanyakan. Berdasarkan tabulasi ini sistem merangking secara dinamis (berulang-ulang) faktafakat yang akan ditanyakan kemudian hasilnya digunakan unutk mencapai inferensi yang benar menurut suatu metode inferensi forward chaining. Kata kunci : Forward chaining, tabulasi frekuensi, anteseden rule.
Abstract The expert system interacts with the user usually by asking questions to validate the facts or symptoms that may be experienced or known by the user. When
users answered with yes or no to a fact that prompted the system performs inference or choose another fact to be asked. Activities expert system to select facts or symptoms that exist in the knowledge base to be asked to the user as an issue of decision-making for the system on how to select the facts to be asked efficiently without having to ask all the facts or symptoms that may, or without performing the random selection heuristically. To overcome the problem of making the decision, the paper proposed a method of ranking the facts or symptoms by doing tabulation frequency of occurrence of the facts in the antecedent rule contained in the knowledge base. Tabulation is done repeatedly and is updated every time the user validate the facts in question. Based on this tabulation system dynamically rank (repeatedly) the facts that will be asked and the result used fatherly achieve the correct inference according to a forward chaining method. Keywords : Forward chaining, antecedents.
frequency
tabulation,
rule
I. PENDAHULUAN Ketika sebuah sistem pakar telah selesai dibuat, dia tidak memiliki preferensi tentang siapa nantinya yang akan bertanya kepadanya, sehingga dia tidak memiliki pengetahuan tentang pertanyaan apa yang pertama kali sebaiknya diajukan saat seorang pengguna datang kepadanya dan bertanya. Karena itu, boleh jadi seorang pengembang sistem pakar telah membuat sendiri aturan tentang yang mana ditanyakan terlebih dahulu dengan tanpa melihat siapa pengguna yang datang bertanya. Persoalan ini 7
Aslan Alwi(1), Munirah(2) Seminar Nasional Telekomunikasi dan Informatika 2016
Seminar Nasional Telekomunikasi dan Informatika (SELISIK 2016) Bandung, 28 Mei 2016 dapat dilihat sebagai “memilih rule yang pertama kali hendak dipicu”. Sistem boleh jadi menetapkan bahwa yang pertama kali harus dipicu adalah rule pada urutan teratas, atau sistem memilih berdasarkan rule yang paling sering dipicu sebelumnya, atau berdasarkan probability yang diperoleh dari eksperimen-eksperimen sebelumnya tentang fakta mana yang paling sering dialami oleh pengguna. Namun demikian, persoalan memilih rule yang pertama kali dipicu ini dapat juga dilihat semata sebagai “persoalan memilih fakta atau proposisi atomik pada himpunan anteseden dari seluruh rule”. Dalam cara pandang ini, pertama kali dilakukan adalah mengumpulkan seluruh proposisi atomik pada bagian anteseden setiap rule yang ada dalam basis pengetahuan, dengan tidak memperhatikan bagian konsekuen. Kemudian dilakukan tabulasi terhadap frekuensi kemunculan tiap-tiap proposisi atomik pada tiap-tiap anteseden rule sehingga diperoleh sebuah tabel yang merangking seluruh proposisi atomik berdasarkan tabulasi kemunculan tersebut. Sistem kemudian memilih fakta atau proposisi atomik yang paling teratas dan menanyakannya kepada pengguna. Jawaban atau validasi pengguna digunakan oleh sistem untuk melakukan seleksi rule. Seleksi rule dilakukan berdasarkan jawaban pengguna. Jika pengguna menyatakan “Ya” atau benar terhadap sebuah fakta, maka sistem akan memilih seluruh rule yang memuat fakta tersebut pada bagian antesedennya dan mencoret seluruh rule yang tidak memuatnya. Kemudian proses pengumpulan proposisi atomik dan tabulasi kemunculan pada bagian anteseden diulang lagi tetapi dilakukan terhadap semua rule yang tidak tercoret saja. Tetapi hasil pengumpulan ini dikurangi terhadap porposisi atomik yang telah ditanyakan, artinya bahwa kumpulan proposisi atomik yang hendak ditabulasi tersebut tidak memuat setiap anteseden yang telah ditanyakan. Selanjutnya proses tabulasi terjadi lagi dan perangkingan terjadi lagi secara dinamis, sehingga diperoleh lagi proposisi atomik dengan rangking tertinggi. Selanjutnya dilakukan lagi proses seleksi rule sebagaima sebelumnya. Proses ini terus berulang sehingga diperoleh rule yang tepat untuk dipicu. Jika pengguna menjawab “Tidak” atau memvalidasi “Salah” terhadap sebuah pertanyaan akan fakta yang diajukan kepadanya maka sistem menggunakan informasi ini untuk melakukan seleksi rule dengan cara mencoret seluruh rule yang memuat
ISSN : 2503-2844
fakta tersebut, menyisakan himpunan rule yang tidak memuat fakta yang tidak valid tersebut pada bagian anteseden rule. Selanjutnya proses pengumpulan proposisi atomik pada bagian anteseden rule untuk himpunan yang tersisa dilakukan lagi. Proses tersebut terus menerus diulang hingga dicapai rule yang tepat atau tidak ada rule sama sekali yang memenuhi. Dengan metode tabulasi ini, diharapkan sistem dapat menemukan rule yang harus pertama kali dipicu dengan cepat berdasarkan interaksi dengan pengguna. Tanpa harus membangun sebuah pohon keputusan dan tanpa harus menanyakan seluruh fakta yang mungkin kepada pengguna.
II. KAJIAN LITERATUR Lucas dan Gaag mengemukakan paradigma desain sistem pakar sebagai berikut: sistem pakar = pengetahuan + inferensi
Akibatnya, sistem pakar biasanya terdiri dari dua komponen penting berikut: Sebuah basis pengetahuan menangkap pengetahuan domain-spesifik, dan
Sebuah mesin inferensi yang terdiri dari algoritma untuk memanipulasi pengetahuan diwakili dalam basis pengetahuan. (Lucas & Gaag, 1991)
Memilih sebuah rule dari sejumlah rule untuk dieksekusi adalah persoalan resolusi konflik. Resolusi konflik dapat dibedakan antar satu dengan yang lain dalam beberapa cara, salah satunya adalah berdasarkan prioritas. Tiap-tiap rule diberi nilai prioritas (McDermott and Charles Lanny, 1976). Beberapa jenis resolusi konflik yang lain (Pakiarajah and Crowther and Hartnett, 2000) adalah :
First in First Serve – rule yang diterapkan adalah yang pertama cocok.
Last in First Serve – rule yang diterapkan adalah yang terakhir cocok.
Specificity - rule yang diterapkan adalah rule yang paling banyak faktanya cocok, dalam hal berarti lebih spesifik.
Recency – rule yang diterapkan adalah rule yang paling sesuai dengan fakta yang diperoleh.
8 Aslan Alwi(1), Munirah(2) Seminar Nasional Telekomunikasi dan Informatika 2016
Seminar Nasional Telekomunikasi dan Informatika (SELISIK 2016) Bandung, 28 Mei 2016 Sehubungan dengan kajian literatur, penelitian ini mencoba mengusulkan sebuah metode pemilihan rule yang lain berdasarkan per validasi user untuk fakta-fakta yang ditanyakan. Dalam tinjauan yang lebih dalam, metode yang diusulkan ini sebenarnya belumlah sempurna untuk melakukan resolusi terhadap konflik rule yang mungkin terjadi, algoritma yang dikemukakan masih memerlukan penyempurnaan.
III. USULAN METODE TABULASI Metode ini didasarkan pada beberapa assumsi. Assumsi-assumsi itu adalah : Assumsi 1: Metode dibuat diatas sistem pakar yang menyimpan basis pengetahuannya dalam representasi aturan produksi atau berbasis rule. Assumsi 2: Rule ditulis dalam bentuk berikut: JIKA anteseden MAKA konsekuen Assumsi 3:
ISSN : 2503-2844
seleksi rule dengan mencoret seluruh fakta yang memuat fakta tersebut pada bagian antesedennya, tersisa adalah himpunan rule yang tidak memuat fakta tersebut. 9. Kembali ke langkah 7. 10. Ulangi terus menerus hingga tersisa satu rule yang tersisa. Picu rule yang tersisa tersebut. Atau tak ada rule yang tersisa sehingga tak ada rule yang sesuai. Algoritma ini dapat dinyatakan dalam sebuah bagan alir sebagaimana gambar 1. Bagan alir menyatakan permulaan dengan mengambil seluruh data rule dari dalam basis data yang menyimpan basis pengetahuan dalam bentuk tabel rule. Kemudian sistem menginisialisasi sebuah buffer yang dipersiapkan untuk menampung setiap fakta yang telah di validasi oleh pengguna. Nantinya setiap fakta yang telah ditanyakan ditampung dalam buffer ini yang berupa sebuah vektor atau array. Kemudian sistem juga menginisialisasi sebbuah matrik sebagai penampung rule dari basis data. setelah matrik rule dan buffer penampung siap, maka prosedur yang dijelaskan di atas kemudian dijalankan untuk mencari rule yang siap dipicu untuk pertama kalinya.
Anteseden Rule-rule secara keseluruhan ditulis dalam bentuk normal “DAN”. Yaitu berarti bahwa anteseden ditulis dalam kombinasi perangkai “DAN”. Sedang bentuk konsekuensi rule tidak dibatasi. Cara kerja metode ini dinyatakan dalam prosedur sebagai berikut: 1. Ambil seluruh anteseden rule dari himpunan rule dalam basis pengetahuan. 2. Lakukan tabulasi kemunculan terhadap seluruh fakta atau gejala (proposisi atomik) yang membangun anteseden-anteseden. 3. Diperoleh tabel tabulasi frekuensi kemunculan fakta-fakta. 4. Lakukan perangkingan berdasarkan nilai tabulasi secara menurun. 5. Pilih fakta teratas, dan tanyakan ke pengguna. 6. Jika pengguna membenarkan (Ya) lakukan seleksi rule dengan mencoret seluruh rule yang tidak memuat fakta tersebut, tersisa rule yang memuat fakta tersebut pada antesedennya. 7. Kembali ke langkah 2, dengan himpunan rule yang tersisa. 8. Jika pengguna tidak membenarkan (Tidak) terhadap fakta yang ditanyakan, lakukan
Gambar 1. Bagan alir metode tabulasi
9 Aslan Alwi(1), Munirah(2) Seminar Nasional Telekomunikasi dan Informatika 2016
Seminar Nasional Telekomunikasi dan Informatika (SELISIK 2016)
ISSN : 2503-2844
Bandung, 28 Mei 2016 E F
IV. DEMONSTRASI METODE Pada bagian ini dikemukakan sebuah skenario dimana metode tabulasi digunakan untuk mencari rule yang pertama kali hendak dipicu, skenario dimulai dengan kondisi bahwa sistem dimisalkan menampung sejumlah rule dalam matriks rule sebagai berikut :
3. Kemudian lakukan pengurutan (perangkingan) secara menurun.
Tabel 1. Himpunan rule yang dimiliki sistem
Id rule
Anteseden
Konsekuen
1 2 3 4 5 6 7 8
D B dan D dan F A dan F E A dan B dan C A dan B dan D A dan B dan D dan C dan F D dan C
T M G K dan L atau M K L R P
Pengujian pertama dilakukan adalah untuk menguji kombinasi fakta A dan B dan D, dengan menjalankan metode tabulasi sebagai berikut: 1. Kumpulkan seluruh anteseden rule. Langkah ini menghasilkan anteseden sebagai berikut:
kumpulan
Anteseden Rule D B dan D dan F A dan F E A dan B dan C A dan B dan D A dan B dan D dan C dan F D dan C
2. Kemudian lakukan tabulasi sebagai berikut: Fakta
Frekuensi
A B C D
4 4 3 5
Fakta
Frekuensi
D A B C F E
5 4 4 3 3 1
4. Diperoleh fakta D dengan rangking teratas. Lalu tanyakan fakta D kepada pengguna. 5. Karena diketahui bahwa fakta D benar dari assumsi awal skenario, maka jawaban validasi fakta D dikembalikan adalah “Ya” atau benar.
Kemudian hendak dilakukan pengujian, bahwa jika kombinasi fakta A dan B dan D adalah benar, apakah metode tabulasi akan memicu rule nomor 6 dengan tepat dan cepat. Dan jika kombinasi fakta A dan C adalah benar, apakah metode tabulasi akan menghasilkan rule yang dapat dipicu atau tidak ada rule yang dapat dipicu dengan memberitakan bahwa tak ada rule yang cocok. Secara keseluruhan skenario ini mengassumsikan di awal bahwa fakta A, fakta B dan fakta D adalah benar, dan juga mengassumsikan bahwa kombinasi fakta A dan C adalah benar.
1 3
6. Lakukan seleksi rule dengan mencoret atau menghapus seluruh rule yang tidak memuat fakta D. Maka diperoleh himpunan rule yang tersisa dari tabel 1 adalah sebagaimana ditunjukkan pada tabel 2.
Tabel 2. Himpunan rule yang tersisa dari tabel 1
Id rule
Anteseden
Konsekuen
1 2 6 7 8
D B dan D dan F A dan B dan D A dan B dan D dan C dan F D dan C
T M L R P
7. Ulangi langkah 1 dengan mengumpulkan seluruh anteseden rule yang tersisa diperoleh: Anteseden Rule D B dan D dan F A dan B dan D A dan B dan D dan C dan F D dan C
8. Kurangi dengan fakta D, diperoleh : Anteseden Rule B dan F A dan B A dan B dan C dan F C
9. Lakukan tabulasi frekuensi, dan sekaligus perangkingan diperoleh :
10 Aslan Alwi(1), Munirah(2) Seminar Nasional Telekomunikasi dan Informatika 2016
Seminar Nasional Telekomunikasi dan Informatika (SELISIK 2016) Bandung, 28 Mei 2016 Fakta
Frekuensi
B A F C
3 2 2 1
ISSN : 2503-2844
skenario, hanya fakta A, B dan D yang benar, maka fakta F dikembalikan sebagai fakta yang tidak valid dengan jawaban “Tidak”.
10. Karena fakta B yang teratas, maka fakta B yang dipilih untuk ditanyakan ke pengguna. Oleh karena assumsi skenario adalah fakta B benar, maka jawaban dikembalikan ke sistem adalah “Ya”.
16. Lakukan seleksi rule pada tabel 3 dengan menghilangkan seluruh rule yang memuat fakta yang tidak valid, sehingga diperoleh susunan rule yang tersisa sebagaimana tabel 4
11. Selanjutnya lakukan seleksi rule berdasarkan jawaban ini dengan menghapus seluruh rule yang tidak memuat fakta B, sehingga diperoleh dari tabel 2 adalah susunan rule baru sebagaimana tabel 3 yang ditunjukkan sebagai berikut:
Tabel 4. Himpunan rule yang tersisa dari tabel 3
Tabel 3. Himpunan rule yang tersisa dari tabel 2
Id rule
Anteseden
Konsekuen
2 6 7
B dan D dan F A dan B dan D A dan B dan D dan C dan F
M L R
12. Selanjutnya ulangi lagi langkah 1, sehingga diperoleh kumpulan anteseden dari tabel 3 sebagai berikut: Anteseden rule B dan D dan F A dan B dan D A dan B dan D dan C dan F
13. Kurangi dengan fakta D dan fakta B, sehingga diperoleh: Anteseden rule F A A dan C dan F
14. Lakukan tabulasi dan perangkingan sehingga diperoleh : Fakta
Frekuensi
F A C
2 2 1
15. Diperoleh fakta F sebagai rangking teratas (rapat juga dipilih A sebagai rangking teratas, dan langkah-langkah segera berakhir, akan tetapi hendak diperlihatkan bahwa yang manapun dipilih untuk ditanyakan antara A dan F, metode dapat menghasilkan pilihan rule yang sama). selanjutnya tanyakan fakta F kepada pengguna. Tetapi karena pada assumsi awal
Id rule
Anteseden
Konsekuen
6
A dan B dan D
L
17. Selanjutnya ulangi lagi langkah 1, kumpulan semua anteseden dikurangi dengan fakta B, D dan F yang telah ditanyakan sebelumnya. 18. Diperoleh fakta A sendirian. Sehingga tabulasi dan perangkingan hanya menghasilkan A sendirian sebagai pilihan satu-satunya. 19. Tanyakan fakta A kepada pengguna. Tetapi dari assumsi skenari sebelumnya, A adalah valid sehingga kembali ke sistem dengan jawaban “Ya”. 20. Lakukan seleksi rule dengan menghapus seluruh rule yang tidak memuat A, maka hanya diperoleh saja dari tabel 4 yaitu rule nomor 6 itu sendiri. 21. Karena hanya tersisa 1 buah rule dimana tak ada lagi anteseden yang bisa dipungut karena jika dikurangi dengam fakta A, B, D dan F, tak diperoleh lagi fakta-fakta yang dapat dirangking, maka sistem memutuskan untuk memilih rule nomor 6 sebagai yang pertama kali akan dipicu oleh sistem. 22. Langkah-langkah selesai dengan terpilihnya rule nomor 6. Demonstrasi ini membuktikan bahwa metode tabulasi dapat memilih rule dengan tepat sebagaimana diperkirakan pada awal skenario, yaitu bahwa jika kombinasi fakta A dan B dan D benar maka berdasarkan metode tabulasi, sistem akan memilih rule nomor 6. Demonstrasi ini juga menunjukkan bahwa sistem tidak menanyakan seluruh fakta yang mungkin kepada pengguna, dia hanya menanyakan 4 fakta kepada pengguna, yaitu fakta D, fakta B, fakta F dan
11 Aslan Alwi(1), Munirah(2) Seminar Nasional Telekomunikasi dan Informatika 2016
Seminar Nasional Telekomunikasi dan Informatika (SELISIK 2016) Bandung, 28 Mei 2016 fakta A. Andaikan pada langkah 15 eksekusi metode sebelumnya dipilih fakta A sebagai rangking teratas, maka sistem hanya akan bertanya sebanyak 3 kali kepada pengguna. Yaitu menanyakan fakta D, fakta B dan fakta A. Dengan cara yang sama, untuk assumsi bahwa kombinasi fakta A dan C adalah benar, tidak ada yang lain, maka dapat dibuktikan bahwa sistem akan menghasilkan pernyataan bahwa “Tidak ada rule yang sesuai” sebagiamana diduga seharusnya pada awal skenario.
V. KESIMPULAN DAN SARAN
ISSN : 2503-2844
Retrieved https://www.cs.ru.nl/~peterl/proe.pdf
from
McDermott and Charles Lanny. (1976). Production system conflict resolution strategies. Retrieved from http://repository.cmu.edu/cgi/viewcontent.cgi?a rticle=3143&context=compsci Pakiarajah and Crowther and Hartnett. (2000). Conflict Resolution Techniques for Expert Systems Used to Classify Remotely Sensed Satellite Images. Retrieved May 13, 2016, from http://www.geocomputation.org/2000/GC025/ Gc025.htm
Metode tabulasi frekuensi kemunculan proposisi atomik atau fakta atau gejala pada anteseden rule cukup untuk digunakan memilih rule yang mana pertama kali akan dipicu oleh sistem pakar. Pada lingkup yang lebih luas, mungkin ada lebih dari satu rule yang dapat dipicu secara bersamaan, dikarenakan metode menghasilkan lebih dari satu rule yang dapat dipicu. Pada kasus ini semua konsekuen dari beberapa rule digabung dalam rangkaian kata “ATAU” sebagai hasil dari eksekusi rule. Algoritma ini masih mengassumsikan bahwa anteseden tertulis dalam bentuk normal “DAN” serta bagian anteseden masih dalam bentuk “DAN” yang lebih sederhana yaitu seluruh fakta dirangkai dengan perangkai “DAN” semata, tanpa ada perangkai “ATAU” di dalamnya. Pada pengembangan yang lebih lanjut dari penelitian ini, sedang dikembangkan untuk mencakup seluruh kombinasi perangkai yang mungkin, baik pada bagian anteseden atau pada bagian konsekuen. Keterbatasan lain yaitu bahwa metode ini masih terbatas pada satu langkah penalaran forwardchaining, walaupun sudah cukup untuk jenis sistem pakar yang himpunan rule nya adalah berbentuk JIKA gejala-gejala MAKA penyakit, akan tetapi belumlah memadai untuk penalaran logika dalam beberapa langkah seperti untuk pembuktian teorema-teorema matematika dengan menggunakan sistem pakar. .
REFERENSI Lucas, P. J. F., & Gaag, L. C. Van Der. (1991). Principles of Expert Systems. Addison-Wesley.
12 Aslan Alwi(1), Munirah(2) Seminar Nasional Telekomunikasi dan Informatika 2016