code: @Override
  	public void initialize(double[] initial, int numberOfParameters, double minimumFunctionValue) {
  		super.initialize(initial, numberOfParameters,minimumFunctionValue);
  		y.reshape(numberOfParameters,1);
  
  		xPrevious.reshape(numberOfParameters,1);
  		x.reshape(numberOfParameters,1);
  
  		// set the previous gradient to zero
  		gradientPrevious.reshape(numberOfParameters,1);
  		gradientPrevious.zero();
  
  		firstIteration = true;
  	}
docs: Override parent to initialize matrices