[Ipopt] Best and free way of interacting with IPOPT on Linux
Edson Cordeiro do Valle
edsoncv at enq.ufrgs.br
Tue May 20 09:36:36 EDT 2008
Hello all
Well just to revival an old list topic, but I think it's an
important tip for Ipopt users.
One of the free tools (but not open source) to interact with Ipopt
it's the EMSO simulator (http://www.enq.ufrgs.br/trac/alsoc).
Its a project leaded by Prof. Argimiro Secchi and Phd Rafael Pelegrini
Soares at Chemical Eng. Department at Federal Univ. of Rio Grande do Sul
( a South Brazilian University).
EMSO is an equation-oriented dynamic and steady-state simulator and
optimizer, it uses a high-level modeling language. This software
provides a set of sparse algebra and automatic differentiation
functionalities that evaluate a NLA (Non-Linear Algebraic Equations)
system in a fast and efficient way. Some NLP solvers (OPT++, Ipopt and a
complex implementation) were interfaced with the software. In EMSO, the
optimization problem can be easily described as bellow (HS71 problem):
Optimization hs71
VARIABLES
x1 as Real(Default=1, Lower=1, Upper=5);
x2 as Real(Default=5, Lower=1, Upper=5);
x3 as Real(Default=5, Lower=1, Upper=5);
x4 as Real(Default=1, Lower=1, Upper=5);
MINIMIZE
x1*x4*(x1+x2+x3) + x3;
EQUATIONS
x1*x2*x3*x4 > 25;
x1*x1 + x2*x2 + x3*x3 + x4*x4 = 40;
OPTIONS
NLPSolver = "ipopt_emso";
NLPSolveNLA = 1;
relativeAccuracy = 1e-6;
end
Since EMSO uses an object oriented approach, the code is highly
reusable. Although it was designed to chemical eng. problems, it's
possible to use it to model any kind of problem. The work of our team
in Emso developing and all other features will be presented an EngOPT (
a Optimization congress that will be held in Rio de Janeiro - Brazil,
next month, see: http://www.engopt.org/en/introduction.php). Of course
it does not have all language features as Gams or Ampl, but is a free
and robust alternative.
Note that due to some license issues, it can only be used for academic
purposes.
enjoy EMSO
--
Edson C. do Valle
edsoncv at enq.ufrgs.br
Skype: edson.cv
More information about the Ipopt
mailing list