Database for Rule
A Mixed Approach- It is possible, in some cases, to shoehorn logical relationships into a database. If the relationships can be represented in a tabular form, then a database table can be used to encode the rule.
- So for example, if the amount of discount a customer got was dependent on the amount of previous sales at a few different levels, this could be represented as a table and stored in a database.
- However, as with the using procedures, the database approach is limited in that it only works for very clean sorts of logical relationships.
- Sometimes application use a mixture of both the procedural and database approaches. Logical relationships that can be expressed in tables are stored in a database and the remaining relationships are coded as procedural if-then statements.
- This can simplify the coding task, but it makes maintenamce harder because the logical knowledge is now spread across two different vehicles.
- Despite these difficulties, there is a strong appeal to using data, procedure or both to encode logical knowledge, and that is that they are familiar technique, and there are numerous individuals skilled in their use.
- The problem with encoding logical relationships were first explored back in the 1970s by researchers at Stanford University. They were trying to build a system that advised physicians on courses of antibiotics for treating bacterial infections of the blood and meningitis. They found that the medical knowledge consists mainly of logical relationships that can be expressed as if-then rule.
- They attempted many times to encode the knowledge using conventional tools, and failed because of the problems described previously.
- If the problem with coding logical knowledge is that the nature of a computer is not well-suited to expressing logical relationships, then clearly the answer is to create a machine that is. Building specialized hardware is not very practical, but it turns out a computer is a good tool for creating virtual computers.
- This is what the researchers at Standford did. They effectively created a virtual machine that was programmed using logical rules. This type of virtual machine is often called a rule engine.
- Search for a rule that matches the pattern of data
- Execute that rule
- Go to top
- Forward chaining and backward chaining.
Rule Knowledge Representation Language
- Knowledge representation is the syntax of a particular tool.Each tool allows the entering of logical knowledge in a certain format, which might be simple if-then statements referencing simple entities, or complex if-then statement that reference complex objects and properties.
- They can be in and English like syntax or more closely resemble formal logic. The classic design tradeoffs of ease-of-use versus expressive power apply.
- A tool might provide other means for expressing logical knowledge as well, such as hierarchical structures, and might include capabilities for expressing uncertainty.
- CLIPS
No comments:
Post a Comment