Determining optimal police patrol deployments: a simulation-based optimisation approach combining agent-based modelling and genetic algorithms