CGAL 4.7 - Linear and Quadratic Programming Solver: CGAL Namespace Reference

\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)

CGAL 4.7 - Linear and Quadratic Programming Solver

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Classes | Enumerations | Functions
CGAL Namespace Reference

## Classes

class | Linear_program_from_iterators
| An object of class `Linear_program_from_iterators` describes a linear program of the form. More...
class | Nonnegative_linear_program_from_iterators
| An object of class `Nonnegative_linear_program_from_iterators` describes a linear program of the form. More...
class | Nonnegative_quadratic_program_from_iterators
| An object of class `Nonnegative_quadratic_program_from_iterators` describes a convex quadratic program of the form. More...
class | Quadratic_program_from_iterators
| An object of class `Quadratic_program_from_iterators` describes a convex quadratic program of the form. More...
class | Quadratic_program_from_mps
| An object of class `Quadratic_program_from_mps` describes a convex quadratic program of the general form. More...
class | Quadratic_program

\( \newcommand{\qprel}{\gtreqless} \newcommand{\qpx}{\mathbf{x}} \newcommand{\qpl}{\mathbf{l}} \newcommand{\qpu}{\mathbf{u}} \newcommand{\qpc}{\mathbf{c}} \newcommand{\qpb}{\mathbf{b}} \newcommand{\qpy}{\mathbf{y}} \newcommand{\qpw}{\mathbf{w}} \newcommand{\qplambda}{\mathbf{\lambda}} \) More...

class | Quadratic_program_options
| This is a class used for passing options to the linear and quadratic programming solvers. More...
class | Quadratic_program_solution
| An object of class `Quadratic_program_solution` represents the solution of a linear or convex quadratic program of the general form. More...

## Enumerations

enum | Quadratic_program_pricing_strategy { QP_CHOOSE_DEFAULT, QP_PARTIAL_DANTZIG, QP_DANTZIG, QP_PARTIAL_FILTERED_DANTZIG, QP_FILTERED_DANTZIG, QP_BLAND }
| This is an enumeration type containing the values `QP_CHOOSE_DEFAULT`, `QP_DANTZIG`, `QP_PARTIAL_DANTZIG`, `QP_FILTERED_DANTZIG`, `QP_PARTIAL_FILTERED_DANTZIG`, and`QP_BLAND`. More...
enum | Quadratic_program_status { QP_OPTIMAL, QP_INFEASIBLE, QP_UNBOUNDED }
| This is an enumeration type containing the values `QP_OPTIMAL`, `QP_INFEASIBLE`, and `QP_UNBOUNDED`. More...

## Functions

template<LinearProgram >
void | print_linear_program (std::ostream &out, const LinearProgram &lp, const std::string &problem_name=std::string("MY_MPS"))
| This function writes a linear program to an output stream (in `MPSFormat`). More...
template<NonnegativeLinearProgram >
void | print_nonnegative_linear_program (std::ostream &out, const NonnegativeLinearProgram &lp, const std::string &problem_name=std::string("MY_MPS"))
| This function writes a nonnegative linear program to an output stream (in `MPSFormat`). More...
template<NonnegativeQuadraticProgram >
void | print_nonnegative_quadratic_program (std::ostream &out, const NonnegativeQuadraticProgram &qp, const std::string &problem_name=std::string("MY_MPS"))
| This function writes a nonnegative quadratic program to an output stream (in `MPSFormat`). More...
template<QuadraticProgram >
void | print_quadratic_program (std::ostream &out, const QuadraticProgram &qp, const std::string &problem_name=std::string("MY_MPS"))
| This function writes a quadratic program to an output stream (in `MPSFormat`). More...
template<LinearProgram , ET >
Quadratic_program_solution< ET > | solve_linear_program (const LinearProgram &lp, const ET &, const Quadratic_program_options &options=Quadratic_program_options())
| This function solves a linear program, using some exact Integral Domain `ET` for its computations. More...
template<NonnegativeLinearProgram , ET >
Quadratic_program_solution< ET > | solve_nonnegative_linear_program (const NonnegativeLinearProgram &lp, const ET &, const Quadratic_program_options &options=Quadratic_program_options())
| This function solves a nonnegative linear program, using some exact Integral Domain `ET` for its computations. More...
template<NonnegativeQuadraticProgram , ET >
Quadratic_program_solution< ET > | solve_nonnegative_quadratic_program (const NonnegativeQuadraticProgram &qp, const ET &, const Quadratic_program_options &options=Quadratic_program_options())
| This function solves a nonnegative quadratic program, using some exact Integral Domain `ET` for its computations. More...
template<QuadraticProgram , ET >
Quadratic_program_solution< ET > | solve_quadratic_program (const QuadraticProgram &qp, const ET &, const Quadratic_program_options &options=Quadratic_program_options())
| This function solves a quadratic program, using some exact Integral Domain `ET` for its computations. More...
template<typename A_it , typename B_it , typename R_it , typename FL_it , typename L_it , typename FU_it , typename U_it , typename C_it >
Linear_program_from_iterators < A_it, B_it, R_it, FL_it, L_it, FU_it, U_it, C_it > | make_linear_program_from_iterators (int n, int m, const A_it &a, const B_it &b, const R_it &r, const FL_it &fl, const L_it &l, const FU_it &fu, const U_it &u, const C_it &c, std::iterator_traits< C_it >::value_type c0=std::iterator_traits< C_it >::value_type(0))
| This template function creates an instance of `Linear_program_from_iterators<A_it, B_it, R_it, FL_it, L_it, FU_it, U_it, C_it>` from given iterators. More...
template<A_it , B_it , R_it , C_it >
Nonnegative_linear_program_from_iterators < A_it, B_it, R_it, C_it > | make_nonnegative_linear_program_from_iterators (int n, int m, const A_it &a, const B_it &b, const R_it &r, const C_it &c, std::iterator_traits< C_it >::value_type c0=std::iterator_traits< C_it >::value_type(0))
| This template function creates an instance of `Nonnegative_linear_program_from_iterators<A_it, B_it, R_it, C_it>` from given iterators. More...
template<A_it , B_it , R_it , D_it , C_it >
Nonnegative_quadratic_program_from_iterators < A_it, B_it, R_it, D_it, C_it > | make_nonnegative_quadratic_program_from_iterators (int n, int m, const A_it &a, const B_it &b, const R_it &r, const D_it &d, const C_it &c, std::iterator_traits< C_it >::value_type c0=std::iterator_traits< C_it >::value_type(0))
| This template function creates an instance of `Nonnegative_quadratic_program_from_iterators<A_it, B_it, R_it, D_it, C_it>` from given iterators. More...
template<typename A_it , typename B_it , typename R_it , typename FL_it , typename L_it , typename FU_it , typename U_it , typename D_it , typename C_it >
Quadratic_program_from_iterators < A_it, B_it, R_it, FL_it, L_it, FU_it, U_it, D_it, C_it > | make_quadratic_program_from_iterators (int n, int m, const A_it &a, const B_it &b, const R_it &r, const FL_it &fl, const L_it &l, const FU_it &fu, const U_it &u, const D_it &d, const C_it &c, std::iterator_traits< C_it >::value_type c0=std::iterator_traits< C_it >::value_type(0))
| This template function creates an instance of `Quadratic_program_from_iterators<A_it, B_it, R_it, FL_it, L_it, FU_it, U_it, D_it, C_it>` from given iterators. More...