input: def optimize_objective(obj_func):
      """
      Given an objective function, this program set up an optimization problem using the scipy.optimize.minimize function.
      
      Example:
      >>> def obj_func(x):
      ...     return (x[0] - 1)**2 + (x[1] - 2.5)**2
      >>> print(optimize_objective(obj_func))
      [1. 2.5]
      """
      from scipy.optimize import minimize
  
      def optimize():
          # set up optimization problem
          x0 = [0.0, 0.0, 0.0]
          res = minimize(obj_func, x0, method='nelder-mead', options={'xtol': 1e-8, 'disp': True})
          return res.x
  
      return optimize()
output:     from scipy.optimize import minimize
  
      def optimize():
          # set up optimization problem
          x0 = [0.0, 0.0]
          res = minimize(obj_func, x0, method='nelder-mead', options={'xtol': 1e-8, 'disp': True})
          return res.x
  
      return optimize()