Skip to content

Commit

Permalink
MOI termination statuses (fixes #129)
Browse files Browse the repository at this point in the history
  • Loading branch information
goulart-paul committed Jun 2, 2023
1 parent e5dd57b commit 1c8ab27
Showing 1 changed file with 14 additions and 8 deletions.
22 changes: 14 additions & 8 deletions src/MOI_wrapper/MOI_wrapper.jl
Original file line number Diff line number Diff line change
Expand Up @@ -44,21 +44,25 @@ const MOItoClarabelCones = Dict([
# something along those lines.

const ClarabeltoMOITerminationStatus = Dict([
Clarabel.SOLVED => MOI.OPTIMAL,
Clarabel.MAX_ITERATIONS => MOI.ITERATION_LIMIT,
Clarabel.MAX_TIME => MOI.TIME_LIMIT,
Clarabel.PRIMAL_INFEASIBLE => MOI.INFEASIBLE,
Clarabel.DUAL_INFEASIBLE => MOI.DUAL_INFEASIBLE,
Clarabel.ALMOST_SOLVED => MOI.ALMOST_OPTIMAL,
Clarabel.NUMERICAL_ERROR => MOI.NUMERICAL_ERROR,
Clarabel.INSUFFICIENT_PROGRESS => MOI.NUMERICAL_ERROR
Clarabel.SOLVED => MOI.OPTIMAL,
Clarabel.MAX_ITERATIONS => MOI.ITERATION_LIMIT,
Clarabel.MAX_TIME => MOI.TIME_LIMIT,
Clarabel.PRIMAL_INFEASIBLE => MOI.INFEASIBLE,
Clarabel.DUAL_INFEASIBLE => MOI.DUAL_INFEASIBLE,
Clarabel.ALMOST_SOLVED => MOI.ALMOST_OPTIMAL,
Clarabel.ALMOST_PRIMAL_INFEASIBLE => MOI.ALMOST_INFEASIBLE,
Clarabel.ALMOST_DUAL_INFEASIBLE => MOI.ALMOST_DUAL_INFEASIBLE,
Clarabel.NUMERICAL_ERROR => MOI.NUMERICAL_ERROR,
Clarabel.INSUFFICIENT_PROGRESS => MOI.NUMERICAL_ERROR
])

const ClarabeltoMOIPrimalStatus = Dict([
Clarabel.SOLVED => MOI.FEASIBLE_POINT,
Clarabel.PRIMAL_INFEASIBLE => MOI.INFEASIBLE_POINT,
Clarabel.DUAL_INFEASIBLE => MOI.INFEASIBILITY_CERTIFICATE,
Clarabel.ALMOST_SOLVED => MOI.NEARLY_FEASIBLE_POINT,
Clarabel.ALMOST_PRIMAL_INFEASIBLE => MOI.INFEASIBLE_POINT,
Clarabel.ALMOST_DUAL_INFEASIBLE => MOI.NEARLY_INFEASIBILITY_CERTIFICATE,
Clarabel.MAX_ITERATIONS => MOI.OTHER_RESULT_STATUS,
Clarabel.MAX_TIME => MOI.OTHER_RESULT_STATUS,
Clarabel.NUMERICAL_ERROR => MOI.OTHER_RESULT_STATUS,
Expand All @@ -70,6 +74,8 @@ const ClarabeltoMOIDualStatus = Dict([
Clarabel.PRIMAL_INFEASIBLE => MOI.INFEASIBILITY_CERTIFICATE,
Clarabel.DUAL_INFEASIBLE => MOI.INFEASIBLE_POINT,
Clarabel.ALMOST_SOLVED => MOI.NEARLY_FEASIBLE_POINT,
Clarabel.ALMOST_PRIMAL_INFEASIBLE => MOI.NEARLY_INFEASIBILITY_CERTIFICATE,
Clarabel.ALMOST_DUAL_INFEASIBLE => MOI.INFEASIBLE_POINT,
Clarabel.MAX_ITERATIONS => MOI.OTHER_RESULT_STATUS,
Clarabel.MAX_TIME => MOI.OTHER_RESULT_STATUS,
Clarabel.NUMERICAL_ERROR => MOI.OTHER_RESULT_STATUS,
Expand Down

0 comments on commit 1c8ab27

Please sign in to comment.