|
Knowledge base systems, also known as expert systems,
are a facet of Artificial Intelligence (AI). AI is a sub-field of
computer science that focuses on the development of intelligent
software and hardware systems that emulate human reasoning techniques
and capabilities. Knowledge base systems emulate the decision-making
processes of humans and are one of the most commercially successful AI
technologies. These systems are used in a variety of applications for
business, science and engineering. Business applications capture a
company's critical business knowledge and utilize it for decision
support.
A knowledge base system may employ any number of
approaches to knowledge representation and manipulation from the AI
world including:
- Rule-based Systems
capture knowledge in the form of structured if-then statements.
- Model-Based Reasoning
uses software models to capture knowledge or to emulate real processes.
- Neural Nets
are a network of nodes and connections used to capture knowledge, they
can "learn" by using examples.
- Fuzzy Logic
is used to represent and manipulate knowledge that is incomplete or
imprecise.
- Decision Trees
capture decision-making knowledge that can be expressed as sets of
order decisions.
A rule based system uses "rules" as the knowledge
representation for knowledge coded into the system. Rules typically
take the form of if-then statements. This is a popular and intuitive
knowledge representation. Constraint knowledge which identifies a set
of conditions or a limit is easily represented using rules. Another
form of knowledge, pattern matching, is also a good candidate to be
implemented using rules.
The term business rules and rule-based system
are often confused. Business rules typically refer to knowledge
important to operating a business, in contrast a rule-based system
refers to a type of knowledge representation. A rule based system may
be an effective way to capture certain types of "business rules" (i.e.
business knowledge) although, depending on the type of knowledge, other
representations may be more effective. [back
to top]
Model based reasoning was initially developed to support
industrial processes such as oil refining or chemical processes. This
technology uses a mathematical model that mimics the real process.
Possible control actions can be applied to the model and the resulting
effects can be observed. The model is used to predict the outcomes of
various control actions thus providing a basis for selecting the best
control action.
The model-based technique is a very powerful knowledge
representation. This concept can also be applied to the business
domain. Models can be constructed to capture the gist of business
processes. These models can then be manipulated to predict the effects
of various actions. Built as part of a knowledge base system, the
models can predict outcomes based on different business scenarios. This
type of reasoning is very useful as part of a sophisticated decision
support system.
One of the key challenges with this technique is
ensuring the model has the proper fidelity and captures the important
characteristics of the process being modeled. [back to top]
Artificial neural nets were developed from experiments
to model the behavior of brain tissue using software. These experiments
were some of the earliest forms of artificial intelligence software.
Neural nets are good at associative problems. Given
partial information, an associative problem is to find items that "fit
with" (i.e. are associated with) the given information. For example,
birds are small animals with feathers that fly. Given a feathered
animal that flies, we can find associated information - namely that
this animal is likely to be a bird and is probably small.
A key advantage of neural nets is that they can be
trained by example. To encode knowledge into a neural net many examples
of the desired information can be presented to the neural net. Each
example causes the neural net to alter its structure and store the new
information. After training, the knowledge is stored in the neural net
as a pattern of weights distributed across all the connections between
individual neurons. These connected neurons make up the neural net.
This easy training is off-set by the difficulty in identifying the
knowledge stored in the neural net. There is no descriptive form of the
knowledge captured in a neural net. The knowledge is only a
distribution of connection weights. [back
to top]
Fuzzy logic has its roots in set theory. It was
developed to handle situations where membership in sets is not clearly
defined.
This technique is very useful for handling imprecise
information. For example, what if we are looking at the P/E ratio of an
internet company and wish to assess if the ratio is "high"? In this
case, we might consider a ratio of 500 to be high, but what about a
ratio of 200? Fuzzy Logic could use a number to represent the
membership of our specific P/E ratio in the set of high P/E ratios -- a
P/E ratio of 200 might be considered 0.5 high. This technique helps
avoid problems with hard constraints. A hard constraint with the lower
bound for high P/E ratios of 200 would disqualify a P/E ratio of 199
from the high category. Using fuzzy logic this same P/E ratio would be
considered about 0.5 high.
Fuzzy logic can often be combined with other knowledge
representations. For example, rules can use fuzzy logic expressions to
allow them to more effectively handle imprecise information. [back to top]
Decision trees predate computer-based artificial
intelligence. This technique has been used for many years to lay out
the conditions and steps required for decisions.
Decision trees are useful for capturing structured
decision-making processes. This technique is useful for troubleshooting
and configuration applications. The knowledge for these applications is
often structured into a set of steps and decision points.
One problem with this technique is lack of flexibility.
Decision trees must be defined ahead of time thus limiting their
flexibility. It is possible to combine decision trees with other AI
techniques to lessen this problem. Despite this limitation decision
trees can be very effective representations for specific types of
knowledge. [back to top]
|