CGAL 6.1 - Linear and Quadratic Programming Solver
Loading...
Searching...
No Matches
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
 An object of class Quadratic_program 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_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, andQP_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"))
 
template<NonnegativeLinearProgram >
void print_nonnegative_linear_program (std::ostream &out, const NonnegativeLinearProgram &lp, const std::string &problem_name=std::string("MY_MPS"))
 
template<NonnegativeQuadraticProgram >
void print_nonnegative_quadratic_program (std::ostream &out, const NonnegativeQuadraticProgram &qp, const std::string &problem_name=std::string("MY_MPS"))
 
template<QuadraticProgram >
void print_quadratic_program (std::ostream &out, const QuadraticProgram &qp, const std::string &problem_name=std::string("MY_MPS"))
 
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.
 
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.
 
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.
 
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.
 
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.
 
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.
 
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.
 
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.