monitor and optimise