# Gurobi convex optimization

**URL:** <https://discourse.julialang.org/t/gurobi-convex-optimization/111850>\
**Category:** Optimization (Mathematical)\
**Tags:** jump, gurobi\
**Created:** [March 19, 2024, 11:30pm UTC](https://discourse.julialang.org/t/gurobi-convex-optimization/111850 "2024-03-19T23:30:38Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![tardis438](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tardis438/32/207861_2.png) [@tardis438](https://discourse.julialang.org/u/tardis438)\
**Post date:** [March 19, 2024, 11:30pm UTC](https://discourse.julialang.org/t/gurobi-convex-optimization/111850/1 "2024-03-19T23:30:38Z")

</div>

I am using Gurobi and JuMP to solve a fairly simple convex optimization problem but I am a newbie and don’t know the right syntax.  
I want to solve (N is a fixed and known integer (eg 100))  
\min \sum\_{i=1}^{N} (-log x[i]) subject to some linear constraints on the N-dimensional vector x.

I have already got some code to work that minimizes the sum of some quadratic terms subject to some linear constraints. My problem is doing an objective function involving logs.  
Any help would be appreciated. Thank you.

---

<div class="post-metadata">

**Author:** ![odow](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/odow/32/28685_2.png) [@odow](https://discourse.julialang.org/u/odow)\
**Post date:** [March 19, 2024, 11:59pm UTC](https://discourse.julialang.org/t/gurobi-convex-optimization/111850/2 "2024-03-19T23:59:21Z")

</div>

Hi @tardis438, welcome to the forum.

Gurobi does not easily support problems with `log`.

You could use Ipopt instead:

```julia
using JuMP, Ipopt
N = 100
model = Model(Ipopt.Optimizer)
@variable(model, 0.01 <= x[1:N] <= 1)
@objective(model, Min, sum(-log(x[i]) for i in 1:N))
optimize!(model)

```

---

<div class="post-metadata">

**Author:** ![tardis438](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tardis438/32/207861_2.png) [@tardis438](https://discourse.julialang.org/u/tardis438)\
**Post date:** [March 20, 2024, 2:35am UTC](https://discourse.julialang.org/t/gurobi-convex-optimization/111850/3 "2024-03-20T02:35:14Z")

</div>

> [@odow](#):
>
> `using JuMP, Ipopt`

Thank you! It works — and works perfectly now!
