|
1 | 1 | What's new in PEPit 0.1.0 |
2 | 2 | ========================= |
3 | 3 |
|
4 | | -- The method ``add_constraint`` has been added to the class ``PEP`` for general constraints not necessarily related to a specific function. |
5 | | -For readability of your code, |
6 | | -we suggest to use the method ``set_initial_condition`` when the constraint is the initial one, |
7 | | -and the method ``add_constraint`` for any other constraint. |
| 4 | +- Adding general constraints to your problem. |
8 | 5 |
|
9 | | -- CVXPY solver options can be provided to the method ``PEP.solve``. |
| 6 | + | The method ``add_constraint`` has been added to the class ``PEP`` for general constraints not necessarily related to a specific function. |
| 7 | + | For readability of your code, |
| 8 | + we suggest to use the method ``set_initial_condition`` when the constraint is the initial one, |
| 9 | + and the method ``add_constraint`` for any other constraint. |
10 | 10 |
|
11 | | -- The `tracetrick` option of the method ``PEP.solve`` has been replaced by `dimension_reduction_heuristic`. |
12 | | -Set to None by default, this option can be set to "trace" or "logdet{followed by a number}" to use one of those heuristic. |
| 11 | +- Adding LMI constraints to your problem. |
13 | 12 |
|
14 | | -- The verbose mode of the method ``PEP.solve`` and of the provided examples files are now integers, allowing a bigger granularity. |
| 13 | + The method ``add_psd_matrix`` has been added to the class ``PEP`` and must be used to add LMI constraints to your problem. |
15 | 14 |
|
16 | | -- The parameters that characterize a function class must be provided directly as arguments of this function class, not through the dict "param" anymore. |
17 | | -Example: `PEP.declare_function(function_class=SmoothStronglyConvexFunction, mu=.1, L=1.)` |
| 15 | +- CVXPY options. |
18 | 16 |
|
19 | | -- ``null_point`` and ``null_expression`` have been added to the module ``PEPit`` to facilitate the access to a ``Point`` or an ``Expression`` initialized to 0. |
| 17 | + | PEPit uses CVXPY to solve the underlying SDP of your problem. |
| 18 | + | CVXPY solver options can be provided to the method ``PEP.solve``. |
| 19 | +
|
| 20 | +- Optimizing dimension of the solution. |
| 21 | + |
| 22 | + | The ``tracetrick`` option of the method ``PEP.solve`` has been replaced by ``dimension_reduction_heuristic``. |
| 23 | + | Set to None by default, this option can be set to "`trace`" or "`logdet{followed by a number}`" to use one of those heuristic. |
| 24 | +
|
| 25 | +- Granularity of the verbose mode has evolved. |
| 26 | + |
| 27 | + | The verbose mode of the method ``PEP.solve`` and of the provided examples files are now integers: |
| 28 | + - 0: No verbose at all |
| 29 | + - 1: PEPit information is printed but not CVXPY's |
| 30 | + - 2: Both PEPit and CVXPY details are printed |
| 31 | +
|
| 32 | +- Parameters of function classes. |
| 33 | + |
| 34 | + | The parameters that characterize a function class must be provided directly as arguments of this function class, not through the dict "param" anymore. |
| 35 | + | Example: ``PEP.declare_function(function_class=SmoothStronglyConvexFunction, mu=.1, L=1.)`` |
| 36 | +
|
| 37 | +- Initializing a Point or an Expression to 0. |
| 38 | + |
| 39 | + ``null_point`` and ``null_expression`` have been added to the module ``PEPit`` to facilitate the access to a ``Point`` or an ``Expression`` initialized to 0. |
20 | 40 |
|
21 | 41 | - 3 new function classes have been added: |
| 42 | + |
22 | 43 | - ``ConvexSupportFunction`` for convex support functions (see [1]) |
23 | 44 | - ``ConvexQGFunction``, for convex and quadratically upper bounded functions (see [2]) |
24 | 45 | - ``RsiEbFunction``, for functions verifying lower restricted secant inequality and upper error bound (see [3]) |
|
0 commit comments