[SciPy-user] Semidefinite programming in scipy ?
Zhiwen Chong
zhiwen.chong at elf.mcgill.ca
Mon Jul 4 11:39:32 EDT 2005
Hi Nils,
On 4-Jul-05, at 9:53 AM, Nils Wagner wrote:
> Is it possible to solve semidefinite programs with scipy ?
>
> minimize t
> subject to t I -A(x) \ge 0
>
> with variables x \in R^k and t \in R. A(x) depends affinely on x
> and I denotes the identity.
>
> Reference:
> Vandenberghe, L., Boyd, S.
> Semidefinite Programming
> SIAM Review 38 1996 pp. 49-95
This probably doesn't answer your question, but might give you some
ideas:
My project involves extensive use of large-scale optimization, and
what I did was to write a meta-language (using the pyparsing module)
to generate AMPL code from a simpler syntax describing my problem.
AMPL in turn generates a stub for any number of high performance
solvers that support it. By taking this approach, my NLP isn't tied
to any single solver, and I will have the freedom to try different
solvers if I should need to in the future. (though I am currently
using IPOPT exclusively, available for free at http://www.coin-or.org/
Ipopt/)
The only snag is that AMPL is not free, but it really is a very good
mathematical programming language, and academic licenses are fairly
inexpensive. If your problem is very complicated or very large, it is
usually much easier to write it in a dedicated mathematical
programming language than a general purpose one.
For SDPs in particular, you may want to look at PENNON.
http://www2.am.uni-erlangen.de/~kocvara/pennon/
It uses the SDPA input file -- perhaps it is possible to write some
code in Python to generate one of these chappies?
Zhiwen Chong
--------------------------------
McMaster Advanced Control Consortium
Dept. of Chemical Engineering
McMaster University
Hamilton ON L8S 4L7
Canada
Tel: (905) 525-9140 Ext. 22008
FAX: (905) 521-1350
macc.mcmaster.ca
--------------------------------
More information about the SciPy-User
mailing list