when I use Ipopt as folows:
m = Model(Ipopt.Optimizer)
set_optimizer_attributes(m, "LOG" => 0)
...
g_p_max_soc=vcat(node[i].p̅ - g_p[i],arg_p)
@constraint(m, g_p_max_soc in SecondOrderCone())
there are errors as below:
MOI.VectorAffineFunction{Float64}`-in-`MOI.SecondOrderCone` constraints are not supported and cannot be bridged into supported constrained variables and constraints. See details below:
but when I use Mosek solver instead
m = Model(Mosek.Optimizer)
set_optimizer_attributes(m, "LOG" => 0)
The porgram is ok. I don’t know why. Thanks for your reply.
             
            
              
              
              
            
            
           
          
            
            
              If you look here: Installation Guide · JuMP, it lists the solvers and what kinds of problems they support. Optimization with a constraint with SecondOrderCone() like you have is called SOCP (second-order cone programming), so you need a solver that supports that, like Mosek. As the error message says, Ipopt doesn’t support that kind of problem, and JuMP can’t automatically reformulate the problem in a way that Ipopt does support.
             
            
              
              
              2 Likes
            
            
           
          
            
            
              Thank you very much, I have known it.
I thougt Ipopt could solve socp problem, until I just saw this instruction manual
             
            
              
              
              1 Like
            
            
           
          
            
            
              Side note, if you reformulate your SecondOrderCone constraint in a polynomial or QCQP form then you can send it to Ipopt.
             
            
              
              
              1 Like
            
            
           
          
            
            
              Ok,thank you @ericphanson , I tried Gurobi solver, program could work well.
Also, thank you @ccoffrin , I will try reformulate SecondOrderCone constraint in a polynomial or QCQP form, and solve problem with Ipopt.
             
            
              
              
              2 Likes