
Embedded Expert System Syntax
The embedded expert system can server a number of functions:
- estimation of parameters, e.g., for simulation models;
- checking completeness, consistency, and plausibility of user
specifications;
- interpretation of complex (model generated) data sets.
For a complex application example, see the
Environmental Impact Assessment example.
The expert system uses Descriptors as its basic variables, which
are linked in processed in Rules.
System Components:
- DESCRIPTORS
- RULES
- RTXPS RULES
- XPS editor example
RTXPS: real-time expert system
A Real-time Expert System Environment
for on-line Decision Support Applications
Technical Specifications
DESCRIPTORs
The complete syntax of a DESCRIPTOR is:
DESCRIPTOR
<descriptor_name>
A <alias_for_descriptor_name>
T <descriptor_type>
U <unit>
V <range> / <range> / <range> / ...
R <rule#> / <rule#> / ...
TB <table#> / <table#> / ...
F <function>
IF <interface function>
G <gis_function> <gis_overlay>
Q <question>
MODEL
<model_name>
T <model_type>
I <input_descriptor> / <input_descriptor> /
O <output_descriptor> / <output_descriptor> /
ENDMODEL
ALTERNATIVE
<alternative>
<alternative defs>
ENDALTERNATIVE
LAYOUT
X <window x-coordinate>
Y <window y-coordinate>
WIDTH <window width>
HEIGHT <window height>
BGCOLOR <window bgcolor>
BORDER_WIDTH <window borderwidth>
BORDER_COLOR <window bordercolor>
FORMAT <value selector format_string>
DELTA <value selector increment>
HYPER_INFO <hyperinfo path>
HYPER_X <hyperinfo x-coordinate>
HYPER_Y <hyperinfo x-coordinate>
HYPER_WIDTH <hyperinfo width>
HYPER_HEIGHT <hyperinfo height>
HYPER_TWIDTH <hyperinfo backgroundwin width>
HYPER_THEIGHT <hyperinfo backgroundwin height>
HYPER_FGCOLOR <hyperinfo foreground color>
HYPER_BGCOLOR <hyperinfo background color>
HYPER_KEYCOLOR <hyperinfo keyword color>
HYPER_HIKEYCOLOR <hyperinfo highlight color>
HYPER_SWBORDERC <hyperinfo border color>
ENDLAYOUT
ENDDESCRIPTOR
A simple example for a descriptor of the reservoir expert system is
retention_time:
DESCRIPTOR
retention_time
T S
U days
V very_small[ 0, 360] /
V small [ 360, 1080] /
V medium [1080, 1800] /
V large [1800, 3600] /
V very_large[3600, 7200] /
R 7777007 /
Q What is the average retention time, in days,
Q for the reservoir ? rtention time is the theoretical
Q period the average volume of water spends in the reservoir,
Q estimated as the ratio of volume to throughflow.
ENDDESCRIPTOR
The flexibility to use, alternatively or conjunctively, both qualitative
symbolic and quantitative numerical methods in one and the same application
allows the system to be responsive to the information at hand, and the users
requirements and constraints.
This combination of methods of analysis, and the integration of data bases,
geographical information systems, and hypertext, allows to
efficiently exploit whatever information, data and expertise is available
in a given problem situation.
An example for a DESCRIPTOR of the reservoir expert system with an
external model (in this particular case the inflow_model) is
mean_annual_inflow:
DESCRIPTOR
mean_annual_inflow
T S
U Mill.m3
V very_small[0,30] / small[30,150] / medium[150,3000] /
V large[3000,30000] / very_large[30000,300000] /
MODEL
inflow_model
T local_wait
I hemisphere / east_west / longitude / latitude /
O mean_annual_inflow /
ENDMODEL
Q what is the long term average mean annual inflow,
Q in Million meter cubed, to the reservoir
ENDDESCRIPTOR
A model of human problem solving recursively refines and
redefines a problem as more information becomes available or certain
alternatives are excluded.
This responsiveness to the problem situation and the information available,
and the ability to adjust as more information becomes
available, that is in a sense, learn, is a characteristic of intelligent
systems.
|
Backward Chaining Rules
The rule syntax that is used in conjunction with the
hybrid numerical and symbolic descriptors is:
IF <condition>
THEN <action>
<condition> := <condition <logical operator> <condition>
:= descriptor <comparative operator> <operand>
:= descriptor <singular operator>
:= TRUE
<action> := descriptor = <assigned value>
:= descriptor <meta operator> <constant>
<assigned value> := <operand> <arithmetic operator> <assigned value>
:= descriptor
:= <constant>
<logical operator> := AND | OR
<comparative operator> := < | > | <= | >= | == | !=
<singular operator> := EXISTS | NOT_EXISTS
<arithmetic operator> := [ | ] | * | / | + | -
<meta operator> := INCREASES_BY | DECREASES_BY
:= BECOMES
<operand> := descriptor
:= <constant>
<constant> := string
:= number
Rules can result in the absolute assignment of descriptor values,
their relative, incremental modification, or they can be used to
control the inference strategy depending on context.
Rules can also include simple formulas; more complex functions can be
used through the generic model interface.
An example for a rule used in the reservoir expert system is:
RULE 1020231
IF average_reservoir_depth == small
AND retention_time < 30
THEN reservoir_stratification = unlikely
ENDRULE
Also, the user can call up a knowledge base browser, that allows to navigate in
the tree structure of the knowledge base within the context of individual
problems. The browser can descend the inference tree, displaying sets of rules
referring to a list of descriptors and allow to inspect individual
descriptor definitions.
The possibility to integrate models in place of rules in an expert system
and at the same time use embedded rule-based components in models
provides a very rich repertoire of building blocks for interactive software
systems.
The flexibility to use, alternatively or conjunctively, both qualitative
symbolic and quantitative numerical methods in one and the same application
allows the system to be responsive to the information at hand, and the users
requirements and constraints.
This combination of methods of analysis, and the integration of data bases,
geographical information systems, and hypertext, allows to
efficiently exploit whatever information, data and expertise is available
in a given problem situation.
An example for a descriptor of the reservoir expert system with an
external model (in this particular case the inflow_model) is
mean_annual_inflow:
mean_annual_inflow
T S
U Mill.m3
V very_small[0,30] / small[30,150] / medium[150,3000] /
V large[3000,30000] / very_large[30000,300000] /
MODEL
inflow_model
T local_wait
I hemisphere / east_west / longitude / latitude /
O mean_annual_inflow /
ENDMODEL
Q what is the long term average mean annual inflow,
Q in Million meter cubed, to the reservoir
ENDDESCRIPTOR
A model of human problem solving recursively refines and
redefines a problem as more information becomes available or certain
alternatives are excluded.
This responsiveness to the problem situation and the information available,
and the ability to adjust as more information becomes
available, that is in a sense, learn, is a characteristic of intelligent
systems.
|