A logic-based event controller for means-end reasoning in simulation environments