Limbo
|
namespace for Limbo.Solvers More...
Namespaces | |
lpmcf | |
namespace for Limbo.Solvers.lpmcf | |
Classes | |
class | CapacityScaling |
Capacity scaling algorithm for min-cost flow. More... | |
struct | CompareTermByVariable |
Comapre term by variable. More... | |
class | CostScaling |
Cost scaling algorithm for min-cost flow. More... | |
class | CycleCanceling |
Cycle canceling algorithm for min-cost flow. More... | |
class | DualMinCostFlow |
LP solved with min-cost flow. A better implementation of limbo::solvers::lpmcf::LpDualMcf. More... | |
class | FeasibleSearcher |
Base heuristic to search for feasible solutions. More... | |
class | GurobiLinearApi |
Gurobi API with limbo::solvers::LinearModel. More... | |
class | GurobiParameters |
Base class for custom Gurobi parameters. More... | |
class | L2NormScaler |
Scaling scheme with default L2 norm scaling. More... | |
class | LagMultiplierUpdater |
A base helper function object to update lagrangian multipliers using subgradient descent. All other schemes can be derived from this class. More... | |
class | LinearConstraint |
Describe linear constraint. More... | |
class | LinearExpression |
Describe linear expressions in optimization problem. More... | |
class | LinearModel |
model to describe an optimization problem More... | |
class | LinearTerm |
Linear term. More... | |
class | LPSolveLinearApi |
LPSolve API with limbo::solvers::LinearModel. More... | |
class | LPSolveParameters |
Base class for custom LPSolve parameters. More... | |
struct | MatrixCSR |
Compressed sparse row (CSR) matrix. More... | |
class | MinCoefficientScaler |
Scaling scheme with minimum coefficient in an expression. More... | |
class | MinCostFlow |
LP solved with min-cost flow. More... | |
class | MinCostFlowSolver |
A base class of min-cost flow solver. More... | |
class | MultiKnapsackLagRelax |
Solve multiple knapsack problem with lagrangian relaxation. More... | |
class | NetworkSimplex |
Network simplex algorithm for min-cost flow. More... | |
class | ProblemScaler |
Base class for scaling scheme with default no scaling. More... | |
class | SearchByAdjustCoefficient |
Heuristic to search for feasible solutions by adjusting coefficients so that some items will not be assigned to some bins. More... | |
class | SearchByBinSmoothing |
Heuristic to search for feasible solutions by smoothing dense bins. More... | |
class | SearchByCombinedStrategy |
Heuristic to search for feasible solutions by combined strategies. More... | |
class | SubGradientDescent |
Update lagrangian multiplier with subgradient descent. More... | |
class | Variable |
Describe variables in optimization problem. More... | |
class | VariableProperty |
Describe properties of a variable. More... | |
Enumerations | |
enum | SolverProperty { MIN, MAX, BINARY, INTEGER, CONTINUOUS, OPTIMAL, INFEASIBLE, SUBOPTIMAL, UNBOUNDED } |
Some enums used in solver. More... | |
Functions | |
template<typename T , typename V > | |
void | axpy (unsigned int n, T a, V const *x, T *y) |
\( y = a \cdot x+y \) More... | |
template<typename T , typename V , typename MatrixType > | |
void | AxPlusy (T a, MatrixType const &A, V const *x, T *y) |
\( y = a A x + y \) More... | |
template<typename T , typename V , typename MatrixType > | |
void | ATxPlusy (T a, MatrixType const &A, V const *x, T *y) |
\( y = a A^T x + y \) More... | |
template<typename T > | |
T | dot (unsigned int n, T const *x, T const *y) |
compute dot product \( x^T y \) More... | |
template<typename T > | |
void | vcopy (unsigned int n, T const *x, T *y) |
copy vector More... | |
std::string | toString (SolverProperty sp) |
Convert limbo::solvers::SolverProperty to std::string. More... | |
template<typename T > | |
int | easy_sdp_ext (int n, int k, struct blockmatrix C, double *a, struct constraintmatrix *constraints, double constant_offset, struct blockmatrix *pX, double **py, struct blockmatrix *pZ, double *ppobj, double *pdobj, struct paramstruc const ¶ms, int const &printlevel) |
API to call Csdp solver. More... | |
namespace for Limbo.Solvers
namespace for Solvers
namespace Limbo.Solvers
|
inline |
\( y = a A^T x + y \)
T | data type of a, y |
V | data type of x |
MatrixType | sparse matrix type in CSR format |
a | constant |
A | matrix |
x | vector |
y | output vector |
Definition at line 226 of file Numerical.h.
|
inline |
\( y = a A x + y \)
T | data type of a, y |
V | data type of x |
MatrixType | sparse matrix type in CSR format |
a | constant |
A | matrix |
x | vector |
y | output vector |
Definition at line 198 of file Numerical.h.
|
inline |
\( y = a \cdot x+y \)
T | data type of a, y |
V | data type of x |
n | dimension |
a | constant |
x | vector |
y | output vector |
Definition at line 179 of file Numerical.h.
|
inline |
compute dot product \( x^T y \)
T | data type |
n | dimension |
x | vector |
y | vector |
Definition at line 252 of file Numerical.h.
int limbo::solvers::easy_sdp_ext | ( | int | n, |
int | k, | ||
struct blockmatrix | C, | ||
double * | a, | ||
struct constraintmatrix * | constraints, | ||
double | constant_offset, | ||
struct blockmatrix * | pX, | ||
double ** | py, | ||
struct blockmatrix * | pZ, | ||
double * | ppobj, | ||
double * | pdobj, | ||
struct paramstruc const & | params, | ||
int const & | printlevel | ||
) |
API to call Csdp solver.
This is a dummy template, so I do not need to write a .c file. See the documentation of Csdp for details on how to describe an SDP problem.
T | dummy data type, any type works |
n,k,C,a,constraints,constant_offset | as input problem |
pX,py,pZ | as initial solution and final solution |
ppobj | as primal objective |
pdobj | as dual objective |
params | pass customized parameters to control the solver |
printlevel | verbose level in printing |
Definition at line 59 of file CsdpEasySdpApi.h.
|
inline |
Convert limbo::solvers::SolverProperty to std::string.
sp | solver property |
|
inline |
copy vector
T | data type |
n | dimension |
x | source vector |
y | target vector |
Definition at line 269 of file Numerical.h.