input: 
  from scipy.optimize import minimize 
  
  def optimize_objective_function(obj_func) -> list:
      """ Optimize the given objective function using the Nelder-Mead method.
      The function sets up the optimization problem with initial guess as [0.0, 0.0, 0.0],
      uses the Nelder-Mead method with a tolerance of 1e-8, and prints the optimization process.
      
      >>> def test_func(x):
      ...     return x[0]**2 + x[1]**2 + x[2]**2
      >>> optimize_objective_function(test_func)
      [0.0, 0.0, 0.0]
      """
      x0 = [0.0, 0.0, 0.0] 
      res = minimize(obj_func, x0, method='nelder-mead', options={'xtol': 1e-8, 'disp': True}) 
      return res.x
  
  # Example usage:
  def my_obj_func(x):
      return x[0]**2 + x[1]**2 + x[2]**2
  
  print(optimize_objective_function(my_obj_func))
  
output:     x0 = [0.0, 0.0, 0.0] 
      res = minimize(obj_func, x0, method='nelder-mead', options={'xtol': 1e-8, 'disp': True}) 
      return res.x