Anda di halaman 1dari 21

Reasoning and search in rule based expert systems (reasoning cerdas dlm pengambilan keputusan)

*Solving problems by reasoning *Forward chaining *Backward chaining *Search methods and heuristics

Dr.Eng. Syafaruddin, S.T, M.Eng

*Solving problems by reasoning


Fundamental architecture of expert systems:
berisi expert knowledge dlm domain tertentu manipulasi knowledge base utk mencari jawaban dr problem yang ada input, modifikasi & analisa knowledge base

membantu sistem berkomunikasi dengan user

membantu sistem berkomunikasi dgn knowledge engineer

Struktur knowledge base


facts atau predicates:
Representasi deklarasi knowledge dari problem yang diberikan; statemen: bisa true, false atau unknown; nilai predikat bisa berubah dengan waktu dan juga selama reasoning Connections atau rules:
Representasi heuristics or "rules of thumb", yang menggambarkan aksi tertentu dari situasi yang diberikan Dioperasikan dengan inference engine untuk memodifikasi facts Hanya bisa diubah oleh knowledge enginer pada saat maintenance

Predikat

Rules

Rule base

*Algoritma reasoning
Rules digunakan oleh inference engine untuk menentukan informasi/knowledge yang baru

Dasar step reasoning untuk single rule: Pilih salah satu rules yang aplikable (jika predikat mempunyai condition bernilai true) Inference engine kemudian mencocokkan facts dengan rule yang paling sesuai Modifikasi fact berdasarkan rule yang dipilih (nilai logik predikat konklusi diset true) Rule yang dipilih kemudian di-fired oleh the inference engine, dan aksi yang dilakukan dinamakan executed.

Maksud/tujuan reasoning: mencapai atau membuktikan goal state


Dasar formula matematik yang digunakan untuk reasoning modus ponens

Modus ponens bisa digunakan dalam 2 cara: Reasoning bisa dimulai dengan facts & knowledge ; modus ponens menghasilkan konklusi yang baru; di mana pada tahap berikut lebih banyak interpretasi(inference) yang dibuat forward reasoning Reasoning bisa dimulai dengan sesuatu yang dibuktikan kita melihat implikasi (pada bagian consequence yang berisi predikat yang dibuktikan backward reasoning Dalam kedua arah reasoning; rantai rules bisa dikonstruksi antara facts dan goal state

Rantai reasoning: Bisa dilihat sebagai jalur dalam state-space, --semacam urutan rules yang mengantar satu state ke state yang lain Urutan langkah reasoning berhubungan dengan graph traversal dari suatu initial state ke state yang lain secara lebih memungkinkan dan lebih bisa diterima sebagai optimal goal states. Oleh karena itu, reasoning problem bisa diformulasi sebagai searching problem dalam state-space di mana rules diterapkan untuk mendapatkan action sebisa mungkin Dalam konteks ini, search (pencarian) adalah metode umum mencapai tujuan di mana initial state, actions dan goal state diberikan

Kemungkinan terdapat banyak rules yang bisa berlaku untuk mencocokkan antara facts dan hasil reasoning bergantung pada jenis aplikasi Hal in disebut dengan conflict dan dinyatakan dengan branch of the search tree in the state-space. Jumlah branches sama dengan jumlah aplikable rules dalam state Memilih rule mana yang diterapkan berikutnya conflict resolution.

*Conflict resolution
Untuk sebagian besar problems, tidak ada strategi solusi exact yang optimal berlaku untuk setiap reasoning task Juga bukan idea yang ekselen menyelesaikan problems dengan mengetes setiap kemungkinan solusi karena combinatorical explosion. Dalam Real practice; tidak dibutuhkan semua kemungkinan solusi, tetapi bagaimana memperoleh solusi"good enough dalam waktu yang "short enough Conflict resolution bermaksud pada pemilihan rule yang terbaik yang bisa diterapkan berikutnya;
merupakan algoritma penting dari inference engine Berisi heuristic knowledge, knowledge yang berada lebih tinggi dibandingkan dengan apa yang terdapat dalam state-space (bisa dikatakan sebagai metaknowledge dari struktur rule-base)

Definisi heuristic:

*Penjelasan reasoning
Kemampuan expert system menjelaskan reasoning-nya merupakan satu atribut yang paling powerful Selama sistem mengingat rantai logika dari reasoning, sistem mampu menjelaskan bagaimana sampai pada konklusi kapan pun user meminta penjelasan Penjelasan yang dimaksud bisa memberika informasi tentang "How?" and "Why?" melalui tracing the reasoning process. Hypothetical reasoning juga bisa diterapkan dengan tracing untuk menjawab tipe pertanyaan: "What if?"

Forward reasoning
metode yang paling sederhana = forward chaining atau data-driven chaining digunakan menginfer solusi berdasarkan knowledge yang terdapat dalam knowledge base

Metode Forward reasoning:


Di mulai dengan himpunan (set) facts yang diketahui untuk menurunkan facts yang baru dengan menggunakan rules, di mana condition dari rules cocok dengan facts yang diketahui hingga goal state dicapai atau tidak ada lagi rules yang mempunyai conditions yang cocok dengan facts yang terbaru

Penjelasan forward chaining:

Dalam forward chaining, pencarian dalam statespace dibentuk dari initial state Selama pencarian, bagian conditions dari rules dicocokkan dengan fact-base satu aplikable rules diexecuted Konsekuensi dari rule yang dipilih, facts baru bisa ditambahkanatau dihilangkan dalam fact-base. Dengan aplikasi rule, kita bisa memperoleh state berikutnya

Standar algoritma

Problem tanpa defined goal:

What is NP-complete?

Dalam forward reasoning with defined goal; jika salah satu goal tercapai maka program berhenti; bagaimana jika tidak? backtrack mechanism
Jika tidak terdapat lagi aplikable rule dan terminal state ternyata bukan the goal state, maka algortima mesti kembali ke state sebelumnya dengan menggunakan rule aplikable lain yang tersedia Mekanisme backtrack akan mencoba memilih semua kemungkinan rules pada setiap state

penentuan rules untuk backtrack mechanism & rekomendasi penggunaan metode forward reasoning

Solusi:

Anda mungkin juga menyukai