Engineering the AI applications (Part 3): Use of CLIPS for Forward Chaining applications.
In this short post, I would like to share a few lessons that we have learnt while developing the AI applications.?
As mentioned in my previous articles, developing a custom / specific purpose AI (Expert) system is our goal. Once we decided to build AI (Expert Systems), we have to deal with facts, rules and inferences in the given business context.
AI system consists of Facts (Knowledge DB), Rules, Inference engines
Rule Inference Engine:
In rule based AI (Expert) systems, the inference engine determines which rule antecedents, if any, are satisfied by the facts.
General strategies for implementing the rule inference engines:
Developing Forward Chaining AI (Expert) Systems:
Our focus is implementing an AI (Expert) systems with Forward Chaining once we have gathered facts, rules from the business context.
It was a tough task to choose a right programming library to build Forward Chaining applications. From our R&D and experimentation, we learned that CLIPS is a tool that we are looking for to build forward chaining applications.
CLIPS: C Language Integrated Production System (CLIPS).
领英推荐
The CLIPS website (https://clipsrules.net/) reads that the CLIPS is a rule?based programming language useful for creating expert systems and other programs where a heuristic solution is easier to implement and maintain than an algorithmic solution.
We could build very thread-safe, scalable architecture using CLIPS for predictive, simulations, what-if and heuristic kind of applications. CLIPS can easily integrated with REST API, SocketIO, Websockets easily providing the results to the Web clients.
Also, we found that since the CLIPS + REST APIs (we use uWebsockets for REST and WS interfaces) are "compiled", it offers performance, security and scale as well.
Conclusion:
If you are planning to build rule-based AI (Expert) systems, consider using CLIPS as well. I am sure it will save lot of effort and solves complex tasks of Rule Inference Engines.
References and Credits:
[1] Expert Systems - Principles and Programming by Joseph Giarratano
[2] Introduction to Artificial Intelligence and Expert Systems by Dan W. Patterson
[3] https://clipsrules.net/
[4] https://github.com/uNetworking/uWebSockets
Affiliations
I write posts for?Vidcentum R&D, where I am founder director. Some of the articles are published in my blogs / articles / posts as well as on the company timeline / posts.
Vidcentum R&D?is a data and software company. It provides AI, IT/OT related services.
Chief Innovation Officer and Global Head - Technology Advisory Services, Technology, Software and Services Business Group
2 年Indeed excellent rule based framework to look at. Thanks for sharing your thoughts and enabling us.