Steven G. Johnson <stevenj.mit@...> writes: > > > > On Nov 25, 2013, at 9:56 AM, Adel M <adelmn- [email protected]> wrote: > > Is it possible to add constraints to derivative-free optimization algorithms? > > > Some of them, e.g. COBYLA, already support constraints. It says in the manual which algorithms support nonlinear constraints. > > Other algorithms like Nelder-Mead in NLopt don't currently support nonlinear constraints, but they could be used in conjunction with the AugLag algorithm to implement constraints. > > I have an optimization problem of an X vector of size n (n >20) and have a sum constraint on some X[i]: example X[1]+X[2]+..+X[10]=1 > > > > A simple linear constraint like that can be implemented by elimination. Just optimize over X[1…9] and set X[10] = 1 - (X[1]+…+X[9]). > > (Unless there is also a bound constraint on X[10]?) > > > > <div> > <br><div> > <div>On Nov 25, 2013, at 9:56 AM, Adel M <<a href="mailto:adelmn@...">adelmn@...</a>> wrote:</div> > <br class="Apple-interchange-newline"><blockquote type="cite"><div dir="ltr"> > <span>Is it possible to add constraints to </span><a href="http://ab- initio.mit.edu/wiki/index.php/NLopt_Algorithms#Local_derivative- free_optimization" target="_blank">derivative-free optimization</a> <span> algorithms?</span> > </div></blockquote> > <div><br></div> > <div>Some of them, e.g. COBYLA, already support constraints. It says in the manual which algorithms support nonlinear constraints.</div> > <div><br></div> > <div>Other algorithms like Nelder-Mead in NLopt don't currently support nonlinear constraints, but they could be used in conjunction with the AugLag algorithm to implement constraints.</div> > <br><blockquote type="cite"><div dir="ltr"><div> > <br><div>I have an optimization problem of an X vector of size n (n >20) and have a sum constraint on some X[i]: example X[1]+X[2]+..+X[10]=1</div> > </div></div></blockquote> > <br> > </div> > <div>A simple linear constraint like that can be implemented by elimination. Just optimize over X[1…9] and set X[10] = 1 - (X[1]+…+X[9]).</div> > <div><br></div> > <div>(Unless there is also a bound constraint on X[10]?)</div> > <br> > </div> >
Thank you for your reply! I already use the elimination but the results are not as good as expected. I will try with other algorithms. First tests with COBYLA show better results. Hope newer versions of NlOpt will integrate Constraint with the Nelder-Mead algorithm. Kind regards, Adel _______________________________________________ NLopt-discuss mailing list [email protected] http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/nlopt-discuss
