October 2017 • Software
MADARA is general-purpose middleware used for distributed timing, control, knowledge and reasoning, and quality-of-service.
MADARA was originally developed as an agent-based middleware specifically for real-time, distributed artificial intelligence, but is now more general purpose for distributed timing, control, knowledge and reasoning, and quality-of-service. MADARA is composed of several tools and middleware. The main entry point into the system is the Knowledge and Reasoning Language (KaRL) Engine, which provides a real-time scripting language for nanosecond execution times hooked into a flexible transport layer for distributed reasoning. The KaRL engine also supports object-oriented C++, Java, and Python programming through Containers, classes that provide abstractions and references for variable location within the KaRL Knowledge Base.