update optimisation