Rule Engines and Agent-Based Systems