IF KNOWLEDGE BASED SYSTEM PERTEMUAN 04
Sistem Berbasis Pengetahuan
Program Studi Sistem Komputer
Fakultas Ilmu Komputer
Universitas Putra Indonesia YPTK Padang
Certainty Factor (CF)
Certainty Factor (CF) diusulkan oleh Shortliffe dan
Buchanan pada 1975 untuk mengakomodasi
ketidakpastian pemikiran pakar
Misal :
Seorang dokter sering menganalisis dengan
ungkapan, ‘mungkin’, ‘kemungkinan besar’,
‘hampir pasti’, dsb.
Certainty Factor Gabungan
Rule dengan evidence E tunggal dan hipotesa H tunggal
IF E THEN H (CF rule)
CF(H,E) = CF(E) x CF(Rule)
Note :
Nilai CF Rule ditentukan oleh pakar, sedangkan nilai CF(E)
ditentukan oleh user saat konsultasi dengan SP
Contoh :
IF demam (CF = 0,4) THEN influenza (CF = 0,6)
CF(Influenza, Demam) = 0,4 x 0,6 = 0,24
Artinya, jika Demam, tingkat kepastian Influenza 0,24
Certainty Factor Gabungan
Rule dengan evidence E ganda dan hipotesa H tunggal
IF E1 AND E2 .... AND En THEN H (CF rule)
CF(H,E) = min[CF(E1), CF(E2),..., CF(En)] x CF(Rule)
IF E1 OR E2 .... OR En THEN H (CF rule)
CF(H,E) = max[CF(E1), CF(E2),..., CF(En)] x CF(Rule)
Certainty Factor Gabungan
Contoh :
IF demam (CF=0,4) AND batuk (CF=0,2) AND muntah (CF=0,7)
THEN penyakit = TBC (CF=0,3)
CF(TBC, demam batuk muntah) = min[0,4; 0,2; 0,7] x 0,3
= 0,2 x 0,3 = 0,06
Artinya, jika gejala demam dan batuk dan muntah, maka
tingkat kepastian terkena penyakit TBC adalah 0,06
Certainty Factor Gabungan
Contoh :
IF demam (CF=0,4) OR batuk (CF=0,2) OR muntah (CF=0,7)
THEN penyakit = TBC (CF=0,3)
CF(TBC, demam batuk muntah) = max[0,4; 0,2; 0,7] x 0,3
= 0,7 x 0,3 = 0,21
Artinya, jika gejala demam atau batuk atau muntah, maka
tingkat kepastian terkena penyakit TBC adalah 0,21
Certainty Factor Gabungan
Sistem Pakar Mendiagnosa Penyakit
yang diderita Anak-Anak
R1: IF demam AND lesu AND tidak nafsu makan AND mimisan AND sakit
kepala THEN penyakit=DBD (CF = 0,55)
R2: IF demam AND sakit kepala AND tubuh menggigil AND badan lemah
THEN penyakit=Demam Tifoit (CF = 0,64)
R3: IF demam AND lesu AND sakit kepala AND tubuh menggigil AND tidak
nafsu makan AND nyeri otot THEN penyakit=Malaria (CF = 0,47)
R4: IF demam AND sakit kepala AND denyut jantung lemah AND tidak
nafsu makan THEN penyakit=Demam Tifoit (CF = 0,80)
R5: IF demam AND lesu AND pendarahan pada kulit AND sakit kepala
THEN penyakit=DBD (CF = 0,70)
R6: IF demam AND lesu AND sakit kepala AND nyeri perut AND nyeri
punggung THEN penyakit=Malaria (CF = 0,60)
Sistem Pakar Mendiagnosa Penyakit
yang diderita Anak-Anak
Dialog User dengan Sistem Pakar
SP : "Apakah anak Anda mengalami demam (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,8"
SP : "Apakah anak Anda mengalami lesu (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,4"
SP : "Apakah anak anda tidak nafsu makan (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,6"
SP : "Apakah anak Anda mimisan (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,2"
SP : "Apakah anak anda sakit kepala (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,7"
SP : "Apakah tubuh anak anda menggigil (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,5"
Sistem Pakar Mendiagnosa Penyakit
yang diderita Anak-Anak
SP : "Apakah badan anak anda lemah (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,6"
SP : "Apakah anak anda merasakan nyeri otot (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,3"
SP : "Apakah denyut jantung anak anda lemah (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,9"
SP : "Apakah anak anda mengalami pendarahan pada kulit (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,2"
SP : "Apakah anak anda meradakan nyeri perut (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,3"
SP : "Apakah anak anda merasakan nyeri punggung (nilai kepastian [0 - 1])"?
User : "Tidak"
Tentukan penyakit apa yang dialami oleh Anak dari User?
Sistem Pakar Mendiagnosa Penyakit
yang diderita Anak-Anak
R1: IF demam (CF = 0,8) AND lesu (CF = 0,4) AND tidak nafsu makan (CF = 0,6) AND
mimisan (CF = 0,2) AND sakit kepala (CF = 0,7) THEN penyakit=DBD (CF = 0,55)
R2: IF demam (CF = 0,8) AND sakit kepala (CF = 0,7) AND tubuh menggigil (CF = 0,5)
AND badan lemah (CF = 0,6) THEN penyakit=Demam Tifoit (CF = 0,64)
R3: IF demam (CF = 0,8) AND lesu (CF = 0,4) AND sakit kepala (CF = 0,7) AND
tubuh menggigil (CF = 0,5) AND tidak nafsu makan (CF = 0,6) AND nyeri otot (CF
= 0,3) THEN penyakit=Malaria (CF = 0,47)
R4: IF demam (CF = 0,8) AND sakit kepala (CF = 0,7) AND denyut jantung lemah (CF
= 0,6) AND tidak nafsu makan (CF = 0,6) THEN penyakit=Demam Tifoit (CF =
0,80)
R5: IF demam (CF = 0,8) AND lesu (CF = 0,4) AND pendarahan pada kulit (CF = 0,2)
AND sakit kepala (CF = 0,7) THEN penyakit=DBD (CF = 0,70)
R6: IF demam (CF = 0,8) AND lesu (CF = 0,4) AND sakit kepala (CF = 0,7) AND
nyeri perut (CF = 0,3) AND nyeri punggung THEN penyakit=Malaria (CF = 0,60)
Sistem Pakar Mendiagnosa Penyakit
yang diderita Anak-Anak
Fakta Baru :
demam
lesu
tidak nafsu makan
mimisan
sakit kepala
tubuh menggigil
badan lemah
nyeri otot
denyut jantung lemah
pendarahan pada kulit
nyeri perut
Evidence
Evidence
Evidence
Evidence
Evidence
Evidence
Evidence
Evidence
Evidence
Evidence
Evidence
CF = 0,8
CF = 0,4
CF = 0,6
CF = 0,2
CF = 0,7
CF = 0,5
CF = 0,6
CF = 0,3
CF = 0,9
CF = 0,2
CF = 0,3
CFRule1
CFRule2
CFRule3
CFRule4
CFRule5
CFRule6
=
=
=
=
=
=
0,55
0,64
0,47
0,80
0,70
0,60
Sistem Pakar Mendiagnosa Penyakit
yang diderita Anak-Anak
R1: IF demam (CF = 0,8) AND lesu (CF = 0,4) AND tidak nafsu makan (CF = 0,6)
AND mimisan (CF = 0,2) AND sakit kepala (CF = 0,7) THEN penyakit=DBD
(CF = 0,55)
CF1(DBD, demam ∩ lesu ∩ tidak nafsu makan ∩ mimisan ∩ sakit kepala )
=
min[0,8 ; 0,4 ; 0,6 ; 0,2 ; 0,7] * 0,55
=
0,11
Fakta Baru :
DBD
Hypothesis
CF1 = 0,11
R2: IF demam (CF = 0,8) AND sakit kepala (CF = 0,7) AND tubuh menggigil (CF =
0,5) AND badan lemah (CF = 0,6) THEN penyakit=Demam Tifoit (CF = 0,64)
CF2(Demam Tifoid, demam ∩ sakit kepala ∩ tubuh menggigil ∩ badan lemah)
=
min[0,8 ; 0,7 ; 0,5 ; 0,6] * 0,64
=
0,32
Fakta Baru :
Demam Tifoid
Hypothesis
CF2=
0,32
Sistem Pakar Mendiagnosa Penyakit
yang diderita Anak-Anak
R3: IF demam (CF = 0,8) AND lesu (CF = 0,4) AND sakit kepala (CF = 0,7) AND
tubuh menggigil (CF = 0,5) AND tidak nafsu makan (CF = 0,6) AND nyeri otot
(CF = 0,3) THEN penyakit=Malaria (CF = 0,47)
CF3(Malaria, demam ∩ lesu ∩ sakit kepala ∩ tubuh menggigil ∩ tidak nafsu makan ∩
nyeri otot)
=
min[0,8 ; 0,4 ; 0,7 ; 0,5 ; 0,6 ; 0,3] * 0,47
=
0,141
Fakta Baru :
Malaria
Hypothesis
CF3 = 0,141
R4: IF demam (CF = 0,8) AND sakit kepala (CF = 0,7) AND denyut jantung lemah
(CF = 0,9) AND tidak nafsu makan (CF = 0,6) THEN penyakit=Demam Tifoit
(CF = 0,80)
CF4(Demam Tifoid, demam ∩ sakit kepala ∩ denyut jantung lemah ∩ tidak nafsu
makan)
=
min[0,8 ; 0,7 ; 0,9 ; 0,6] * 0,80
=
0,48
Fakta Baru :
Demam Tifoid
Hypothesis
CF4 = 0,48
Sistem Pakar Mendiagnosa Penyakit
yang diderita Anak-Anak
R5: IF demam (CF = 0,8) AND lesu (CF = 0,4) AND pendarahan pada kulit (CF =
0,2) AND sakit kepala (CF = 0,7) THEN penyakit=DBD (CF = 0,70)
CF5(DBD, demam Ç lesu Ç pendarahan pada kulit Ç sakit kepala)
=
min[0,8 ; 0,4 ; 0,2 ; 0,7] * 0,70
=
0,14
Fakta Baru :
DBD
Hypothesis
CF5 = 0,14
R6: IF demam (CF = 0,8) AND lesu (CF = 0,4) AND sakit kepala (CF = 0,7) AND
nyeri perut (CF = 0,3) AND nyeri punggung THEN penyakit=Malaria (CF =
0,60)
R6 Tidak dieksekusi karena ada Evidence yang TIDAK FAKTA
Sistem Pakar Mendiagnosa Penyakit
yang diderita Anak-Anak
Fakta Baru :
DBD
Demam Tifoid
Malaria
Demam Tifoid
DBD
Hypothesis
Hypothesis
Hypothesis
Hypothesis
Hypothesis
CF1
CF2
CF3
CF4
CF5
=
=
=
=
=
0,110
0,320
0,141
0,480
0,140
Karena R1 dan R5 Hipotesanya sama yaitu DBD, maka CF diGABUNGkan :
CF = CF1 + CF5 x (1 - CF1)
= 0,235
Karena R2 dan R4 Hipotesanya sama yaitu Demam Tifoid, maka CF diGABUNGkan :
CF = CF2 + CF4 x (1 - CF2)
= 0,646
Sistem Pakar Mendiagnosa Penyakit
yang diderita Anak-Anak
Fakta Baru :
DBD
Demam Tifoid
Malaria
Hypothesis
Hypothesis
Hypothesis
CF =
CF =
CF3 =
0,235
0,646
0,141
Terdapat 3 Hipotesis dari Fakta Baru yang diperoleh, yaitu DBD, Demam Tifoid,
Malaria
Kesimpulan :
Penyakit yang di derita oleh anak User adalah : Demam Tifoid
dengan Tingkat Kepastian = 0,646 atau 64,6% (Hypothesis Tertinggi)
Program Studi Sistem Komputer
Fakultas Ilmu Komputer
Universitas Putra Indonesia YPTK Padang
Certainty Factor (CF)
Certainty Factor (CF) diusulkan oleh Shortliffe dan
Buchanan pada 1975 untuk mengakomodasi
ketidakpastian pemikiran pakar
Misal :
Seorang dokter sering menganalisis dengan
ungkapan, ‘mungkin’, ‘kemungkinan besar’,
‘hampir pasti’, dsb.
Certainty Factor Gabungan
Rule dengan evidence E tunggal dan hipotesa H tunggal
IF E THEN H (CF rule)
CF(H,E) = CF(E) x CF(Rule)
Note :
Nilai CF Rule ditentukan oleh pakar, sedangkan nilai CF(E)
ditentukan oleh user saat konsultasi dengan SP
Contoh :
IF demam (CF = 0,4) THEN influenza (CF = 0,6)
CF(Influenza, Demam) = 0,4 x 0,6 = 0,24
Artinya, jika Demam, tingkat kepastian Influenza 0,24
Certainty Factor Gabungan
Rule dengan evidence E ganda dan hipotesa H tunggal
IF E1 AND E2 .... AND En THEN H (CF rule)
CF(H,E) = min[CF(E1), CF(E2),..., CF(En)] x CF(Rule)
IF E1 OR E2 .... OR En THEN H (CF rule)
CF(H,E) = max[CF(E1), CF(E2),..., CF(En)] x CF(Rule)
Certainty Factor Gabungan
Contoh :
IF demam (CF=0,4) AND batuk (CF=0,2) AND muntah (CF=0,7)
THEN penyakit = TBC (CF=0,3)
CF(TBC, demam batuk muntah) = min[0,4; 0,2; 0,7] x 0,3
= 0,2 x 0,3 = 0,06
Artinya, jika gejala demam dan batuk dan muntah, maka
tingkat kepastian terkena penyakit TBC adalah 0,06
Certainty Factor Gabungan
Contoh :
IF demam (CF=0,4) OR batuk (CF=0,2) OR muntah (CF=0,7)
THEN penyakit = TBC (CF=0,3)
CF(TBC, demam batuk muntah) = max[0,4; 0,2; 0,7] x 0,3
= 0,7 x 0,3 = 0,21
Artinya, jika gejala demam atau batuk atau muntah, maka
tingkat kepastian terkena penyakit TBC adalah 0,21
Certainty Factor Gabungan
Sistem Pakar Mendiagnosa Penyakit
yang diderita Anak-Anak
R1: IF demam AND lesu AND tidak nafsu makan AND mimisan AND sakit
kepala THEN penyakit=DBD (CF = 0,55)
R2: IF demam AND sakit kepala AND tubuh menggigil AND badan lemah
THEN penyakit=Demam Tifoit (CF = 0,64)
R3: IF demam AND lesu AND sakit kepala AND tubuh menggigil AND tidak
nafsu makan AND nyeri otot THEN penyakit=Malaria (CF = 0,47)
R4: IF demam AND sakit kepala AND denyut jantung lemah AND tidak
nafsu makan THEN penyakit=Demam Tifoit (CF = 0,80)
R5: IF demam AND lesu AND pendarahan pada kulit AND sakit kepala
THEN penyakit=DBD (CF = 0,70)
R6: IF demam AND lesu AND sakit kepala AND nyeri perut AND nyeri
punggung THEN penyakit=Malaria (CF = 0,60)
Sistem Pakar Mendiagnosa Penyakit
yang diderita Anak-Anak
Dialog User dengan Sistem Pakar
SP : "Apakah anak Anda mengalami demam (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,8"
SP : "Apakah anak Anda mengalami lesu (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,4"
SP : "Apakah anak anda tidak nafsu makan (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,6"
SP : "Apakah anak Anda mimisan (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,2"
SP : "Apakah anak anda sakit kepala (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,7"
SP : "Apakah tubuh anak anda menggigil (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,5"
Sistem Pakar Mendiagnosa Penyakit
yang diderita Anak-Anak
SP : "Apakah badan anak anda lemah (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,6"
SP : "Apakah anak anda merasakan nyeri otot (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,3"
SP : "Apakah denyut jantung anak anda lemah (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,9"
SP : "Apakah anak anda mengalami pendarahan pada kulit (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,2"
SP : "Apakah anak anda meradakan nyeri perut (nilai kepastian [0 - 1])"?
User : "Ya, CF = 0,3"
SP : "Apakah anak anda merasakan nyeri punggung (nilai kepastian [0 - 1])"?
User : "Tidak"
Tentukan penyakit apa yang dialami oleh Anak dari User?
Sistem Pakar Mendiagnosa Penyakit
yang diderita Anak-Anak
R1: IF demam (CF = 0,8) AND lesu (CF = 0,4) AND tidak nafsu makan (CF = 0,6) AND
mimisan (CF = 0,2) AND sakit kepala (CF = 0,7) THEN penyakit=DBD (CF = 0,55)
R2: IF demam (CF = 0,8) AND sakit kepala (CF = 0,7) AND tubuh menggigil (CF = 0,5)
AND badan lemah (CF = 0,6) THEN penyakit=Demam Tifoit (CF = 0,64)
R3: IF demam (CF = 0,8) AND lesu (CF = 0,4) AND sakit kepala (CF = 0,7) AND
tubuh menggigil (CF = 0,5) AND tidak nafsu makan (CF = 0,6) AND nyeri otot (CF
= 0,3) THEN penyakit=Malaria (CF = 0,47)
R4: IF demam (CF = 0,8) AND sakit kepala (CF = 0,7) AND denyut jantung lemah (CF
= 0,6) AND tidak nafsu makan (CF = 0,6) THEN penyakit=Demam Tifoit (CF =
0,80)
R5: IF demam (CF = 0,8) AND lesu (CF = 0,4) AND pendarahan pada kulit (CF = 0,2)
AND sakit kepala (CF = 0,7) THEN penyakit=DBD (CF = 0,70)
R6: IF demam (CF = 0,8) AND lesu (CF = 0,4) AND sakit kepala (CF = 0,7) AND
nyeri perut (CF = 0,3) AND nyeri punggung THEN penyakit=Malaria (CF = 0,60)
Sistem Pakar Mendiagnosa Penyakit
yang diderita Anak-Anak
Fakta Baru :
demam
lesu
tidak nafsu makan
mimisan
sakit kepala
tubuh menggigil
badan lemah
nyeri otot
denyut jantung lemah
pendarahan pada kulit
nyeri perut
Evidence
Evidence
Evidence
Evidence
Evidence
Evidence
Evidence
Evidence
Evidence
Evidence
Evidence
CF = 0,8
CF = 0,4
CF = 0,6
CF = 0,2
CF = 0,7
CF = 0,5
CF = 0,6
CF = 0,3
CF = 0,9
CF = 0,2
CF = 0,3
CFRule1
CFRule2
CFRule3
CFRule4
CFRule5
CFRule6
=
=
=
=
=
=
0,55
0,64
0,47
0,80
0,70
0,60
Sistem Pakar Mendiagnosa Penyakit
yang diderita Anak-Anak
R1: IF demam (CF = 0,8) AND lesu (CF = 0,4) AND tidak nafsu makan (CF = 0,6)
AND mimisan (CF = 0,2) AND sakit kepala (CF = 0,7) THEN penyakit=DBD
(CF = 0,55)
CF1(DBD, demam ∩ lesu ∩ tidak nafsu makan ∩ mimisan ∩ sakit kepala )
=
min[0,8 ; 0,4 ; 0,6 ; 0,2 ; 0,7] * 0,55
=
0,11
Fakta Baru :
DBD
Hypothesis
CF1 = 0,11
R2: IF demam (CF = 0,8) AND sakit kepala (CF = 0,7) AND tubuh menggigil (CF =
0,5) AND badan lemah (CF = 0,6) THEN penyakit=Demam Tifoit (CF = 0,64)
CF2(Demam Tifoid, demam ∩ sakit kepala ∩ tubuh menggigil ∩ badan lemah)
=
min[0,8 ; 0,7 ; 0,5 ; 0,6] * 0,64
=
0,32
Fakta Baru :
Demam Tifoid
Hypothesis
CF2=
0,32
Sistem Pakar Mendiagnosa Penyakit
yang diderita Anak-Anak
R3: IF demam (CF = 0,8) AND lesu (CF = 0,4) AND sakit kepala (CF = 0,7) AND
tubuh menggigil (CF = 0,5) AND tidak nafsu makan (CF = 0,6) AND nyeri otot
(CF = 0,3) THEN penyakit=Malaria (CF = 0,47)
CF3(Malaria, demam ∩ lesu ∩ sakit kepala ∩ tubuh menggigil ∩ tidak nafsu makan ∩
nyeri otot)
=
min[0,8 ; 0,4 ; 0,7 ; 0,5 ; 0,6 ; 0,3] * 0,47
=
0,141
Fakta Baru :
Malaria
Hypothesis
CF3 = 0,141
R4: IF demam (CF = 0,8) AND sakit kepala (CF = 0,7) AND denyut jantung lemah
(CF = 0,9) AND tidak nafsu makan (CF = 0,6) THEN penyakit=Demam Tifoit
(CF = 0,80)
CF4(Demam Tifoid, demam ∩ sakit kepala ∩ denyut jantung lemah ∩ tidak nafsu
makan)
=
min[0,8 ; 0,7 ; 0,9 ; 0,6] * 0,80
=
0,48
Fakta Baru :
Demam Tifoid
Hypothesis
CF4 = 0,48
Sistem Pakar Mendiagnosa Penyakit
yang diderita Anak-Anak
R5: IF demam (CF = 0,8) AND lesu (CF = 0,4) AND pendarahan pada kulit (CF =
0,2) AND sakit kepala (CF = 0,7) THEN penyakit=DBD (CF = 0,70)
CF5(DBD, demam Ç lesu Ç pendarahan pada kulit Ç sakit kepala)
=
min[0,8 ; 0,4 ; 0,2 ; 0,7] * 0,70
=
0,14
Fakta Baru :
DBD
Hypothesis
CF5 = 0,14
R6: IF demam (CF = 0,8) AND lesu (CF = 0,4) AND sakit kepala (CF = 0,7) AND
nyeri perut (CF = 0,3) AND nyeri punggung THEN penyakit=Malaria (CF =
0,60)
R6 Tidak dieksekusi karena ada Evidence yang TIDAK FAKTA
Sistem Pakar Mendiagnosa Penyakit
yang diderita Anak-Anak
Fakta Baru :
DBD
Demam Tifoid
Malaria
Demam Tifoid
DBD
Hypothesis
Hypothesis
Hypothesis
Hypothesis
Hypothesis
CF1
CF2
CF3
CF4
CF5
=
=
=
=
=
0,110
0,320
0,141
0,480
0,140
Karena R1 dan R5 Hipotesanya sama yaitu DBD, maka CF diGABUNGkan :
CF = CF1 + CF5 x (1 - CF1)
= 0,235
Karena R2 dan R4 Hipotesanya sama yaitu Demam Tifoid, maka CF diGABUNGkan :
CF = CF2 + CF4 x (1 - CF2)
= 0,646
Sistem Pakar Mendiagnosa Penyakit
yang diderita Anak-Anak
Fakta Baru :
DBD
Demam Tifoid
Malaria
Hypothesis
Hypothesis
Hypothesis
CF =
CF =
CF3 =
0,235
0,646
0,141
Terdapat 3 Hipotesis dari Fakta Baru yang diperoleh, yaitu DBD, Demam Tifoid,
Malaria
Kesimpulan :
Penyakit yang di derita oleh anak User adalah : Demam Tifoid
dengan Tingkat Kepastian = 0,646 atau 64,6% (Hypothesis Tertinggi)