|
|
SeDuMi
Let SeDuMi seduce you, too!
|
|
|
|
New SeDuMi bugfix release! |
|
A new bugfix version, SeDuMi 1.1R3 was released on October 12, 2006. For a complete list of changes see the Version history link to the left. Thanks to Johan Löfberg, Michael Grant, Paul Tseng, Pablo Parrilo and Antonis Papachristodoulou for the bug reports.
|
|
|
A SeDuMi archive has been set up in the Downloads section. Here you can find several older version. These versions are no longer supported, but they offer a great view on how SeDuMi was developed. If you have an old version not listed here, please contact us at the email address at the bottom of the page. |
| |
|
|
|
|
|
Home Version history |
|
Version history
|
|
SeDuMi 1.2 64 bit version release notes |
20080409 Fix: SeDuMi now works on 64bit operating systems.
20080409 Fix: BLAS is used to improve performance.
|
|
SeDuMi 1.1R3 release notes |
20060712 Fix: A bug was discovered by Paul Tseng when using free variables together with rotated Lorentz cones.
20061010 Fix: The solutions were incorrect if the error measures were turned on.
20061010 Fix: Matlab R2006B does not support fprintf with fid=0, (i.e., no output). a Workaround is provided. (Thanks to Johan Löfberg)
20061010 Fix: The semidefinite preprocessing assumed that there are no free variables.
20061010 Fix: Michael Grant corrected a bug in the postprocessing phase.
20061010 Fix: A new, completely rewritten SDPA format reader is provided in the conversion folder. It is fast and it follows the SDPA standard. |
20041103 Feature: pars.stopat can now be a vector. The algorithm enters debug mode at each iteration specified in pars.stopat. The order does not matter, invalid values are ignored.
20041111 Fix: Cleaned up the code with M-Lint. All unused variables and never used assignments are removed. All | and & are replaced with || and && whenever it was possible. This speeds up conditional statements in the preprocessing phase. Unused .m and .c files are removed from the distribution.
20041129 Feature: Timing is changed. So far SeDuMi reported the CPU time spent in the main IPM loop. Now info.timing is a vector containing the time spent in the preprocessing, IPM and postprocessing, respectively. The old info.cpusec contains the total time of the algorithm. This does not make much difference now, since 99% of the time is spent in the IPM loop, but if more stuff is added to the pre- and postprocessing, this can be an issue.
20041129 Fix: Many if-then statements checking for data validity in the C code were replaced by mxAssert statements. The only exceptions are memory failure checks.
20040103 Fix: Fixed a small bug in wregion.m concerning division by zero. (Johan Löfberg)
20050110 Fix: A small change in Amul.m resulted in drastic speed improvement for middle-sized problems. Additionally, sum(c.*x) is much faster than c'*x if c and x are sparse. The moral is that taking the transpose of a sparse matrix is slow.
20050110 Fix: blkchol is now invoked directly from SeDuMi.m without sparchol.
20050110 Fix: Minor speed improvement in popK.m.
20050120 Fix: Minor speed improvement in the sdmaux* files (loop unrolling).
20050202 Feature: If pars.errors=1 then SeDuMi outputs the six errors measures defined in the 7th DIMACS challenge
paper that is available at http://plato.asu.edu/dimacs/node3.html. These are in info.err1, ...info.err6.
20050302 Fix: New default values. pars.eps=1e-8, pars.stepdif=2, pars.cg.qprec=1.
20050302 Feature: Preprocessing routines are now included. Diagonal SDP blocks are converted into nonnegative variables. Free variables are handled in a quadratic cone, split free veriables are detected in the linear part. The sparsity structure of A is corrected at the end of preprocessing.
20050302 Feature: New options to control preprocessing: pars.free, pars.sdp
20050302 Feature: Included a simple heuristic to turn step-differentiation on/off.
20050302 Fix: If ADA is actually dense then the symbolic Cholesky factorization and the minimum degree ordering are not performed. Also in this case SYMBADA is created directly as a fully dense matrix of ones stored as sparse.
20050302 Fix: The 'See also' references at the end of the help portions are now clickable.
20050510 Feature: The binaries are now built from Matlab, see Install.txt for details.
20050610 Fix: && and || were replaced by & and | to make the package compatible with Matlab 6.0 (R12)
20050621 Fix: A bug about complex variables has been reported by Michael C. Grant, the correct version is now available.
20050623 Fix: A bug about free variable handling has been reported by Johan Löfberg, the fixed version is now posted. This makes SeDuMi 1.1R2.
|
The following notes are by Jos Sturm.
Version 1.00 suffered from portability problems: it
worked under MATLAB 5.1, but not under 5.0 nor 5.2.
Andrew Ross did a good job in debugging to track down the
problems in MATLAB 5.0. Since release 1.01d, these problems are solved.
(The main problem was that MATLAB 5.0 releases all columns of a sparse
matrix if it's empty 0-by-n, which drastically changes the data structure.)
Vladimir Prodanovic reported an incompatibility problem with
MATLAB 5.2, which was fortunately solved more easily than the 5.0 problems.
(The problem was that MATLAB 5.2 starts to get "clever", by recognizing
an mxArray if it gets fed to mxFree, and then starts releasing its members.)
On a visit to the CRL, Tamas Terlaky quite easily made SeDuMi break
down, by giving a problem with only 1 constraint. It turned out that
the symbolic factorization routine in the Ng-Peyton-Zhang LIPSOL toolbox
generates memory violations, if it gets
a purely diagonal matrix. A LIPSOL patch is now
provided to work around this little bug.
Tim Davidson discovered a bug in "vectril.c", that shows only in
some cases where the A-matrix contains (vectorized) nonsymmetric constraints
for the SDP variables. The problems was solved in release 1.01e.
Tim Davidson did some serious testing on the product form
Cholesky, that handles dense columns from a SOC variable. He also made
suggestions concerning the parameters and the "info" output
structure. Results are incorporated in version 1.03.
Mats Bengtsson discovered a bug relating to complex data in
version 1.03beta. Fixed in verion 1.03.
Pierre Apkarian made valuable suggestions for improvements
(e.g. concerning warm start), which are not yet incorporated.
Katya Scheinberg discovered and fixed some problems with MATLAB 5.0
(concerning empty matrices).
Both Jehudi Maes and Erling Andersen helped to modify the
Makefile for NT/95/98 and installation instructions, to cope with
different configurations (OS, Matlab, compiler, utilities).
Between the 1.03 release and 1.05 release, I received input from
various users, which I stored in a mail folder that I cannot access
anymore. However, I remember in particular comments from Overton,
Henrion, Peaucelle, Davidson, and Bengtsson.
Hans Mittelmann commented several times on the 1.05 release. In
particular, his comments helped me to improve performance on problems
with a large number of small PSD cones (release 1.05R1).
Johan Loefberg reported a serious bug in the preprocessing of
second order cones (qreshape). This was fixed in release 1.05R2.
Pablo Parrilo discovered two problems in SeDuMi1.05R3. One has to
do with complex problems with K.ycomplex=[] but b complex, the other
concerns an wrong inequality in stepdif.m. The former also triggered a
problem with MATLAB 5, viz. the Q-matrix in eig() need not be unitary
if eigenvalues have multiplicity. This is now resolved by using
svd(). These patches have resulted in release 1.05R4.
|
|
|
|
|
|
SeDuMi History |
Developed by Jos F. Sturm
- 1997-1998

- 1998-2001

- 2001-2003

Developed by AdvOL
- 2004-2008

|
|
Who's Online |
|
We have 1 guest online |
|
|
|
This website is powered by Joomla, an open source content management system. If you have any problems with the site you can contact us by sending an email to (package name)@polik.net, where (package name) is sedumi.
|
|
|