Implementation traingd optimisation 4