Despite modern advancements in ML, rules engines are still preferred in some scenarios as their execution tends to be deterministic.
They have different heuristics for conflict resolution when more than one rule can be fired. Once you define the strategy, it will be consistent throughout the entire lifecycle.
Once the network is compiled, it ensures that previously matched patterns are not recomputed, which increases performance.