Implementation traingd optimisation 1