Detailed Description
Commonly used data structures.
Data Structures | |
struct | Dec_Scores |
Modules | |
GCG Column | |
Priority Queue | |
Files | |
file | pub_decomp.h |
public methods for working with decomposition structures | |
file | struct_branchgcg.h |
data structures for branching rules | |
file | struct_colpool.h |
data structures for storing cols in a col pool | |
file | struct_consclassifier.h |
data structures for constraint classifiers | |
file | struct_decomp.h |
structure information for decomposition information in GCG projects | |
file | struct_detector.h |
data structures for detectors | |
file | struct_gcgcol.h |
data structure to store columns (solutions from a pricing problem) | |
file | struct_gcgpqueue.h |
data structure for priority queue | |
file | struct_pricestore_gcg.h |
datastructures for storing priced cols | |
file | struct_pricingjob.h |
data structure for pricing jobs | |
file | struct_pricingprob.h |
data structure to store pricing problem information | |
file | struct_solver.h |
data structures for solvers | |
file | struct_varclassifier.h |
data structures for variable classifiers | |
file | struct_vardata.h |
data structures for GCG variable data | |
SCIP_EXPORT GCG_COL ** | GCGcolpoolGetCols (GCG_COLPOOL *colpool) |
SCIP_EXPORT int | GCGcolpoolGetNCols (GCG_COLPOOL *colpool) |
SCIP_EXPORT int | GCGcolpoolGetMaxNCols (GCG_COLPOOL *colpool) |
SCIP_EXPORT SCIP_Real | GCGcolpoolGetTime (GCG_COLPOOL *colpool) |
SCIP_EXPORT SCIP_Longint | GCGcolpoolGetNCalls (GCG_COLPOOL *colpool) |
SCIP_EXPORT SCIP_Longint | GCGcolpoolGetNColsFound (GCG_COLPOOL *colpool) |
SCIP_EXPORT SCIP_RETCODE | GCGcolpoolCreate (SCIP *scip, GCG_COLPOOL **colpool, int agelimit) |
SCIP_EXPORT SCIP_RETCODE | GCGcolpoolFree (SCIP *scip, GCG_COLPOOL **colpool) |
SCIP_EXPORT SCIP_RETCODE | GCGcolpoolClear (GCG_COLPOOL *colpool) |
SCIP_EXPORT SCIP_RETCODE | GCGcolpoolAddCol (GCG_COLPOOL *colpool, GCG_COL *col, SCIP_Bool *success) |
SCIP_EXPORT SCIP_RETCODE | GCGcolpoolAddNewCol (GCG_COLPOOL *colpool, GCG_COL *col) |
SCIP_EXPORT SCIP_RETCODE | GCGcolpoolDelCol (GCG_COLPOOL *colpool, GCG_COL *col, SCIP_Bool freecol) |
SCIP_EXPORT SCIP_RETCODE | GCGcolpoolUpdateNode (GCG_COLPOOL *colpool) |
SCIP_EXPORT SCIP_RETCODE | GCGcolpoolUpdateRedcost (GCG_COLPOOL *colpool) |
SCIP_EXPORT void | GCGcolpoolStartFarkas (GCG_COLPOOL *colpool) |
SCIP_EXPORT void | GCGcolpoolEndFarkas (GCG_COLPOOL *colpool) |
SCIP_EXPORT SCIP_RETCODE | GCGcolpoolPrice (SCIP *scip, GCG_COLPOOL *colpool, GCG_PRICESTORE *pricestore, SCIP_SOL *sol, SCIP_Bool *foundvars) |
Function Documentation
◆ GCGcolpoolGetCols()
SCIP_EXPORT GCG_COL** GCGcolpoolGetCols | ( | GCG_COLPOOL * | colpool | ) |
gets array of cols in the col pool
Definition at line 498 of file colpool.c.
References GCG_Colpool::cols.
Referenced by GCGcolpoolUpdateRedcost().
◆ GCGcolpoolGetNCols()
SCIP_EXPORT int GCGcolpoolGetNCols | ( | GCG_COLPOOL * | colpool | ) |
get number of cols in the col pool
gets number of cols in the col pool
Definition at line 508 of file colpool.c.
References GCG_Colpool::ncols.
Referenced by GCGcolpoolUpdateRedcost().
◆ GCGcolpoolGetMaxNCols()
SCIP_EXPORT int GCGcolpoolGetMaxNCols | ( | GCG_COLPOOL * | colpool | ) |
get maximum number of cols that were stored in the col pool at the same time
gets maximum number of cols that were stored in the col pool at the same time
Definition at line 518 of file colpool.c.
References GCG_Colpool::maxncols.
◆ GCGcolpoolGetTime()
SCIP_EXPORT SCIP_Real GCGcolpoolGetTime | ( | GCG_COLPOOL * | colpool | ) |
gets time in seconds used for pricing cols from the pool
gets time in seconds used for separating cols from the pool
Definition at line 528 of file colpool.c.
References GCG_Colpool::poolclock, and GCG_Colpool::scip.
Referenced by GCGcolpoolFree().
◆ GCGcolpoolGetNCalls()
SCIP_EXPORT SCIP_Longint GCGcolpoolGetNCalls | ( | GCG_COLPOOL * | colpool | ) |
get number of times, the col pool was separated
Definition at line 538 of file colpool.c.
References GCG_Colpool::ncalls.
◆ GCGcolpoolGetNColsFound()
SCIP_EXPORT SCIP_Longint GCGcolpoolGetNColsFound | ( | GCG_COLPOOL * | colpool | ) |
get total number of cols that were priced from the col pool
get total number of cols that were separated from the col pool
Definition at line 548 of file colpool.c.
References GCG_Colpool::ncolsfound.
◆ GCGcolpoolCreate()
SCIP_EXPORT SCIP_RETCODE GCGcolpoolCreate | ( | SCIP * | scip, |
GCG_COLPOOL ** | colpool, | ||
int | agelimit | ||
) |
creates col pool
Definition at line 159 of file colpool.c.
References GCG_HASHSIZE_COLPOOLS, GCG_HASHSIZE_COLPOOLS_SMALL, and GCG_USESMALLTABLES.
Referenced by ObjPricerGcg::createColpool().
◆ GCGcolpoolFree()
SCIP_EXPORT SCIP_RETCODE GCGcolpoolFree | ( | SCIP * | scip, |
GCG_COLPOOL ** | colpool | ||
) |
frees col pool
Definition at line 195 of file colpool.c.
References GCGcolpoolClear(), and GCGcolpoolGetTime().
Referenced by SCIP_DECL_PRICEREXITSOL().
◆ GCGcolpoolClear()
SCIP_EXPORT SCIP_RETCODE GCGcolpoolClear | ( | GCG_COLPOOL * | colpool | ) |
removes all cols from the col pool
removes all rows from the col pool
Definition at line 262 of file colpool.c.
References colpoolDelCol(), GCG_Colpool::cols, and GCG_Colpool::ncols.
Referenced by GCGcolpoolFree(), and GCGcolpoolUpdateNode().
◆ GCGcolpoolAddCol()
SCIP_EXPORT SCIP_RETCODE GCGcolpoolAddCol | ( | GCG_COLPOOL * | colpool, |
GCG_COL * | col, | ||
SCIP_Bool * | success | ||
) |
if not already existing, adds col to col pool and captures it
Definition at line 281 of file colpool.c.
References GCGcolpoolAddNewCol(), and GCG_Colpool::hashtable.
Referenced by GCGpricestoreApplyCols().
◆ GCGcolpoolAddNewCol()
SCIP_EXPORT SCIP_RETCODE GCGcolpoolAddNewCol | ( | GCG_COLPOOL * | colpool, |
GCG_COL * | col | ||
) |
adds col to col pool and captures it; doesn't check for multiple cols
adds row to col pool and captures it; doesn't check for multiple cols
Definition at line 304 of file colpool.c.
References colpoolEnsureColsMem(), GCG_Colpool::cols, GCG_Colpool::hashtable, GCG_Colpool::maxncols, GCG_Colpool::ncols, and GCG_Col::pos.
Referenced by GCGcolpoolAddCol().
◆ GCGcolpoolDelCol()
SCIP_EXPORT SCIP_RETCODE GCGcolpoolDelCol | ( | GCG_COLPOOL * | colpool, |
GCG_COL * | col, | ||
SCIP_Bool | freecol | ||
) |
removes the col from the col pool
removes the LP row from the col pool
Definition at line 328 of file colpool.c.
References colpoolDelCol(), and GCG_Colpool::hashtable.
◆ GCGcolpoolUpdateNode()
SCIP_EXPORT SCIP_RETCODE GCGcolpoolUpdateNode | ( | GCG_COLPOOL * | colpool | ) |
update node at which columns of column pool are feasible
Definition at line 429 of file colpool.c.
References GCGcolpoolClear(), GCG_Colpool::nodenr, and GCG_Colpool::scip.
Referenced by ObjPricerGcg::pricingLoop().
◆ GCGcolpoolUpdateRedcost()
SCIP_EXPORT SCIP_RETCODE GCGcolpoolUpdateRedcost | ( | GCG_COLPOOL * | colpool | ) |
update reduced cost of columns in column pool
update reduced cost and compute master coefs of columns in column pool
Definition at line 451 of file colpool.c.
References GCGcolpoolGetCols(), GCGcolpoolGetNCols(), GCGcolUpdateRedcost(), GCGcomputeColMastercoefs(), GCGcomputeRedCostGcgCol(), GCG_Colpool::infarkas, and GCG_Colpool::scip.
Referenced by ObjPricerGcg::pricingLoop().
◆ GCGcolpoolStartFarkas()
SCIP_EXPORT void GCGcolpoolStartFarkas | ( | GCG_COLPOOL * | colpool | ) |
gets number of cols in the col pool
Definition at line 481 of file colpool.c.
References GCG_Colpool::infarkas.
Referenced by SCIP_DECL_PRICERFARKAS().
◆ GCGcolpoolEndFarkas()
SCIP_EXPORT void GCGcolpoolEndFarkas | ( | GCG_COLPOOL * | colpool | ) |
gets number of cols in the col pool
Definition at line 489 of file colpool.c.
References GCG_Colpool::infarkas.
Referenced by SCIP_DECL_PRICERREDCOST().
◆ GCGcolpoolPrice()
SCIP_EXPORT SCIP_RETCODE GCGcolpoolPrice | ( | SCIP * | scip, |
GCG_COLPOOL * | colpool, | ||
GCG_PRICESTORE * | pricestore, | ||
SCIP_SOL * | sol, | ||
SCIP_Bool * | foundvars | ||
) |
prices cols of the col pool
Definition at line 352 of file colpool.c.
References GCG_Col::age, colpoolDelCol(), GCG_Colpool::firstunprocessed, GCG_Colpool::firstunprocessedsol, GCGcolGetRedcost(), GCGcolIsAged(), GCGpricestoreAddCol(), GCGpricestoreGetNCols(), GCG_Colpool::ncalls, GCG_Colpool::ncols, GCG_Col::pos, and GCG_Colpool::scip.
Referenced by ObjPricerGcg::pricingLoop().