|
Agenda
|
Tracks the current list of activations for the currently active defmodule - the list of rules to fire
|
|
AgendaCount
|
Returns the number of activations currently in the CurrentModule's Agenda
|
|
AgendaItem[Integer]
|
Returns one activation from the agenda. Activations are rules which are due to be fired based on the facts in the fact list.
|
|
CurrentAgendaItem
|
Tracks the activation running in the current step. This property is only non nil when the step is actually running
|
|
CurrentFocus
|
Returns the currently focused module during execution
|
|
CurrentModule
|
Provides access to the currently focused DefModule in your expert system. The TInferenceEngine component, like CLIPS, supports partitioning your expert system into multiple modules. The DefinedTypes, Facts, FactTemplates, Rules, Agenda, and Rete Network properties all refer to the CurrentModule. To access the other modules and their constructs, use the Modules property.
|
|
DefinedTypes
|
Tracks the Type Definitions (see IIEDefinedType interface) for the currently active defmodule
|
|
DuplicateConstructs
|
Controls the behavior of the inference engine when duplicately named constructs (such as fact templates or rules) are added.
dcOverwrite - overwrite, or replace, the currently defined construct with the new construct
dcIgnore - ignore the new construct and don't add it to the inference engine
dcError - raise an exception
|
|
EvalSalience
|
Controls when the salience for activations are evaluated. The saliences of rules control the order of execution. Set the EvalSalience to sEveryTime to have the agenda reordered after every step (note, this will slow down execution).
|
|
ExpertSystem
|
Defines the current state of the expert system, in string format. To get the text that would be in a text file for the entire expert system (including fact templates, current facts, and rules), just assign this property to another string or to a TStrings.Text property. To change the expert system, you can assign to this property (Be careful, the current expert system is destroyed).
|
|
FactDuplication
|
Controls whether duplicate facts can be asserted into the inference engine. If FactDuplication is true, then duplicate facts may be asserted. If FactDuplication is False and an equivalent fact already exists in the fact base, then the Assert method will not assert the new fact and will return -1
|
|
FactIdCounter
|
Returns the ID of the next fact to be asserted. The Fact IDs monotonically increase by 1 until a Reset is used
|
|
FactPending[Integer]
|
Represents property FactPending[Integer].
|
|
Facts
|
Returns the current fact list for the currently active defmodule. The fact list defines the current knowledge in your expert system.
|
|
FactSets
|
Returns the list of fact sets for the currently active defmodule within the Inference Engine. Fact Sets define a set of facts which should be automatically asserted when the engine is initialized
|
|
FactsPending
|
Represents property FactsPending.
|
|
FactTemplates
|
Provides access to all the fact templates for the currently active defmodule within the expert system. Use the Item property to access individual fact templates.
|
|
FocusStack
|
Maintains the list of modules to obtain focus during inference (Run). The top of the stack is the 0th item
|
|
FuzzyAutoTerms
|
Controls whether the inference engine will automatically generate the fuzzy terms or sets; low, medium, and high; for each new fuzzy variable. If this property is false, newly created fuzzy variables will have no fuzzy sets until you define them
|
|
FuzzyCorrelationMethod
|
Controls which Fuzzy Correlation Method to use: Minimum and Product.
|
|
FuzzyEqualsThreshold
|
Defines the "noise" level of fuzzy facts. When two fuzzy sets are compared to see if they are equal, all the XY value pairs of the two fuzzy sets are compared. If the minimum Y value of the two fuzzy sets at some X point exceed the threshold, then they equal
|
|
FuzzyInferenceMethod
|
Controls which Fuzzy Inference Method type to use. Fuzzy Inference controls how assertions are combined with facts already on the fact list. Unlike normal inference where new facts may be asserted, fuzzy inference combines the fact already on the fact list with the new fact. This method type specifies how two fuzzy sets are combined:
MinMax - Takes the maximum of two fuzzy sets
Additive - Adds the two fuzzy sets together
Mean - Takes the average of the two fuzzy sets
Product - Multiplies the two fuzzy sets together
BoundedSum - Adds the two fuzzy sets together, cutting off any values over 1.0
|
|
GlobalContext
|
Returns the global, overriding context within the inference engine. Similar to how object pascal can define a global variable 'X' and also have a local variable 'X', the inference engine works the same way. The global context contains the definitions globally, rules are able to redefine a label locally. The global context is not just for variables
|
|
GlobalVariables
|
Returns the hash table of global variables within the expert system.
|
|
Halt
|
Set this property to halt execution of the expert system. It has no effect if the expert system is not running (setting halt to false does not start the expert system)
|
|
InitialFactPattern
|
Returns the pattern for the default fact which is used to activate rules which have no conditions. By default, the pattern is '(Initial-Fact)'. The initial fact is automatically asserted when clear is called
|
|
InputStream
|
Returns the stream currently being used as standard input.
|
|
IOStreams
|
Returns all the input/output streams available to the inference process
|
|
IsModuleOp
|
Represents property IsModuleOp.
|
|
IsRunning
|
Read this property to see if the Inference Engine is running
|
|
MinActivationStrength
|
Controls what the minimum activation strength of a rule must be in order to be put on the Agenda.
|
|
ModifyingFact
|
Represents property ModifyingFact.
|
|
Modules
|
Maintains the list of modules in the inference engine. The 0th item is always the MAIN module.
|
|
NullFact
|
Defines the fact used as equal to nil in the inference process
|
|
OnAddDefaultPackages
|
Cccurs when the default user function packages are being added to the inference engine, usually when the Clear method finishes.
|
|
OnChangeCurrentModule
|
Occurs when the CurrentModule is changed in the inference engine
|
|
OnClear
|
Cccurs when the inference engine is cleared
|
|
OnClearDefinedTypes
|
Occurs when the Clear method of the DefinedTypes property is called
|
|
OnClearFacts
|
Occurs when the Clear method of the Facts property is called
|
|
OnClearFactTemplates
|
Occurs when the FactTemplates property of the inference engine is cleared
|
|
OnClearModules
|
Occurs when the Modules list is cleared
|
|
OnClearRules
|
Occurs when the rule base (Rules property) of the inference engine is cleared
|
|
OnReset
|
Occurs when the inference engine is reset (or reinitialized)
|
|
OnStartInference
|
Occurs before the start of the current Run
|
|
OutputStream
|
Returns the stream currently being used as standard output.
|
|
Packages
|
Controls which function packages (TUserPackage component) the inference engine should load by default
|
|
Parser
|
Defines the parser the inference engine is currently using to write and read its constructs (facts, rules, function calls, etc). The parser works closely with a tokenizer (which parses strings into chunks). The parser is used by all the ParseXXXX methods and PrettyPrint methods of the TInferenceEngine component
|
|
ParserErrorHandling
|
Controls how the parsers report errors: whether they should stop after the first error and report it immediately or continue parsing and report all the errors at the end.
|
|
ParserMaxErrors
|
Controls how many errors may accumulate before parsing should be aborted.
|
|
ParserType
|
Defines the TIEParser class to create for parsing in the TInferenceEngine component (see Parser property).
|
|
ReloadComps
|
Represents property ReloadComps.
|
|
ResetGlobals
|
Controls whether global variables are reset to their defaults and reevaluated when the inference engine is reset (either by some actions in rules or the Reset method).
|
|
Rete
|
Returns the Rete network which tracks all the rule patterns and facts for the current module. The rete network is used for efficient rule matching and inference.
|
|
Rules
|
Returns the rule base for the currently active defmodule of the expert system. The rule base defines the expert's knowledge about the domain
|
|
StatMaxActivations
|
Returns the maximum number of activations (the highest count for any module's Agenda) that occured in the last Run method call. Statistics must be enabled in the Watch property for this property to be updated
|
|
StatMaxFacts
|
Returns the maximum number of facts (the largest the Facts base got) that occured in the last Run method call. Statistics must be enabled in the Watch property for this property to be updated
|
|
StatMeanActivations
|
Returns the mean (average) number of activations in the Agenda per step that occured in the last Run method call. Statistics must be enabled in the Watch property for this property to be updated.
|
|
StatMeanFacts
|
Returns the mean (average) number of facts (Facts base) per step that occured in the last Run method call. Statistics must be enabled in the Watch property for this property to be updated
|
|
StatNumRulesFired
|
Returns the number of rules (TRule component) that fired (or, alternatively, the number of activations fired) in the last Run method call.
|
|
StatRunTime
|
Returns the time, in seconds, that it took for the last Run method call to complete. Statistics must be enabled in the Watch property for this property to be updated.
|
|
Storage
|
Provides a named storage area, or scratch space, for any data the user wants to store in it. The Storage area is used by the store, fetch, and clear-storage commands
|
|
Strategy
|
Controls how the inference engine orders the activation of rules. The possible values are:
ssDepthFirst - New Rule activations are placed at the front of the agenda (i.e., new rules will fire before older rules).
ssBreadthFirst - New Rule activations are placed at the end of the agenda (i.e., new rules fire after older rules)
|
|
SymbolIndex
|
Allows you to read and set the symbol index used to generate unique symbols with the GenerateSymbol method. You cannot set the symbol index to less than its current value
|
|
TokenizerType
|
Defines the tokenizing stream class to create for parsing in the TInferenceEngine component (see Parser property). The tokenizer takes a string stream such as '(+ 1 ?x)' and creates tokens: '(', '+', '1', '?x', and ')'.
|
|
TypeChecks
|
Controls the type constraint checking performed by the inference engine. Two types of constraint checking are available: static type constraint checking and dynamic type constraint checking.
|
|
UpdatingHT
|
Represents property UpdatingHT.
|
|
UserFunctions
|
Returns all the user functions within the inference engine.
|
|
Version
|
Returns the version number of the IECS
|
|
Watch
|
Controls the debug information printed out within the expert system process. You can watch the following items:
cwActivation - watch rule activations and deletions
cwFact - watch fact assertions and retractions
cwRule - watch rule additions and removals
cwCompilation - watch rule compilations
cwStatistics - watch execution statistics
cwFocus - watch module focus changes
|