CCplex Class Reference
Detailed Description
Class CCplex to encapsulate access to the commercial cplex general purpose optimizer.
This class takes care of obtaining and releasing cplex licenses and sets up a number of optimization problems that are used in shogun, like for Multiple Kernel Learning, Linear Programming Machines and Linear Programming Boosting.
Definition at line 40 of file Cplex.h.
List of all members.
Public Member Functions |
| CCplex () |
virtual | ~CCplex () |
bool | init (E_PROB_TYPE t, int32_t timeout=60) |
| init cplex with problem type t and retry timeout 60 seconds
|
bool | cleanup () |
bool | setup_subgradientlpm_QP (float64_t C, CLabels *labels, CSparseFeatures< float64_t > *features, int32_t *idx_bound, int32_t num_bound, int32_t *w_zero, int32_t num_zero, float64_t *vee, int32_t num_dim, bool use_bias) |
bool | setup_lpboost (float64_t C, int32_t num_cols) |
bool | add_lpboost_constraint (float64_t factor, TSparseEntry< float64_t > *h, int32_t len, int32_t ulen, CLabels *label) |
bool | setup_lpm (float64_t C, CSparseFeatures< float64_t > *x, CLabels *y, bool use_bias) |
bool | setup_lp (float64_t *objective, float64_t *constraints_mat, int32_t rows, int32_t cols, float64_t *rhs, float64_t *lb, float64_t *ub) |
bool | setup_qp (float64_t *H, int32_t dim) |
bool | optimize (float64_t *sol, float64_t *lambda=NULL) |
bool | dense_to_cplex_sparse (float64_t *H, int32_t rows, int32_t cols, int *&qmatbeg, int *&qmatcnt, int *&qmatind, double *&qmatval) |
bool | set_time_limit (float64_t seconds) |
bool | write_problem (char *filename) |
bool | write_Q (char *filename) |
virtual const char * | get_name () const |
Protected Attributes |
CPXENVptr | env |
CPXLPptr | lp |
bool | lp_initialized |
E_PROB_TYPE | problem_type |
Constructor & Destructor Documentation
CCplex::~CCplex |
( |
|
) |
[virtual] |
Member Function Documentation
bool CCplex::add_lpboost_constraint |
( |
float64_t |
factor, |
|
|
TSparseEntry< float64_t > * |
h, |
|
|
int32_t |
len, |
|
|
int32_t |
ulen, |
|
|
CLabels * |
label | |
|
) |
| | |
bool CCplex::dense_to_cplex_sparse |
( |
float64_t * |
H, |
|
|
int32_t |
rows, |
|
|
int32_t |
cols, |
|
|
int *& |
qmatbeg, |
|
|
int *& |
qmatcnt, |
|
|
int *& |
qmatind, |
|
|
double *& |
qmatval | |
|
) |
| | |
virtual const char* CCplex::get_name |
( |
|
) |
const [virtual] |
bool CCplex::init |
( |
E_PROB_TYPE |
t, |
|
|
int32_t |
timeout = 60 | |
|
) |
| | |
init cplex with problem type t and retry timeout 60 seconds
Definition at line 31 of file Cplex.cpp.
bool CCplex::set_time_limit |
( |
float64_t |
seconds |
) |
|
bool CCplex::setup_lpboost |
( |
float64_t |
C, |
|
|
int32_t |
num_cols | |
|
) |
| | |
bool CCplex::setup_qp |
( |
float64_t * |
H, |
|
|
int32_t |
dim | |
|
) |
| | |
bool CCplex::write_problem |
( |
char * |
filename |
) |
|
bool CCplex::write_Q |
( |
char * |
filename |
) |
|
Member Data Documentation
The documentation for this class was generated from the following files: