While some people might think they use artificial intelligence or better said machine learning, they might in fact just use a rule engine. In order to help understand the difference, let me try to provide a very simplified example that should help understand the difference and potentially help selecting vendors providing real smart applications able to learn from data.
Note that the intended audience of this short article is people without expertise in machine learning.
Let us take an ( oversimplified) example from the financial services space where the system needs to find the best suitable investment strategy for a client based on information at hand or through a questionnaire. Let us assume we have 3 clients:
Client A is 65 years old, has a wealth of 1 million EUR, is conservative and has no expertise in financial instruments
Client B is 23 years old, has little savings, is happy to take limited risks and has expertise in financial instruments
Client C is 45 years old entrepreneur, has 400k savings, mostly in his company shares, is willing to take risks but has little financial instruments expertise
Let us assume the rule engine has following pre-defined rules to classify and recommend the best suited investment strategy:
If client is has a conservative risk appetite, has no expertise in financial instruments and is more than 60 years old and has more than 500k EUR wealth, then investment strategy would be mostly income oriented
If client has more than 500k EUR wealth and is willing to take risks and has financial expertise then investment strategy proposed would be a growth strategy
If client does not fit in any of the above categories, then it would be proposing a balanced strategy or simply return no result
In the best case, if we would use a rule engine the client 2 and 3 would simply be recommended a balanced strategy which is a catch all rule for all the client where there is no rule that can match 100% ( in a rule engine there is nothing else than 100% match unlike an ML model). In the worst case, the rule engine would not return anything as it was not coded for unforeseen observations ( input data).
In case of a trained machine learning model, the model would be trained with the first 2 examples ( observations as we call it in ML), now question is what happens with example number 3. It depends on the model chosen, but if we take a decision tree or a multi class classification algorithm or a simple clustering algorithm for example, client 3 would probably fall into category 1 as it looks to be closer to client 1 than client 2. The model would calculate a probability of the client class or cluster, let us say 66% of chances that the client would belong to class3 and assign the answer back. This is better than the random assignment made by a catch all rule in the case of a rule engine in any case. Now if we add more real life examples, the model will continue to estimate which previous observation is closer to the new data and allocate a category accordingly. We can then add a feedback loop to the algorithm and it will continue to learn based on new observations. Obviously a rule engine is not dynamic and its rules are fixed until we change them and will not learn while a machine learning model will try to find the best result and give a probability of matching, which gives a much better client experience ( Let us think of Netflix giving movie recommendation).
The nice thing about machine learning is that we can also extend the model with the model chosen by the client based on the recommendation and turn it into a recommender system that would calculate similarities of users and based on that propose the best suited model.
We can also think about implementing reinforcement learning, that is based on the client selection, we would refine the model step by step and get closer to client wishes, but that is another story.
So when anybody speak about AI or better said ML, be sure that you are not in fact buying a rule engine.