- In computer science, rule-based systems are used as a way to store and manipulate knowledge to interpret information in a useful way. They are often in artificial intelligence applications and research.
- In computer science, a rule-based system is a set of "if-then" statement that uses a set of assertions, to which rules on how to act upon those assertions are created.
- In software development, rule-based systems can be used to create software that will provide an answer to a problem in place of a human expert.
- The human mental process is internal, and it is too complex to be represented as an algorithm.However, most experts are capable of expressing their knowledge in the from of rules for problem solving.
THEN the action is go
IF the 'traffic light' is red
THEN the action is stop
Rules as a knowledge representation technique
- The term rule in AI, which is the most commonly used type of knowledge representation, can be defined as an IF-THEN structure that relates given information or facts in the IF part to some action in the THEN part.
- A rule provides some description of how to solve a problem.Rules are relatively easy to create and understand.
- Any rule consists of two parts:
- the IF part, called the antecedent (premise or condition)
- and the THEN part called the consequent (conclusion or action).
IF <antecedent>
THEN <consequent>
3. A rule can have multiple antecedents joined by the keywords AND (conjunction), OR (disjunction) or a combination of both.
IF <antecedent 1> IF <antecedent 1>
AND <antecedent 2> OR <antecedent 2>
. .
. .
. .
AND <antecedent n> OR <antecedent n>
THEN <consequent> THEN <consequent>
- the IF part, called the antecedent (premise or condition)
- and the THEN part called the consequent (conclusion or action).
IF <antecedent>
THEN <consequent>
3. A rule can have multiple antecedents joined by the keywords AND (conjunction), OR (disjunction) or a combination of both.
IF <antecedent 1> IF <antecedent 1>
AND <antecedent 2> OR <antecedent 2>
. .
. .
. .
AND <antecedent n> OR <antecedent n>
THEN <consequent> THEN <consequent>
- The antecedent of a rule incorporates two parts: an object (linguistic object) and its value. The object and its value are linked by an operator.
- The operator identifies the object and assigns the value. Operators such as is, are, is not, are not are used to assign a symbolic value to a linguistic object.
- Systems can also use mathematical operators to define an object as numerical and assign it to the numerical value.
AND ' cash withdrawal' > 1000
THEN 'signature of the parent' is required
Rules can represent relations, recommendations, directives, strategies and heuristics:
- Relation
THEN the car is dead
- Recommendation
IF the season is autumn
AND the sky is cloudy
AND the forecast is drizzle
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'; step 1 is complete
IF step 1 is complete
AND the 'fuel tank' is full
THEN the action is 'check the battery'; step 2 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'
There's If Then, and Then There's If Then
- It is very tempting to store if-then logical relationships in procedural code, especially since procedural code has if-then statements.
- In fact, not only is it tempting, it can work reasonably well up to a point.
- It's the road bit that cause the trouble.
- A logical relationship can be coded as a procedural if-then, but must be placed somewhere along the road of execution of the procedure it is in.
- It makes a difference which rule gets placed first, and if there are branches from previous rules, and which branch a following rule is placed on.
No comments:
Post a Comment