1 / 31

Sistem Pakar Berbasis Aturan (Rule-based Expert Systems)

Sistem Pakar Berbasis Aturan (Rule-based Expert Systems). KECERDASAN BUATAN (Artificial Intelligence) Materi 3. Eko Prasetyo Teknik Informatika Univ. Pembangunan Nasional Veteran Jawa Timur 2011. Pengetahuan. Pengetahun (knowledge) ?

melia
Download Presentation

Sistem Pakar Berbasis Aturan (Rule-based Expert Systems)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SistemPakarBerbasisAturan(Rule-based Expert Systems) KECERDASAN BUATAN(Artificial Intelligence) Materi 3 Eko Prasetyo TeknikInformatika Univ. Pembangunan Nasional Veteran JawaTimur 2011

  2. Pengetahuan • Pengetahun (knowledge) ? • Adalahteoriataupraktekpemahamansuatusubyekatau domain. • Kumpulan mengenaiapa yang diketahui. • Orang yang beradadiposisitersebut -> PAKAR. • Misal: dokter, teknisikomputer, petani, dsb. • Daerah pada domain tersebutterbatas, mis: pakar (dokter) penyakitkulithanyamemahamisecarapenuhpada domain penyakitkulit (tidakuntukpenyakit lain), petaniudanghanyamengetahuipenyakitudang (tidakuntukikan lain). • Secaraumum, pakaradalahorang yang terampildalammelakukansesuatu (pemikirandantindakan) yang tidakdapatdilakukanorang lain.

  3. Aturandalampengetahuan • Misal, domain masalahadalah “menyeberangjalanraya” • Aturan: • IF the ‘traffic light’ is green • THEN the action is go • IF the ‘traffic light’ is red • THEN the action is stop • PernyataantersebutmerepresentasikanbentukIF-THEN yang disebut“aturanproduksi”atau“aturan”saja. • IF-THEN umumdigunakandalamrepresentasipengetahuan yang berhubungandenganfaktaatauinformasidalambagian IF untukbeberapaaksidalambagian THEN. Aturanmemberikandeskripsibagaimanamenyelesaikanmasalah. • Aturanterdiridariduabagian: bagianIF, disebut antecedent (premise atau condition) ataufakta , danbagianTHEN yang disebut consequent (conclusion atau action) ataukesimpulan. • Sinktaksdasar: • IF <antecedent> • THEN <consequent> • Umumnya, sebuahaturandapatmempunyaigabunganbeberapa antecedent dengankatakunciAND (konjungsi), OR (disjungsi), ataukombinasikeduanya. • IF <antecedent 1> • AND <antecedent 2> • . • . • . • AND <antecedent n> • THEN <consequent> • IF <antecedent 1> • OR <antecedent 2> • . • . • . • OR <antecedent n> • THEN <consequent>

  4. Aturandalampengetahuan (2) • Faktaaturandisandingkandenganduabagian: obyek (linguistic object) dannilainya. • Mis. Obyeklinguistikseperti “traffic light” bisamempunyainilai “red” atau “green” • Obyekdannilainyadihubungkandenganoprator, spt: is, are, is not, are notuntukmemberikannilaisimbolikpadaobyeklinguistik. • Tetapisistempakarbiasanyamenggunakan operator matematikauntukmendefinisikanobyeksebagainumerikdanmemberikannilainumerikpadanya. • Mis.: • IF ‘age of the customer’ < 18 • AND ‘cash withdrawal’ > 1000 • THEN ‘signature of the parent’ is required • Kesimpulan (consequent) –samadenganfakta- mengombinasikanobyekdannilai yang dihubungkanoleh operator. • Mis. : Nilai traffic lighadalah green, aturanpertamanilaiobyeklinguistik “action” dengan “go” • Mis.: • IF ‘taxable income’ > 16283 • THEN ‘Medicare levy’ = ‘taxable income’ * 1.5 / 100

  5. Aturandalampengetahuan (2) • Aturandapatmerepresentasikanrelations (hubungan), recommendations (saran), directives (arahan), strategies (strategi)danheuristics (heuristik)[Durkin, 1994]. • Relation • IF the ‘fuel tank’ is empty • THEN the car is dead • Recommendation • IF the season is autumn (musimgugur) • AND the sky is cloudy • AND the forecast is drizzle (gerimis) • THEN the advice is ‘take an umbrella’ • Directive • IF the car is dead • AND the ‘fuel tank’ is empty • THEN the action is ‘refuel the car’ • Strategy • IF the car is dead • THEN the action is ‘check the fuel tank’; • step1 is complete • IF step1 is complete • AND the ‘fuel tank’ is full • THEN the action is ‘check the battery’; • step2 is complete • Heuristic • IF the spill is liquid • AND the ‘spill pH’ < 6 • AND the ‘spill smell’ is vinegar • THEN the ‘spill material’ is ‘acetic acid’

  6. Pemainutamasistempakar SistemPakar, adalahsebuah program komputer yang dapatbekerjapada level pakarmanusiadalamdaerahmasalah yang sempit. Tipe: rule-based, case-based, dsb. Expert System Shell adalahsistempakar yang tidakmengandungpengetahuan (komponen yang lain tetapada). Ada 5 anggotatimpengembangansistempakar: the domain expert, the knowledge engineer, the programmer, the project manager and the end-user.

  7. Domain Expert Domain expert adalahorang yang bisamengetahuidanterampildalammenyelesaikanmasalahpadadaerahatau domain spesifik. Sangatpakardalam domain tersebut, mis: dokter, teknisikomputer, petani, dsb. Kepakarannyaakandi-capture dalamsistempakar. Pakarharusbisamengkomunikasikanpengetahuannya, berpartisipasidalampembangunansistempakar. Pemain yang paling pentingdalampembangunansistempakar. Domain expert

  8. Knowledge Engineer Knowledge engineer adalahorang yang mempunyaikemampuanperancangan, pembangunandanpengujiansistempakar. Bertanggungjawabuntukpemilihanpekerjaan yang tepatbagisistempakar. Mewawancarai domain expert untukmencaribagaimanamasalahtertentudiselesaikan. Selamainteraksiwawancara, memunculkanmetodepenalaranpakardalammenananifaktadanaturandanmemutuskanbagaimanamerepresentasikannyadalamsistempakar. Bertangungjawabdalampengujian, revisi, danintegrasisistempakardalam workplace. Menyelesaikanproyekdariawalhinggaakhir. Knowledge engineer

  9. Programmer, Project Manager, End-user • Programmer, orang yang bertanggungjawabdalammengimplementasikansistempakardalamkoding program. • Harusmemahamibahasapemrograman AI, seperti: LISP, Prolog, OPS5. J • ugabahasapemrogramankonvensional, spt: vb, delphi, java, dsb. • Saatini, sistempakar (dalamskalapenelitian) jugadikembangkandenganbahasa-bahasakonvensional yang ada. • Project Manager, pimpinantimpengembangansistem, bertanggungjawanuntukmenjagaproyektetapdalam track-nya. • Berinteraksidenganpakar, knowledge engineer, programmer dan end-user. • End-user, orang yang menggunakansistempakarketikasistemsudahselesaidikembangkan. • User bisajadiadalahpasienatauperawatdalamsebuahklinikkesehatanmilikdokter. • User bisajadiadalahanaliskimiadalammenentukanstrukturcairanmolekul (Feigenbaum et al., 1971), • Dokteryuniordalam diagnosis penyakitinfeksidarah(Shortliffe, 1976) • Dsb.

  10. Rule-based Expert System Awal 1970, Newell dan Simon mengusulkan model sistempakar, dasardari rule-based expert systems. Didasarkanpadaidemanusiadalammenyelesaikanmasalahdenganmenerapkanpengetahuannya (dinyatakansebagaiaturanproduksi) padamasalah yang diberikandenganinformasimasalahspesifik. Aturanproduksidisimpandalammemorijangkapanjang, sedangkaninformasimasalahspesifikdisimpandalammemorijangkapendek. Ada5 komponenintidalam rule-based expert systems:the knowledge base, the database, the inference engine, the explanation facilities, and the user interface Production system model Basic structure of a rule-based expert system

  11. Strukturlengkap rule-based expert system External interface digunakanuntukbekerjadengan data eksternaldan program ditulisdalambahasapemrogramankonvensionalseperti C, Pascal, dan Basic. Developer Interface termasuk knowledge base editor, debugging aids, danfasilitas input/output. Debugging aids biasanyaterdiridarifasilitas tracing danpemecahanpaket. Tracing memberikandaftarsemuaaturan yang ditembakselama program dieksekusi, danpemecahanpaketmemungkinkanuntukberhentinyasistempakardalammengevaluasisetiapaturan.

  12. KarakteristikSistemPakar • SP dibangununtukbekerjapada level pakarmanusiadalam domain yang sempitdankhusus. • Karakteristik paling pentingdalam SP adalahkualitaskinerja yang tinggi. • Tidakpeduliseberapacepatsistemmenyelesaikanmasalah, user tidakakanpuasjikahasilnyasalah. • Disisi lain, kecepatanmencapaisolusijugasangatpenting. • Meskipunkeputusan/diagnosis sangatakuratmungkintidakbergunabagi user jikaterlalu lama diterapkan. • Misal, dalamkondisidaruratketikapasienbisameninggalataureaktornuklirmaumeledak, pakarakanmemotongteknikpenalarannyauntukmendapatkansolusiterdekat. • Fiturunik SP adalahkemampuanmenjelaskan (explanation capability). • Membuatsistempakardapatmeninjaupenalarannyadanmenjelaskankeputusan. • Penjelasandalan SP dalamskoppelacakanatran yang ditembakkanselamasesi problem-solving. • Bisakahsistempakarmelakukankesalahan (dalampenalaran) ? • Pakar paling pandaipunbisaberbuatsalah, maka SP jugabisasalah. • Tetapikitamasihmempercayaipakar, walaupunkitamengenalibahwakeputusannyakadang-kadangsalah.

  13. TeknikInferensi • Dalam rule-based expert system, pengetahuan domain direpresentasikanolehsejumlahaturanproduksi IF-THEN, sedangkan data direpresentasikanolehsejumlahfaktamengenaisituasisaatitu. • Mesininferensimembandingkansetiapaturan yang tersimpandalam basis pengetahuandenganfakta yang beradadalam database. • Ketikabagian IF (kondisi) aturancocokdenganfakta, aturanakanditembakdanbagian THEN (aksi) diekskusi. • Aturan yang ditembakakanmengubahsejumlahfaktadenganmenambahkanfaktabaru. • Pencocokanbagianaturan IF padafaktamenghasilkanrantaiinferensi (inference chain). • Rantaiinferensimenunjukkanbagaimana SP menerapkanaturanuntukmencapaikesimpulan. Contoh:Fakta: A, B, C, D and E Lakukanpenalatanuntukmencapaikesimpulan

  14. TeknikInferensi: Forward Chaining Ada 2 teknikinferensi: forward chaining dan backward chaining (Waterman and Hayes-Roth, 1978). Forward chaining adalahpenalaran yang dikendalikanoleh data (data-driven reasoning). Penalarandimulaidari data yang diketahuidanmemprosesmajupada data. Setiap kali hanyaaturan paling atas yang akandieksekusi. Ketikasebuahaturanditembak, aturanakanmenambahkanfaktabarudalam database. Sembarangaturanhanyadieksekusisatu kali. Sikluspenembakanpencocokan (match-fire) berhentiketikatidakadalagiaturan yang dapatditembak. Forward chaining adalahteknikuntukpengumpulaninformasidankemudianmenalarnya. Beberapaaturandapatdieksekusimeskipunaturantersebuttidakmemunculkantujuan/kesimpulan.

  15. Forward Chaining • 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

  16. Backward Chaining • Backward chaining adalahpenalaran yang dikendalikantujuan/kesimpulan (goal-driven reasoning). • SP mempunyaitujuan (hipotesissolusi), mesininferensimencobauntukmencari evidence (bukti) untukmembuktikannya. • Pertama, knowledge base dicariuntukmenemukanaturan yang mungkinmempunyaisolusi yang dibutuhkan. • Aturanharusmempunyaitujuandalambagian THEN (aksi). • Jikaaturanditemukansedangkanbagian IF (kondisi) cocokdengan data dalam database, makaaturantertembakdantujuanterbukti. • Jikatidak, makamesininferensiakanmeletakkanaturantersebutdalamdaerahkerjanya (seutsaja “stack”) dan men-setup lagitujuanbaru, sub-goal, untukmembuktikanbagian IF dalamaturantersebut. • Knowledge base mencarilagiaturan yang dapatmembuktikannya, • Mesininferensimengulangikembaliprosestumpukanaturan (stacking rule) sampaitidakadalagiaturandalam knowledge base untukmembuktkan sub-goal saatitu.

  17. Backward Chaining • Pass 1 • Hipotesisadalah Z. • Mesininferensimencobamencariaturan yang menyimpulkan Z (hipotesis) dibagian THEN yaitu Rule 1 • Rule 1 membutuhkanfakta Y dan D, maka Rule 1 masukdalam stack. • Fakta Y dan D harusdimunculkan. • Pass 2 • Mesininferensi men-set-up sub-goal Y, mencaridalam database faktaternyatatidakada, makamencaridalam knowledge base aturan yang menyimpulkan Y (dibagian THEN), Rule 2. • Rule 2 masukdalam stack. • Faktadalam Rule 2: X, B, dan E harusdimunculkan. • Pass 3 • Mesininferensi men-set-up sub-goal X, mencaridalam database faktaternyatatidakada, makamencaridalam knowledge base aturan yang menyimpulkan X (dibaian THEN), Rule 3. • Rule 3 masukdalam stack. • Faktadalam Rule 3: A, harusdimunculkan.

  18. Pass 4 • Mesininferensimenemukanfakta A dalam database fakta, maka Rule 3 tertembak. • Faktabaru X tersimpulkan (munculdalam database fakta). • Pass 5 • Mesininferensikembalike sub-goal Y, mencobakembalimengeksekusiaturan 2, fakta X, D, dan E adadalam database, makaaturan 2 tertembak. • Faktabaru Y tersimpulkan (munculdalam database fakta). • Pass 6 • Mesininferensikembalike Rule 1, mencobamemunculkankesimpulan Z, fakta Y dan D dan D adadalam database, makatujuanawal Z akhirnyatercapai.

  19. Forward Chaining atau Backward Chaining ? • Jikapertamapakarperlumengumpulkanbeberapainformasidanmencobamenalardarifaktaapapun yang dapatdinalar, makagunakanforward chaining. • Jikapakarmemulaidarihipotesissolusidanmencobamenemukanfaktauntukmembuktikannya, makagunakanbackward chaining inference engine. • Forward chaining adalahcaraalamiuntukmendesainsistempakaruntukanalisisdaninterpretasi. • Misal DENDRAL – SistemPakaruntukmenentukanstrukturmolekuldaricairandasar yang tidakdiketahui (Feigenbaum et al., 1971), menggunakan forward chaining. • Kebanyakansistempakardengan backward chaining digunakanuntuktujuandiagnosis. • Misal, MYCIN, sistempakatduniamedisuntuk diagnosis penyakitinfeksidarah (Shortliffe, 1976), menggunakan backward chaining. • Kebanyakandalan SP yang ada, mengombinasikandiantarakeduanya.

  20. MEDIA ADVISOR: Rule-base Expert System • Rule: 14 • if the stimulus_situation is verbal • and the stimulus_response is oral • and feedback is required • then medium is ‘role-play exercises Rule: 1 if the environment is papers or the environment is manuals or the environment is documents or the environment is textbooks then the stimulus_situation is verbal Rule: 2 if the environment is pictures or the environment is illustrations or the environment is photographs or the environment is diagrams then the stimulus_situation is visual Rule: 3 if the environment is machines or the environment is buildings or the environment is tools then the stimulus_situation is ‘physical object’ Rule: 4 if the environment is numbers or the environment is formulas or the environment is ‘computer programs’ then the stimulus_situation is symbolic Rule: 5 if the job is lecturing or the job is advising or the job is counselling then the stimulus_response is oral Rule: 6 if the job is building or the job is repairing or the job is troubleshooting then the stimulus_response is ‘hands-on’ Rule: 7 • if the job is writing • or the job is typing • or the job is drawing • then the stimulus_response is documented Rule: 8 • if the job is evaluating • or the job is reasoning • or the job is investigating • then the stimulus_response is analytical Rule: 9 • if the stimulus_situation is ‘physical object’ • and the stimulus_response is ‘hands-on’ • and feedback is required • then medium is workshop Rule: 10 • if the stimulus_situation is symbolic • and the stimulus_response is analytical • and feedback is required • then medium is ‘lecture – tutorial’ Rule: 11 • if the stimulus_situation is visual • and the stimulus_response is documented • and feedback is not required • then medium is videocassette Rule: 12 • if the stimulus_situation is visual • and the stimulus_response is oral • and feedback is required • then medium is ‘lecture – tutorial’ Rule: 13 • if the stimulus_situation is verbal • and the stimulus_response is analytical • and feedback is required • then medium is ‘lecture – tutorial’

  21. MEDIA ADVISOR: Rule-base Expert System • Tujuanakhir rule-based expert system adalahuntukmemunculkansolusipadamasalah data masukan. • Media Advisor, solusi/kesimpulanadalahmedia yang dipilihdaridaftar 4 pilihan: • medium is workshop • medium is ‘lecture – tutorial’ • medium is videocassette • medium is ‘role-play exercises’ • Dalam dialog, SP menanyai user untukmemasukkan data yang dibutuhkanuntukmenyelesaikanmasalah (environment, job, dan feedback). • Berdasarkanjawaban yang diberikanoleh user, SP menerapkanaturandari knowledge base untukmenalarstimulus_situationadalah physical object, stimulus_responseadalahhands_on. • Rule 9 kemudianmemilihsatudarinilai medium yang dibolehkan.

  22. MenalardenganForward Chaining FORWARD CHAINING: Memasukkanfaktadulu, barudisimpulkan. What sort of environment is a trainee dealing with on the job?  machines In what way is a trainee expected to act or respond on the job? repairing Is feedback on the trainee’s progress required during training?  required (yes) Cycle 1 Rule: 3 if the environment is machines or the environment is buildings or the environment is tools then the stimulus_situation is ‘physical object’ Cycle 1 Rule: 6 if the job is building or the job is repairing or the job is troubleshooting then the stimulus_response is ‘hands-on’ Cycle 2 Rule: 9 if the stimulus_situation is ‘physical object’ and the stimulus_response is ‘hands-on’ and feedback is required then medium is workshop medium is workshop Tidakadaaturan yang masihdapatditembak, Berhenti.

  23. Menalardengan Forward Chaining (2) Kasus 1 What sort of environment is a trainee dealing with on the job?  diagrams In what way is a trainee expected to act or respond on the job? advisinging Is feedback on the trainee’s progress required during training?  required (yes) Kasus 2 What sort of environment is a trainee dealing with on the job?  ‘computer programs’ In what way is a trainee expected to act or respond on the job? reasoning Is feedback on the trainee’s progress required during training?  required (yes) Kasus3 What sort of environment is a trainee dealing with on the job?  textbooks In what way is a trainee expected to act or respond on the job? drawing Is feedback on the trainee’s progress required during training?  required (yes) Kasus 4 What sort of environment is a trainee dealing with on the job?  diagrams In what way is a trainee expected to act or respond on the job? building Is feedback on the trainee’s progress required during training?  notrequired (no)

  24. Menalardengan Backward Chaining Hipotesis: ‘medium’ is ‘workshop’ Pass 1 Mencoba Rule 9, Perlumencarifakta ‘stimulus_situation’ Rule 9, ditumpuk, fakta ‘stimulus_situation’ dicarisebagai ‘physical object’ Pass 2 Mencoba Rule 3, Perlumencarifakta ‘environment’ Rule 3, ditumpuk, fakta ‘environment’ dicarisebagai ‘machines’ Menanyai environment  machines ‘environment’ diinstasiasioleh user denganmemasukkan‘machines’ Mencoba Rule 3, ‘stimulus_situation’ diinstasiasioleh Rule: 3 menjadi‘physical object’ Pass 3 Mencoba Rule 9, Perlumencarifakta ‘stimulus_response’ Rule 9, ditumpuk, fakta ‘stimulus_response’ dicarisebagai ‘hands-on’

  25. Menalardengan Backward Chaining (2) Pass 4 Mencoba Rule 6, Perlumencarifakta ‘job’ Rule 6, ditumpuk, fakta ‘job’ dicarisebagai ‘building’ Menanyaijob  repairing ‘job’ diinstansiasioleh user denganmemasukkan ‘repairing’ Mencoba Rule 6, ‘stimulus_response’ diinstansiasioleh Rule 6 menjadi‘hands-on’ Pass 5 MencobaRule 9, Perlumencarifakta ‘feedback’ Rule 9 ditumpuk, fakta ‘feedback’ dicarisebagai ‘required’ Menanyai feedback  required ‘feedback’ diinstansiasioleh user denganmemasukkan ‘required’ Mencoba Rule 9, ‘medium’ diinstansiasioleh user Rule 9 menjadi ‘workshop’ medium is workshop BACKWARD CHAINING: Dimulaidarikesimpulan (hipotesis), kemudianmencarifakta

  26. Pohon diagram penalaran

  27. Menalardengan Backward Chaining (3) Perludiperhatikan, backward chaining tidakselalubertanyaketikaprosespenalaran, bisadimulaidenganmemasukanfakta, kemudianmulaimenalar, ditengahjalan, SP bisabertanyauntukmenambahfaktabaru. • Bagaimanajikahipotesisnyaadalah: medium is workshop ? Tetapi : • environment is numbers • jobs is investigating • feedback is required (yes) • Bagaimanajikahipotesisnyaadalah: medium is workshop ? Tetapi : • environment is photograhs • jobs is writing • feedback is notrequired (no) Kasus Lain  Faktatidaklengkap • Bagaimanajikahipotesisnyaadalah: medium is workshop ? Tetapi : • environment is machines • jobs is repairing

  28. KelebihanSistemPakar • Representasipengetahuan yang alami • Pakarbiasanyamenjelaskanprosedurpenyelesaianmasalahdenganpernyataan “Dalamsituasisepertiini, sayamelakukansepertiini”, inidinyatakandenganaturanproduksi IF-THEN. • Stuktur yang seragam • Aturanproduksimenggunakan IF-THEN semua, setiapaturanadalahpengetahuan yang independensatusama lain. • Pemisahanpengetahuandaripemrosesan. • Stuktur rule-based expert system memberikanpemisahan knowledge base darimesininferensi yang efektif. • Agar mesinsemakinpintar, maka knowledge engineer hanyamenambahbeberapaaturanpada knowledge base tanpamengintervensistrukturkontrol. • Menyelesaikanpengetahuan yang tidaklengkapdantidakpasti. • Kebanyakan rule-based expert system dapatmerepresentasikandanmenalarpengetahuan yang tidaklengkapdantidakpasti. • Misal: • IF season is autumn • AND sky is ‘cloudy’ • AND wind is low • THEN forecast is clear { cf 0.1 }; • forecast is drizzle { cf 1.0 }; • forecast is rain { cf 0.9 }

  29. KekuranganSistemPakar • Hubungan yang tidakjelasantaraturan. • Meskipunindividuaturanproduksisecararelatifsederhanadan self-documented, interaksilogikadalamjumlahaturan yang besarbisamenjadikabur (tidakjelas/membingungkan). • Sulitdiamatibagaimanasetiapindividumemberikansemuastrategi. Masalahiniakanterlihatketikaaturanproduksidisusundalamhirarki. • Strategipencariantidakefisien. • Mesininferensimenerapkan exhaustive search padasemuaaturanproduksidisetiapsiklus. • Sistempakardenganaturan yang besar (>100) bisamenjadilambat, dantidakcocokuntukaplikasi yang real-time. • Tidakdapatbelajar • Umumnya rule-based expert system tidakmempunyaikemampuanuntukbelajardaripengalaman. • Tidakbisasecaraotomatismemodifikasi knowledge base ataumenyesuaikanaturanataumenambahaturanbaru. • Knowledge engineer masihbertanggungjawabpadarevisidanpengelolaansistem.

  30. ANY QUESTIONS ? Saatnyalatihanmesininferensi Forward chaining dan backward chaining

More Related