Yes, it will be supported eventually but I can't give a time frame.
On Monday, February 29, 2016 at 8:37:30 PM UTC-5, [email protected] wrote: > > OK, thanks Miles. I'll head to Optim.jl. > Is there an intention to implement this functionality? > Suggestion for julia-opt is noted, thanks again. > > > On Tuesday, March 1, 2016 at 12:24:05 PM UTC+11, Miles Lubin wrote: >> >> There's no syntax for this at the moment, it's a known issue. The problem >> is that JuMP's internal representation of nonlinear expressions doesn't >> allow vectors or matrices. >> For the moment we're targeting the use cases where the function is low >> dimensional. For box-constrained nonlinear optimization you can use >> Optim.jl. >> >> (By the way, better to post questions like these to julia-opt >> <https://groups.google.com/forum/#!forum/julia-opt>.) >> >> On Monday, February 29, 2016 at 6:50:50 PM UTC-5, [email protected] >> wrote: >>> >>> Hi there, >>> >>> I have a nonlinear varargs function f(x...) that I'd like to maximize. >>> That is, the function is defined as follows: >>> >>> function f(x...) >>> # do stuff here >>> result >>> end >>> >>> With a small number of arguments, for example 2, I can write the >>> following and get the correct result: >>> >>> registerNLFunction(:f, 2, f, autodiff=true) >>> m = Model() >>> @defVar(m, x[1:2] >= 0.0) >>> @setNLObjective(m, Max, f(x[1], x[2])) >>> >>> With a large number of arguments, say 100, I'd prefer not to manually >>> write f(x[1], ..., x[100]) in the @setNLObjective macro. >>> I have tried the following to no avail: >>> @setNLObjective(m, Max, f(x...)) >>> @setNLObjective(m, Max, f(tuple(x...))) >>> >>> Is there a way to get this going for 100 variables without having to >>> manually write f(x[1], ..., x[100])? >>> >>> Cheers, >>> Jock >>> >>> p.s. Thanks for the great work on 0.12.0 - it's awesome. >>> >>>
