Isn't this a homework that you are supposed to do by yourself ?
Else. There are ressources on the Internet/Web to help you along to solve this.
Cheers René
-----Original Message----- From: owner-ciao-users(a)clip.dia.fi.upm.es [mailto:owner-ciao-users(a)clip.dia.fi.upm.es] On Behalf Of Nickarim Sent: Montag, 27. November 2006 13:19 To: ciao-users(a)clip.dia.fi.upm.es Subject: BAYESIAN UPDATING & FUZZY LOGIC
Dear Colleagues; Can anyone help me find solution for this program in Prolog:
The purpose of this is to design and build a small Expert System that uses both BAYESIAN UPDATING and FUZZY LOGIC as its inferencing strategy. The area of application is that of a simple automotive fault finder that is able to determine the cause of an engine not starting.
For this system, there are only two possible causes that would prevent an engine from starting :-
The ignition system OR The fuel system
For the ignition system there are 3 strands of evidence that are used to determine the strength of this hypothesis :-
The condition of the spark plugs with max LS = 8 & min LN = 0.1 The condition of the HT leads with max LS = 6 & min LN = 0.8 The condition of the ignition timing with max LS = 5 & min LN = 0.6
The prior ODDS for an ignition system fault is 0.6
For the fuel system there are 2 strands of evidence that are used to determine the strength of this hypothesis :-
The condition of the fuel pump with max LS = 9 & min LN = 0.7 The condition of the carburettor with max LS = 7 & min LN = 0.6
The prior ODDS for a fuel system fault is 0.5
The system should elicit, from the user, the certainty for each strand of evidence, both for fuel and ignition, on a scale of -10 to 10, with 0 as don't know. An example might be:
. How sure are you that the fault may be the spark_plugs, on a scale of -10 to 10 with 0 as don't know.
And the user should respond with a value from -10 to 10.
After all the strands of evidence are collected, the system should then report the result with its PROBABILITY. An example might be:
The suspected fault is fuel_system with a probability of 0.72
Design Hints. Having collected the 'certainty' for a strand of evidence you must then decide how that certainty effects the original LS or LN of that evidence. This can be determined from the following input function. This function can be represented by 2 equations, one for LS and one for LN. The LN equation will be used for user values below 0 and the LS equation for values above 0. The function for LS might be something like y = mx + c. For a 0 user certainty (don't know) the value will always be 1. Once the LS/LN values have been collected for each strand of evidence, for a particular hypothesis, they combine with the prior odds in order to give the overall odds for that hypothesis. You will need to find one value for ignition and one value for fuel. Each value must then be converted into a probability and an application of Fuzzy Logic will provide you with the fault.