Aturan
(Rule-based Expert
Systems)
Informatika 2021
Pengetahuan
2
Pengetahun (knowledge) ?
Adalah teori atau praktek pemahaman suatu subyek atau domain.
Kumpulan mengenai apa yang diketahui.
Orang yang berada diposisi tersebut -> PAKAR.
Misal: dokter, teknisi komputer, petani, dsb.
Daerah pada domain tersebut terbatas, mis: pakar (dokter)
penyakit kulit hanya memahami secara penuh pada domain
penyakit kulit (tidak untuk penyakit lain), petani udang hanya
mengetahui penyakit udang (tidak untuk ikan lain).
Secara umum, pakar adalah orang yang terampil dalam
melakukan sesuatu (pemikiran dan tindakan) yang tidak
dapat dilakukan orang lain.
Aturan dalam pengetahuan
3
Misal, domain masalah adalah “menyeberang Umumnya, sebuah aturan dapat mempunyai
jalan raya” gabungan beberapa antecedent dengan kata kunci
Aturan: AND (konjungsi), OR (disjungsi), atau kombinasi
IF the ‘traffic light’ is green keduanya.
THEN the action is go IF <antecedent 1>
IF the ‘traffic light’ is red
AND <antecedent 2>
THEN the action is stop
Pernyataan tersebut merepresentasikan bentuk .
IF-THEN yang disebut “aturan produksi” .
atau “aturan” saja. .
IF-THEN umum digunakan dalam representasi AND <antecedent n>
pengetahuan yang berhubungan dengan fakta THEN <consequent>
atau informasi dalam bagian IF untuk beberapa
IF <antecedent 1>
aksi dalam bagian THEN. Aturan memberikan
deskripsi bagaimana menyelesaikan masalah. OR <antecedent 2>
Aturan terdiri dari dua bagian: bagian IF, disebut .
antecedent (premise atau condition) atau fakta , .
dan bagian THEN yang disebut consequent .
(conclusion atau action) atau kesimpulan.
OR <antecedent n>
Sinktaks dasar:
THEN <consequent>
IF <antecedent>
THEN <consequent>
Aturan dalam pengetahuan (2)
4
Fakta aturan disandingkan dengan dua bagian: obyek (linguistic object) dan
nilainya.
Mis. Obyek linguistik seperti “traffic light” bisa mempunyai nilai “red” atau “green”
Obyek dan nilainya dihubungkan dengan oprator, spt: is, are, is not, are not
untuk memberikan nilai simbolik pada obyek linguistik.
Tetapi sistem pakar biasanya menggunakan operator matematika untuk
mendefinisikan obyek sebagai numerik dan memberikan nilai numerik padanya.
Mis.:
IF ‘age of the customer’ < 18
AND ‘cash withdrawal’ > 1000
THEN ‘signature of the parent’ is required
Kesimpulan (consequent) –sama dengan fakta- mengombinasikan obyek dan nilai
yang dihubungkan oleh operator.
Mis. : Nilai traffic ligh adalah green, aturan pertama nilai obyek linguistik “action” dengan “go”
Mis.:
IF ‘taxable income’ > 16283
THEN ‘Medicare levy’ = ‘taxable income’ * 1.5 / 100
Aturan dalam pengetahuan (2)
5
SP dibangun untuk bekerja pada level pakar manusia dalam domain yang sempit
dan khusus.
Karakteristik paling penting dalam SP adalah kualitas kinerja yang tinggi.
Tidak peduli seberapa cepat sistem menyelesaikan masalah, user tidak akan puas jika hasilnya
salah.
Disisi lain, kecepatan mencapai solusi juga sangat penting.
Meskipun keputusan/diagnosis sangat akurat mungkin tidak berguna bagi user jika terlalu lama
diterapkan.
Misal, dalam kondisi darurat ketika pasien bisa meninggal atau reaktor nuklir mau meledak, pakar
akan memotong teknik penalarannya untuk mendapatkan solusi terdekat.
Fitur unik SP adalah kemampuan menjelaskan (explanation capability).
Membuat sistem pakar dapat meninjau penalarannya dan menjelaskan keputusan.
Penjelasan dalan SP dalam skop pelacakan atran yang ditembakkan selama sesi problem-solving.
Ada 2 teknik inferensi: forward chaining dan backward chaining (Waterman and
Hayes-Roth, 1978).
Forward chaining adalah penalaran yang dikendalikan oleh data (data-driven
reasoning).
Penalaran dimulai dari data yang diketahui dan memproses maju pada data.
Setiap kali hanya aturan paling atas yang akan dieksekusi.
Ketika sebuah aturan ditembak, aturan akan menambahkan fakta baru dalam
database.
Sembarang aturan hanya dieksekusi satu kali.
Siklus penembakan pencocokan (match-fire) berhenti ketika tidak ada lagi aturan
yang dapat ditembak.
Forward chaining adalah teknik untuk pengumpulan informasi dan kemudian
menalarnya.
Beberapa aturan dapat dieksekusi meskipun aturan tersebut tidak memunculkan
tujuan/kesimpulan.
Forward Chaining
16
Siklus 1
Rule 3, fakta X
muncul.
Rule 4, fakta L muncul
Siklus 2
Rule 2, fakta Y muncul
Siklus 3
Rule 1, kesimpulan Z
muncul
Backward Chaining
17
Pass 4
Mesin inferensi menemukan fakta A
dalam database fakta, maka Rule 3
tertembak.
Fakta baru X tersimpulkan (muncul dalam
database fakta).
Pass 5
Mesin inferensi kembali ke sub-goal Y,
mencoba kembali mengeksekusi aturan 2,
fakta X, D, dan E ada dalam database,
maka aturan 2 tertembak.
Fakta baru Y tersimpulkan (muncul dalam
database fakta).
Pass 6
Mesin inferensi kembali ke Rule 1,
mencoba memunculkan kesimpulan Z,
fakta Y dan D dan D ada dalam database,
maka tujuan awal Z akhirnya tercapai.
Forward Chaining atau Backward Chaining ?
20
In what way is a trainee expected to act or In what way is a trainee expected to act or
respond on the job? advisinging respond on the job? drawing
Is feedback on the trainee’s progress required Is feedback on the trainee’s progress required
during training? required (yes) during training? required (yes)
Kasus 2 Kasus 4
What sort of environment is a trainee dealing What sort of environment is a trainee dealing
with on the job? ‘computer programs’ with on the job? diagrams
In what way is a trainee expected to act or In what way is a trainee expected to act or
respond on the job? reasoning respond on the job? building
Is feedback on the trainee’s progress required Is feedback on the trainee’s progress required
during training? required (yes) during training? not required (no)
Menalar dengan Backward Chaining
25
Pass 4
Mencoba Rule 6, Perlu mencari fakta ‘job’
Rule 6, ditumpuk, fakta ‘job’ dicari sebagai ‘building’
Menanyai job
repairing ‘job’ diinstansiasi oleh user dengan memasukkan ‘repairing’
Mencoba Rule 6, ‘stimulus_response’ diinstansiasi oleh Rule 6 menjadi
‘hands-on’
Pass 5
Mencoba Rule 9, Perlu mencari fakta ‘feedback’
Rule 9 ditumpuk, fakta ‘feedback’ dicari sebagai ‘required’
Menanyai feedback
required ‘feedback’ diinstansiasi oleh user dengan memasukkan
‘required’
Mencoba Rule 9, ‘medium’ diinstansiasi oleh user Rule 9 menjadi ‘workshop’
BACKWARD CHAINING: Dimulai
medium is workshop dari kesimpulan (hipotesis),
kemudian mencari fakta
Pohon diagram penalaran
27
Menalar dengan Backward Chaining (3)
28
Bagaimana jika hipotesisnya
Kasus Lain Fakta
adalah: medium is workshop
tidak lengkap
? Tetapi :
environment is numbers Bagaimana jika
jobs is investigating hipotesisnya adalah:
feedback is required (yes) medium is
Bagaimana jika hipotesisnya
workshop ? Tetapi :
adalah: medium is workshop
? Tetapi : environment is machines
environment is photograhs jobs is repairing
jobs is writing
feedback is not required (no)