1st assignment gredient descent