See attached notebook. The minimization is done by doing a global random search with ParametricIPOPTMinimize