@Override
	public boolean halt() {
		if(previousGBest != null){
			double currentGradient = (currentGBest - previousGBest) / currentGBest;
			if(currentGradient < 0){
				currentGradient = currentGradient * -1;
			}
			if(currentGradient <= gradient){
				return true;
			}else{
				return false;
			}
		}else{
			return false;
		}
	}