Rete Algorithm - Optimisation and Performance

Optimisation and Performance

Several optimisations for Rete have been identified and described in academic literature. Several of these, however, apply only in very specific scenarios, and therefore often have little or no application in a general-purpose rules engine. In addition, alternative algorithms such as TREAT and LEAPS have been formulated which may provide additional performance improvements. There are currently very few commercial or open source examples of productions systems that support these alternative algorithms.

The Rete algorithm is orientated to scenarios where forward chaining and "inferencing" is used to calculate new facts from existing facts, or to filter and discard facts in order to arrive at some conclusion. It is also exploited as a reasonably efficient mechanism for performing highly combinatorial evaluations of facts where large numbers of joins must be performed between fact tuples. Other approaches to performing rule evaluation, such as the use of decision trees, or the implementation of sequential engines, may be more appropriate for simple scenarios, and should be considered as possible alternatives.

Read more about this topic:  Rete Algorithm

Famous quotes containing the word performance:

    So long as the source of our identity is external—vested in how others judge our performance at work, or how others judge our children’s performance, or how much money we make—we will find ourselves hopelessly flawed, forever short of the ideal.
    Melinda M. Marshall (20th century)