system that applies human-made rules to store, sort and manipulate data. In doing so, it mimics human intelligence.
logical program that uses pre-defined rules to make deductions and choices to perform automated actions.
Rule-based systems require a set of facts or source of data, and a set of rules for manipulating that data. These rules are sometimes referred to as ‘If statements’ as they tend to follow the line of IF X happens THEN do Y.
Rule-based systems are not AI, and they are not machine learning. A rule-based system won’t change or update on its own, and it won’t ‘learn’ from mistakes.
Rule-based system automates processes by breaking them down into steps:
First comes the data or new business event.
Then comes the analysis: the part where the system conditonally processes the data against its rules. These rules outline triggers and the actions that should follow (or are triggered).
Then comes any subsequent automated follow-up actions.
Examples
A trigger might be an email containing the word “invoice”. An action might then be to forward the email to the finance team.
Rule-based modelingis a modeling approach that uses a set of rules that indirectly specifies a mathematical model.
Rule-based systemconstructed using automatic rule inference, such as rule-based machine learning, are normally excluded from this system type.
Drools - Wikipediais a business rule management system (BRMS) with a forward and backward chaining inference based rules engine, more correctly known as a production rule system, using an enhanced implementation of the Rete algorithm.
In case of rule based programming, we model a system as a set of constraints that the system should satisfy. Language runtime tries to create a process satisfying those constraints.
Rule based programming is also know was “Logic programming” is used in AI programming.
In Europe, Prolog is the dominate programming language for “Logic” or rule-based programming.
Logic Programming is to 1. define “truth” and 2. “logic equation that query the truth”. A general purpose equation solver “solves for values” (there may be more than one solution) for that equation.
object-oriented programming
In object oriented programming, a system appears as a cascade of message passes. A message is passed to the object representing the language runtime to start the process.
O-O uses 1. Creation of “objects” that have indefinite life times. and 2. Messages sent to objects for actions.