Sageopt

Latest version: v0.5.3

Safety actively analyzes 613544 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 3

0.5.4

0.5.3

Changed
- coniclifts: Fix regression introduced in previous version (optimization based dimension reduction was
inadvertently disabled).
- coniclifts: Remove an unstated assumption in the ``relent.py`` precompiled atom (and ``DualSageCone.compile``)
that certain inputs had to be linear (rather than affine) expressions of decision variables.
- coniclifts: Minor change to how DualSageCones compute violations.

0.5.2

Added
- coniclifts: the mosek interface now automatically dualizes certain problems.
- coniclifts: ``prob.solve`` accepts an argument to override or force dualization (when using MOSEK).
Changed
- coniclifts: heavily refactor precompiled affine atoms.
- relaxations: dual SAGE relaxations no longer introduce high-level slack variables
by default.

0.5.1

Added
- coniclifts: "abs" and "pos" NonlinearScalarAtoms.
- coniclifts: a field "age_witnesses" to PrimalSageCone objects.
- coniclifts: compile_objective.
- coniclifts: an option to have ``nu`` (an AGE witness) be defined by substituting
``nu = M_k u_k`` where ``M_k`` is a matrix whose columns form a basis for the nullspace
of an appropriate matrix. Eliminates the need for equality constraints in ordinary AGE cones.
- coniclifts: PrimalSageCone objects have a ``sigma_x`` method, for evaluating support function.
This method is now used when computing constraint violations.
- symbolic: SigDomain objects have a ``suppfunc`` method.
Changed
- symbolic: signomials will now broadcast to meet the size of an ndarray,
if the ndarray cannot be coerced into a scalar.
Removed
- coniclifts: compile_linear_expression.

0.5.0

Added
- symbolic: ``Signomial.from_dict`` and ``Polynomial.from_dict`` convenience functions for construction.
- relaxations: keyword argument checking in ``sig_constrained_relaxation`` and ``poly_constrained_relaxation``.
- coniclifts: an option to reduce epigraph variable usage in dual SAGE relaxations.
- coniclifts: mixed-integer support for MOSEK.
- coniclifts: ``PrimalSageCone.settings`` and ``DualSageCone.settings``: dictionary-valued properties which record
compilation settings (e.g. pre-solve behavior)
- coniclifts: Properly expose all MOSEK solver options.
- interop: Proper tests for GPKit integration.
- interop: CVXPY integration.
Changed
- symbolic: Signomials are now represented primarily by arrays, rather than a dictionary.
The dictionary is now only constructed when necessary, and is not used in any signomial
arithmetic operations.
- symbolic: Signomial and Polynomial constructors: both parameters ``alpha`` and ``c`` are *required*.
Removed
- coniclifts: private compilation constants (e.g. ``_REDUCTION_SOLVER_``) in ``sage_cones.py``
- coniclifts: private solver parameters (e.g. ``_DEACTIVATE_SCALING``) in ``mosek.py``

0.4.2

Added
- A ``metadata`` field to Signomial and Polynomial objects.
- ``sageopt.interop``, for interacting with other python projects. Right now, there
is only support for GPKit. The GPKit functions are minimal, and untested. They
will be properly fleshed out when version 0.5 is released.
Changed
- ``Signomial.partial`` and ``Polynomial.partial`` to correctly work with nonconstant coefficients.
- Essentially all "attributes" of Signomial or Polynomial objects have become "properties". The
most important change is that ``self.alpha`` and ``self.c`` are now only created when necessary;
the internal ``alpha_c`` dict still defines the Signomial or Polynomial as a mathematical object,
but this has also been turned into a hidden attribute ``self._alpha_c``.

Page 1 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.