[Ipopt] Posting Ipopt Problems for help
Tony Kelman
kelman at berkeley.edu
Thu Nov 8 12:49:17 EST 2012
Which folder did you add to the Matlab path? If you do "make install" then
you should add the "lib" directory to the Matlab path - it will contain both
the ipopt.mexw32 file and an ipopt.m file which contains commented help
text. If you don't do "make install", the ipopt.m file is located one folder
above the "src" directory. You can also access the ipopt.m help file at
https://projects.coin-or.org/Ipopt/browser/trunk/Ipopt/contrib/MatlabInterface/ipopt.m
The print level of ipopt can be modified in the Matlab interface by setting
options.ipopt.print_level to some value between 0 and 12 (default is 5). See
http://www.coin-or.org/Ipopt/documentation/node59.html for a list of other
Ipopt options you can modify in a similar way - a small number of them might
not be implemented with the Matlab interface, but most should be.
Someone contacted me offline recently with a similar issue in the Matlab
interface, where he encountered the "Invalid number" message and observed
non-repeatable results. I believe this may happen if your gradient of
objective function outputs a Matlab sparse vector, the mex file might try to
access data beyond the valid memory addresses in the gradient array. I'll
look at the Matlab interface source code in a bit more detail to figure out
if/how it handles this case and I'll see if I can fix any confusing
behavior. In the meantime, make sure your gradient function outputs a full()
vector.
-Tony
-----Original Message-----
From: ??? <chambertinofn at gmail.com>
Date: Wed, 7 Nov 2012 22:13:42 +0800
To: Stefan Vigerske <stefan at math.hu-berlin.de>
Cc: ipopt at list.coin-or.org
Subject: Re: [Ipopt] Posting Ipopt Problems for help
Thank you.
I'll try printing the function evaluations on the screen to trace the
program. But as for increasing the print level of ipopt, I don't know how
to do it.
In the tutorial on the official website, it's said that after the compile
of the ipopt matlab interface, I can get the usage instruction of it by
typing 'help ipopt' in the matlab prompt like the other matlab original
functions if I set the ipopt.mexw32 directory in the 'set path' window. But
after those procedure including compile and setting path, I actually get
'ipopt not found' instead of any usage instruction when I typed 'help
ipopt'. So the only way to learn how to use ipopt matlab interface is the
four examples in the ipopt source code.
So if there's any detail usage document of the ipopt matlab interface,
please send me a copy.
Thank you very much.
------------------------------------------------------------
Regards
Neo Ma ??? | Graduate
T:+86-10-6278 2545 | E:chambertinofn at gmail.com
------------------------------------------------------------
Dept. of Electrical Engineering, Tsinghua Univ.
BLDG. 28# RM.312 Tsinghua Univ. Beijing 100084 P.R.CHINA
------------------------------------------------------------
Remember what should be remembered, and forget what should be forgotten.
Alter what is changeable, and accept what is immutable.
More information about the Ipopt
mailing list