With SCS you need a conic formulation so you need to use the ExponentialCone
.
You see in the doc that (x, y, z)
is in the cone iff y exp(x / y) <= z
and y > 0
.
So for instance exp(a) <= b
is rewritten as [a, 1, b] in ExponentialCone()
.
It’s not clear to me how to reformulate your model into a conic program though.
It does not even clear that the problem is convex.
For instance, in 0.5 <= a * exp(b) + c * exp(d)
, for the problem to be convex, you would need a * exp(b)
to be concave in a
and b
while it is convex in the direction b
.
If you replace @objective
with @NLobjective
and @constraint
by @NLconstraint
, you can use a nonlinear solver like Ipopt or NLopt.
1 Like