Add IGPADFOptimizor and GPSingleOptimizor