|
| HybZono * | clone () const override |
| | Clone method for polymorphic behavior.
|
| |
| std::unique_ptr< ConZono > | constraint_reduction () const override |
| | Execute constraint reduction algorithm from Scott et. al. 2016.
|
| |
| void | convert_form () override |
| | Converts the set representation between -1-1 and 0-1 forms.
|
| |
| void | operator*= (const Box &box) |
| | in-place cartesian product with box
|
| |
| void | operator*= (const Box &box)=delete |
| | Deleted: use operator* instead — result type would be Zono.
|
| |
| void | operator*= (HybZono &other) |
| | in-place cartesian product
|
| |
| void | operator*= (HybZono &other)=delete |
| | Deleted: use operator* instead — result type would be Zono or wider.
|
| |
| void | operator*= (Point &other) |
| | In-place Cartesian product with another Point. Use operator* for Zono/ConZono/HybZono/Box arguments, which return a wider type.
|
| |
| void | operator*= (zono_float f) |
| | scalar multiplication in place
|
| |
| void | operator+= (const Box &box) |
| | in-place minkowski sum with box
|
| |
| void | operator+= (const Box &box)=delete |
| | Deleted: use operator+ instead — result type would be Zono.
|
| |
| void | operator+= (const Eigen::Vector< zono_float, -1 > &v) |
| | in-place minkowski sum with point
|
| |
| void | operator+= (HybZono &other) |
| | in-place minkowski sum
|
| |
| void | operator+= (HybZono &other)=delete |
| | Deleted: use operator+ instead — result type would be Zono or wider.
|
| |
| void | operator+= (Point &other) |
| | In-place Minkowski sum with another Point (translation). Use operator+ for Zono/ConZono/HybZono/Box arguments, which return a wider type.
|
| |
| void | operator-= (const Box &box) |
| | in-place pontryagin difference with box
|
| |
| void | operator-= (const Box &box)=delete |
| | Deleted: use operator- instead — Point ⊖ Box does not yield a Point.
|
| |
| void | operator-= (const Eigen::Vector< zono_float, -1 > &v) |
| | in-place pontryagin difference with point
|
| |
| void | operator-= (Zono &other) |
| | in-place pontryagin difference
|
| |
| void | operator-= (Zono &other)=delete |
| | Deleted: use operator- instead — Point ⊖ Zono does not yield a Point.
|
| |
| | Point () |
| | Default constructor for Point class.
|
| |
| | Point (const Eigen::Vector< zono_float, -1 > &c) |
| | Point constructor.
|
| |
| std::string | print () const override |
| | Returns set information as a string.
|
| |
| std::unique_ptr< HybZono > | remove_redundancy (int) const override |
| | Removes redundant constraints and any unused generators.
|
| |
| void | set (const Eigen::Vector< zono_float, -1 > &c) |
| | Reset point object with the given parameters.
|
| |
| HybZono * | clone () const override |
| | Clone method for polymorphic behavior.
|
| |
| std::unique_ptr< ConZono > | constraint_reduction () const override |
| | Execute constraint reduction algorithm from Scott et. al. 2016.
|
| |
| void | convert_form () override |
| | Converts the set representation between -1-1 and 0-1 forms.
|
| |
| Eigen::Vector< zono_float, -1 > | get_center () |
| | get center of zonotope
|
| |
| zono_float | get_volume () |
| | Get volume of zonotope.
|
| |
| void | operator*= (const Box &box) |
| | in-place cartesian product with box
|
| |
| void | operator*= (HybZono &other) |
| | in-place cartesian product
|
| |
| void | operator*= (HybZono &other)=delete |
| | Deleted: use operator* instead — result type would be ConZono or HybZono.
|
| |
| void | operator*= (Zono &other) |
| | In-place Cartesian product (type-preserving: Zono or Point argument). Use operator* for ConZono/HybZono arguments, which return a wider type.
|
| |
| void | operator*= (zono_float f) |
| | scalar multiplication in place
|
| |
| void | operator+= (const Box &box) |
| | in-place minkowski sum with box
|
| |
| void | operator+= (const Eigen::Vector< zono_float, -1 > &v) |
| | in-place minkowski sum with point
|
| |
| void | operator+= (HybZono &other) |
| | in-place minkowski sum
|
| |
| void | operator+= (HybZono &other)=delete |
| | Deleted: use operator+ instead — result type would be ConZono or HybZono.
|
| |
| void | operator+= (Zono &other) |
| | In-place Minkowski sum (type-preserving: Zono or Point argument). Use operator+ for ConZono/HybZono arguments, which return a wider type.
|
| |
| std::string | print () const override |
| | Returns set information as a string.
|
| |
| std::unique_ptr< Zono > | reduce_order (int n_o) |
| | Perform zonotope order reduction.
|
| |
| void | set (const Eigen::SparseMatrix< zono_float > &G, const Eigen::Vector< zono_float, -1 > &c, bool zero_one_form=false) |
| | Reset zonotope object with the given parameters.
|
| |
| | Zono () |
| | Default constructor for Zono class.
|
| |
| | Zono (const Eigen::SparseMatrix< zono_float > &G, const Eigen::Vector< zono_float, -1 > &c, const bool zero_one_form=false) |
| | Zono constructor.
|
| |
| | ~Zono () override=default |
| |
| | ConZono () |
| | Default constructor for ConZono class.
|
| |
| | ConZono (const Eigen::SparseMatrix< zono_float > &G, const Eigen::Vector< zono_float, -1 > &c, const Eigen::SparseMatrix< zono_float > &A, const Eigen::Vector< zono_float, -1 > &b, const bool zero_one_form=false) |
| | ConZono constructor.
|
| |
| void | operator*= (const Box &box) |
| | in-place cartesian product with box
|
| |
| void | operator*= (ConZono &other) |
| | In-place Cartesian product (type-preserving: ConZono, Zono, or Point argument). Use operator* for operations with HybZono, which return HybZono.
|
| |
| void | operator*= (HybZono &other) |
| | in-place cartesian product
|
| |
| void | operator*= (HybZono &other)=delete |
| | Deleted: use operator* instead — result type would be HybZono.
|
| |
| void | operator*= (zono_float f) |
| | scalar multiplication in place
|
| |
| void | operator+= (const Box &box) |
| | in-place minkowski sum with box
|
| |
| void | operator+= (const Eigen::Vector< zono_float, -1 > &v) |
| | in-place minkowski sum with point
|
| |
| void | operator+= (ConZono &other) |
| | In-place Minkowski sum (type-preserving: ConZono, Zono, or Point argument). Use operator+ for operations with HybZono, which return HybZono.
|
| |
| void | operator+= (HybZono &other) |
| | in-place minkowski sum
|
| |
| void | operator+= (HybZono &other)=delete |
| | Deleted: use operator+ instead — result type would be HybZono.
|
| |
| void | set (const Eigen::SparseMatrix< zono_float > &G, const Eigen::Vector< zono_float, -1 > &c, const Eigen::SparseMatrix< zono_float > &A, const Eigen::Vector< zono_float, -1 > &b, bool zero_one_form=false) |
| | Reset constrained zonotope object with the given parameters.
|
| |
| virtual std::unique_ptr< Zono > | to_zono_approx () const |
| | Compute outer approximation of constrained zonotope as zonotope using SVD.
|
| |
| | ~ConZono () override=default |
| |
| Box | bounding_box (const SolverSettings &settings=get_default_solver_settings(), std::shared_ptr< OptSolution > *solution=nullptr, const WarmStartParams &warm_start_params=WarmStartParams()) |
| | Computes a bounding box of the set object as a Box object.
|
| |
| virtual std::unique_ptr< HybZono > | complement (const zono_float delta_m=100, const bool remove_redundancy=true, const SolverSettings &settings=get_default_solver_settings(), std::shared_ptr< OptSolution > *solution=nullptr, const int n_leaves=std::numeric_limits< int >::max(), const int contractor_iter=10) |
| | Computes the complement of the set Z.
|
| |
| bool | contains_point (const Eigen::Vector< zono_float, -1 > &x, const SolverSettings &settings=get_default_solver_settings(), std::shared_ptr< OptSolution > *solution=nullptr, const WarmStartParams &warm_start_params=WarmStartParams()) const |
| | Checks whether the point x is contained in the set object.
|
| |
| virtual std::unique_ptr< ConZono > | convex_relaxation () const |
| | Returns convex relaxation of the hybrid zonotope.
|
| |
| virtual Eigen::SparseMatrix< zono_float > | get_A () const |
| | Returns constraint matrix.
|
| |
| virtual Eigen::SparseMatrix< zono_float > | get_Ab () const |
| | Returns binary constraint matrix.
|
| |
| virtual Eigen::SparseMatrix< zono_float > | get_Ac () const |
| | Returns continuous constraint matrix.
|
| |
| virtual Eigen::Vector< zono_float, -1 > | get_b () const |
| | Returns constraint vector.
|
| |
| virtual Eigen::Vector< zono_float, -1 > | get_c () const |
| | Returns center vector.
|
| |
| virtual Eigen::SparseMatrix< zono_float > | get_G () const |
| | Returns generator matrix.
|
| |
| virtual Eigen::SparseMatrix< zono_float > | get_Gb () const |
| | Returns binary generator matrix.
|
| |
| virtual Eigen::SparseMatrix< zono_float > | get_Gc () const |
| | Returns continuous generator matrix.
|
| |
| std::vector< std::unique_ptr< ConZono > > | get_leaves (bool remove_redundancy=false, const SolverSettings &settings=get_default_solver_settings(), std::shared_ptr< OptSolution > *solution=nullptr, int n_leaves=std::numeric_limits< int >::max(), int contractor_iter=10) const |
| | Computes individual constrained zonotopes whose union is the hybrid zonotope object.
|
| |
| virtual int | get_n () const |
| | Returns dimension of set.
|
| |
| virtual int | get_nC () const |
| | Returns number of constraints in set definition.
|
| |
| virtual int | get_nG () const |
| | Returns number of generators in set definition.
|
| |
| virtual int | get_nGb () const |
| | Returns number of binary generators in set definition.
|
| |
| virtual int | get_nGc () const |
| | Returns number of continuous generators in set definition.
|
| |
| | HybZono ()=default |
| | Default constructor for HybZono class.
|
| |
| | HybZono (const Eigen::SparseMatrix< zono_float > &Gc, const Eigen::SparseMatrix< zono_float > &Gb, const Eigen::Vector< zono_float, -1 > &c, const Eigen::SparseMatrix< zono_float > &Ac, const Eigen::SparseMatrix< zono_float > &Ab, const Eigen::Vector< zono_float, -1 > &b, const bool zero_one_form=false, const bool sharp=false) |
| | HybZono constructor.
|
| |
| virtual bool | is_0_1_form () const |
| | Returns true if factors are in range [0,1], false if they are in range [-1,1].
|
| |
| bool | is_conzono () const |
| | Polymorphic type checking: true if set is a constrained zonotope.
|
| |
| bool | is_empty (const SolverSettings &settings=get_default_solver_settings(), std::shared_ptr< OptSolution > *solution=nullptr, const WarmStartParams &warm_start_params=WarmStartParams()) const |
| | Returns true if the set is provably empty, false otherwise.
|
| |
| bool | is_empty_set () const |
| | Polymorphic type checking: true if set is empty set object.
|
| |
| bool | is_hybzono () const |
| | Polymorphic type checking: true if set is a hybrid zonotope.
|
| |
| bool | is_point () const |
| | Polymorphic type checking: true if set is a point.
|
| |
| bool | is_sharp () const |
| | Returns true if set is known to be sharp.
|
| |
| bool | is_zono () const |
| | Polymorphic type checking: true if set is a zonotope.
|
| |
| std::unique_ptr< HybZono > | operator& (HybZono &other) const |
| | intersection
|
| |
| std::unique_ptr< HybZono > | operator* (const Box &box) const |
| | cartesian product with box
|
| |
| std::unique_ptr< HybZono > | operator* (HybZono &other) const |
| | cartesian product
|
| |
| std::unique_ptr< HybZono > | operator* (zono_float f) const |
| | scalar multiplication: returns f*Z
|
| |
| void | operator*= (const Box &box) |
| | in-place cartesian product with box
|
| |
| void | operator*= (HybZono &other) |
| | in-place cartesian product
|
| |
| void | operator*= (zono_float f) |
| | scalar multiplication in place
|
| |
| std::unique_ptr< HybZono > | operator+ (const Box &box) const |
| | minkowski sum with box
|
| |
| std::unique_ptr< HybZono > | operator+ (const Eigen::Vector< zono_float, -1 > &v) const |
| | minkowski sum with point
|
| |
| std::unique_ptr< HybZono > | operator+ (HybZono &other) const |
| | minkowski sum
|
| |
| void | operator+= (const Box &box) |
| | in-place minkowski sum with box
|
| |
| void | operator+= (const Eigen::Vector< zono_float, -1 > &v) |
| | in-place minkowski sum with point
|
| |
| void | operator+= (HybZono &other) |
| | in-place minkowski sum
|
| |
| std::unique_ptr< HybZono > | operator- () const |
| | unary minus: returns -I * this
|
| |
| std::unique_ptr< HybZono > | operator- (const Box &box) |
| | pontryagin difference with box
|
| |
| std::unique_ptr< HybZono > | operator- (const Eigen::Vector< zono_float, -1 > &v) |
| | pontryagin difference with point
|
| |
| std::unique_ptr< HybZono > | operator- (Zono &other) |
| | pontryagin difference
|
| |
| void | operator-= (const Box &box) |
| | in-place pontryagin difference with box
|
| |
| void | operator-= (const Eigen::Vector< zono_float, -1 > &v) |
| | in-place pontryagin difference with point
|
| |
| void | operator-= (Zono &other) |
| | in-place pontryagin difference
|
| |
| std::unique_ptr< HybZono > | operator| (HybZono &other) const |
| | union
|
| |
| Eigen::Vector< zono_float, -1 > | optimize_over (const Eigen::SparseMatrix< zono_float > &P, const Eigen::Vector< zono_float, -1 > &q, zono_float c=0, const SolverSettings &settings=get_default_solver_settings(), std::shared_ptr< OptSolution > *solution=nullptr, const WarmStartParams &warm_start_params=WarmStartParams()) const |
| | Solves optimization problem with quadratic objective over the current set.
|
| |
| Eigen::Vector< zono_float, -1 > | project_point (const Eigen::Vector< zono_float, -1 > &x, const SolverSettings &settings=get_default_solver_settings(), std::shared_ptr< OptSolution > *solution=nullptr, const WarmStartParams &warm_start_params=WarmStartParams()) const |
| | Returns the projection of the point x onto the set object.
|
| |
| void | set (const Eigen::SparseMatrix< zono_float > &Gc, const Eigen::SparseMatrix< zono_float > &Gb, const Eigen::Vector< zono_float, -1 > &c, const Eigen::SparseMatrix< zono_float > &Ac, const Eigen::SparseMatrix< zono_float > &Ab, const Eigen::Vector< zono_float, -1 > &b, bool zero_one_form=false, bool sharp=false) |
| | Reset hybrid zonotope object with the given parameters.
|
| |
| zono_float | support (const Eigen::Vector< zono_float, -1 > &d, const SolverSettings &settings=get_default_solver_settings(), std::shared_ptr< OptSolution > *solution=nullptr, const WarmStartParams &warm_start_params=WarmStartParams()) |
| | Computes support function of the set in the direction d.
|
| |
| virtual | ~HybZono ()=default |
| |