# JuMP nonlinear optimization error: unrecogniced function

**URL:** <https://discourse.julialang.org/t/jump-nonlinear-optimization-error-unrecogniced-function/11328>\
**Category:** Optimization (Mathematical)\
**Tags:** jump\
**Created:** [June 1, 2018, 7:35am UTC](https://discourse.julialang.org/t/jump-nonlinear-optimization-error-unrecogniced-function/11328 "2018-06-01T07:35:36Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![mrapo](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mrapo/32/3911_2.png) [@mrapo](https://discourse.julialang.org/u/mrapo)\
**Post date:** [June 1, 2018, 7:35am UTC](https://discourse.julialang.org/t/jump-nonlinear-optimization-error-unrecogniced-function/11328/1 "2018-06-01T07:35:36Z")

</div>

What does the following error mean when trying to optimize a nonlinear objective function f:

```
ERROR: LoadError: Unrecognized function "f" used in nonlinear expression.

```

This is how I tried to use the nonlinear features of JuMP:

```
using JuMP, NLopt
m = Model(solver = NLoptSolver(algorithm=:LD_SLSQP))
@variable(m, x[1:30])
for i in 1:30
    setvalue(x[i],x0[i])
end
@NLobjective(m, Min, f(x))
status = solve(m)
println("Objective value: ", getobjectivevalue(m))

```

---

<div class="post-metadata">

**Author:** ![blegat](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/blegat/32/217090_2.png) [@blegat](https://discourse.julialang.org/u/blegat)\
**Post date:** [June 1, 2018, 9:28am UTC](https://discourse.julialang.org/t/jump-nonlinear-optimization-error-unrecogniced-function/11328/2 "2018-06-01T09:28:42Z")

</div>

You need to [register](http://www.juliaopt.org/JuMP.jl/0.18/nlp.html#user-defined-functions) your function `f` by doing, e.g.,

```julia
JuMP.register(m, :f, 1, f, autodiff=true)

```

before `@NLobjective`.
