Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve numerically instable code connected to comparisons and CVX #60

Open
irublev opened this issue Dec 16, 2017 · 0 comments
Open

Improve numerically instable code connected to comparisons and CVX #60

irublev opened this issue Dec 16, 2017 · 0 comments
Labels

Comments

@irublev
Copy link
Contributor

irublev commented Dec 16, 2017

  1. There are several places where comparison is performed. Among them are
  • getIsGoodDirMat method of GenEllipsoid class

  • calculation of rank in ellunion_ea method of ellipsoid class

  • `gras.la.ismatposdef' function checking positive definiteness of a matrix

It is necessary to make the corresponding code more numerically stable, especially with the corresponding inequalities are strict (some tolerances are to be used that separate left- and right-hand sides of these inequalities from being close to each other within given tolerances). This functionlity should be thoroughly covered by tests.

  1. ellunion_ea method of ellipsoid class is very numerically instable (especially for bad conditioned shape matices of ellipsoids). This leads to highly instable performance of the test testEllUnionEaSensitivity from elltool.core.test.mlunit.EllipsoidIntUnionTC suite checking sensitivity of ellunion_ea under small disturbances of shape matrices of ellipsoids. The problem is that CVX optimizition is highly instable what concerns the argument (may be it is better to check stability with respect to the functional being the optimal volume of the ellipsoid containing the union of given ellipsoids). Other thing is that for two ellipsoids the corresponding optimization problem may be significantly simplified by reducing the initial case to the case of diagonal shape matrices. But for more than two ellipsoids the problem should be better investigated. It is possible also to extract some abstract optimization problem that is solved instably and to send this problem to CVX development team for investigation.
@irublev irublev added the bug label Dec 17, 2017
@irublev irublev changed the title Improve numerical instable code connected to comparisons and CVX Improve numerically instable code connected to comparisons and CVX Dec 17, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant