One page summary
RTXPS is a forward-chaining expert system operating in real-time (time aware): the forward chaining loop is executed continuously with a configurable frequency (e.g., synchronized to once per second). If the full set of RULES and any foreground tasks triggered can not be evaluated within this period, a parallel instance (thread) of the forward chaining inference loop is started.
Several FUNCTIONS obtain, compare and use variables (DESCRIPTORS) from a dynamic Knowledge Base, including ABSOLUTE (systems) and ELAPSED TIME, they read/write user defined TIMERS that measure elapsed time between user defined triggers, setpoints or external events. The TIMERS are also used in the RULES that determine the conditional execution of the FUNCTIONS.
This makes it possible to execute sequences of conditional and scheduled tasks with complex interdependencies and conditional scheduling or event driven, including the execution and interpretation of dynamic simulation (forecasting) or optimization (operational control) models. These ACTIONS can also be based on the values of remote (real-time) sensors that can update the Dynamic Knowledge Base asynchronously.
The ACTIONS are executed in a combination of fully embedded (foreground, within the forward chaining inference loop) and background (batch) jobs. Communication and coordination is based on a Dynamic Knowledge Base, implemented in any industry standard relational data base system.
This data base also serves as repository for any external communication (asynchronous user inputs, monitoring sensor data).
RTXPS can be run in several distinct modes:
The dynamically generated and updated (scheduled or event based) HTML pages provide a Status Board or dashboard status indication of the system that RTXPS supervises and controls with the option of direct operator interventions.
Basic RULE syntax and logic
RTXPS uses basic production RULES in first order logic.
The generic RULE syntax is:
IF TRUE (unconditionally true, will always execute) IF function() arbitrary function call, using DESCRIPTORs as arguments or uses the dynamic Knowledge Base for its context/input, that returns TRUE or FALSE IF DESCRIPTOR OPERATOR VALUE (direct comparison/evaluation see below, or triggering backward chaining inference tree of arbitrary nesting and number of RULES; alternative METHODS/branches and optional defaults guarantee completion of the inference even with limited/lacking data)
Descriptors are user defined (supported by on-line Knowledge Base Editors) variables with a hybrid (numerical and symbolic) representation (symbols linked to intervals of the numerical range). Descriptors are maintained in the Dynamic Knowledge Base, and can be
ACTION can be an arbitrary user defined function (executable), or any one from a set of pre-defined built-in functions such as set_descriptor_value() or html_display().
ACTIONS can also trigger various forms of communication, sending dynamically composed messages (reports, alerts, warnings) to a pre-defined group of recipients by updating web pages, Email, SMS (or even fax), directly writing into networked data bases, or any communication protocol based on TCP/IP.
The communication can also include messages from and to RTUs (Remote Terminal Units) or actuators, triggering or setting relays, or SCADA (supervisory control and data acquisition) systems for industrial control purposes.
A special case or application of RTXPS is CourseWare, an interactive web-based distance learning tool. CourseWare generates a (conditional) sequence of HTML pages that contain interactive elements such as questions and embedded tests.
On the basis of course specific RULE sequence (including conditional loops using rule-triggered setpoints), RTXPS decides which action (course content display) is to be conducted next. ACTIONS consist of one or more functions including which one that creates an html page which is sent to the client. Pages can contain in-text functions - tools to display or edit descriptors (embedded questions) or graphical elements which are created dynamically, links to interactive models, or tests to monitor student activity and comprehension.
© Copyright 1995-2016 by: ESS Environmental Software and Services GmbH AUSTRIA | print page