Lecture 7 Backward Chaining Erick Pranata © Sekolah Tinggi Teknik Surabaya 1
» Menentukan konklusi berdasarkan fakta yang ada » Perolehan fakta: ˃Dengan “perhitungan” ˃Menanyakan ke user 2 © Sekolah Tinggi Teknik Surabaya
» Semisal terdapat beberapa rule yang berkaitan dengan hewan peliharaan sebagai berikut: ˃If aksi = berkicau and makanan = kacang Then jenis = kenari ˃If aksi = ngorék and makanan = lalat Then jenis = kodok ˃If jenis = kenari Then warna = kuning ˃If jenis = kodok Then warna = hijau » Tentukan warna jika aksi = ngorék dan makanan = lalat! Sumber: dengan perubahanhttp://en.wikipedia.org/wiki/Backward_chaining 3 © Sekolah Tinggi Teknik Surabaya
4 warnajenismakananaksi
5 © Sekolah Tinggi Teknik Surabaya warnajenis lalat makanan ngorek aksi
6 © Sekolah Tinggi Teknik Surabaya hijau warna kodok jenis lalat makanan ngorek aksi
» Backward chaining berusaha mengisi working memory » Dilakukan dengan menginferensi rule yang ada. 7 © Sekolah Tinggi Teknik Surabaya
» Alur penelusuran konklusi 1.Working Memory 2.Rule 3.Interface 8 © Sekolah Tinggi Teknik Surabaya
9
10 © Sekolah Tinggi Teknik Surabaya
RULE 10 IF temperature = normal and other_symptoms = yes THEN problem = serious; RULE 11 IF temperature = normal and other_symptoms = no THEN problem = non_serious; RULE 12 IF temperature = abnormal THEN problem = serious; RULE 13 IF temperature = not_known THEN problem = serious; 11 © Sekolah Tinggi Teknik Surabaya
» Find problem! 1.Jika temperatur = normal dan other_symptoms = no 2.Jika temperatur = abnormal dan other_symptoms = yes 12 © Sekolah Tinggi Teknik Surabaya
» Find support! ˃member = yes ˃valid_id = yes ˃reason = follow_up_case ˃temperature = normal ˃other_symptoms = yes 13 © Sekolah Tinggi Teknik Surabaya
14
» Menyatakan tingkat keyakinan konklusi » Input dari user pun dapat memiliki CNF 15 © Sekolah Tinggi Teknik Surabaya
CNF of premise * CNF of rule / 100 IF diagnosis = measles THEN treatment = penicillin CNF 90 Jika CNF untuk diagnosis = measles adalah 70, maka CNF konklusi adalah 70*90/100 = © Sekolah Tinggi Teknik Surabaya
» Premis AND ˃min(C1,C2) » Premis OR ˃C1 + C2 - (C1 * C2)/100 if temperature = very_high with confidence 90 and spots = yes with confidence 75 => 75 if spots = yes with confidence 75 or rash = yes with confidence 80 => (75*80)/100 = © Sekolah Tinggi Teknik Surabaya
IF sore_throat = yes AND temperature = high OR temperature = very_high THEN diagnosis = flu CNF 90; sore_throat = yes CNF 70 temperature = high CNF 80 temperature = very_high CNF © Sekolah Tinggi Teknik Surabaya
» © Sekolah Tinggi Teknik Surabaya
» Dibawah Thruthtres, sebuah kondisi akan dianggap FALSE. 20 © Sekolah Tinggi Teknik Surabaya
» Bagaimana kalau CNF tidak berupa bilangan bulat. 21 © Sekolah Tinggi Teknik Surabaya