Scippy

GCG

Branch-and-Price & Column Generation for Everyone

Detailed Description

This page contains a list of all pricers, pricing solvers and the pricing jobs and problem structures.

Modules

 Pricers
 This page contains a list of all pricers which are currently available.
 
 Pricing Solvers
 This page contains a list of all pricing solvers which are currently available.
 

Files

file  solver.h
 public methods for GCG pricing solvers
 
SCIP_EXPORT SCIP_RETCODE GCGsolverCreate (SCIP *scip, GCG_SOLVER **solver, const char *name, const char *desc, int priority, SCIP_Bool heurenabled, SCIP_Bool exactenabled, GCG_DECL_SOLVERUPDATE((*solverupdate)), GCG_DECL_SOLVERSOLVE((*solversolve)), GCG_DECL_SOLVERSOLVEHEUR((*solveheur)), GCG_DECL_SOLVERFREE((*solverfree)), GCG_DECL_SOLVERINIT((*solverinit)), GCG_DECL_SOLVEREXIT((*solverexit)), GCG_DECL_SOLVERINITSOL((*solverinitsol)), GCG_DECL_SOLVEREXITSOL((*solverexitsol)), GCG_SOLVERDATA *solverdata)
 
SCIP_EXPORT SCIP_RETCODE GCGsolverFree (SCIP *scip, GCG_SOLVER **solver)
 
SCIP_EXPORT SCIP_RETCODE GCGsolverInit (SCIP *scip, GCG_SOLVER *solver)
 
SCIP_EXPORT SCIP_RETCODE GCGsolverExit (SCIP *scip, GCG_SOLVER *solver)
 
SCIP_EXPORT SCIP_RETCODE GCGsolverInitsol (SCIP *scip, GCG_SOLVER *solver)
 
SCIP_EXPORT SCIP_RETCODE GCGsolverExitsol (SCIP *scip, GCG_SOLVER *solver)
 
SCIP_EXPORT SCIP_RETCODE GCGsolverUpdate (SCIP *pricingprob, GCG_SOLVER *solver, int probnr, SCIP_Bool varobjschanged, SCIP_Bool varbndschanged, SCIP_Bool consschanged)
 
SCIP_EXPORT SCIP_RETCODE GCGsolverSolve (SCIP *scip, SCIP *pricingprob, GCG_SOLVER *solver, SCIP_Bool redcost, SCIP_Bool heuristic, int probnr, SCIP_Real dualsolconv, SCIP_Real *lowerbound, GCG_PRICINGSTATUS *status, SCIP_Bool *solved)
 

Function Documentation

◆ GCGsolverCreate()

SCIP_EXPORT SCIP_RETCODE GCGsolverCreate ( SCIP *  scip,
GCG_SOLVER **  solver,
const char *  name,
const char *  desc,
int  priority,
SCIP_Bool  heurenabled,
SCIP_Bool  exactenabled,
GCG_DECL_SOLVERUPDATE((*solverupdate))  ,
GCG_DECL_SOLVERSOLVE((*solversolve))  ,
GCG_DECL_SOLVERSOLVEHEUR((*solveheur))  ,
GCG_DECL_SOLVERFREE((*solverfree))  ,
GCG_DECL_SOLVERINIT((*solverinit))  ,
GCG_DECL_SOLVEREXIT((*solverexit))  ,
GCG_DECL_SOLVERINITSOL((*solverinitsol))  ,
GCG_DECL_SOLVEREXITSOL((*solverexitsol))  ,
GCG_SOLVERDATA solverdata 
)

creates a GCG pricing solver

Definition at line 59 of file solver.c.

References GCGmasterGetOrigprob().

Referenced by GCGpricerIncludeSolver().

◆ GCGsolverFree()

SCIP_EXPORT SCIP_RETCODE GCGsolverFree ( SCIP *  scip,
GCG_SOLVER **  solver 
)

calls destructor and frees memory of GCG pricing solver

Definition at line 144 of file solver.c.

◆ GCGsolverInit()

SCIP_EXPORT SCIP_RETCODE GCGsolverInit ( SCIP *  scip,
GCG_SOLVER solver 
)

◆ GCGsolverExit()

SCIP_EXPORT SCIP_RETCODE GCGsolverExit ( SCIP *  scip,
GCG_SOLVER solver 
)

calls exit method of GCG pricing solver

Definition at line 206 of file solver.c.

◆ GCGsolverInitsol()

SCIP_EXPORT SCIP_RETCODE GCGsolverInitsol ( SCIP *  scip,
GCG_SOLVER solver 
)

calls solving process initialization method of GCG pricing solver

Definition at line 223 of file solver.c.

◆ GCGsolverExitsol()

SCIP_EXPORT SCIP_RETCODE GCGsolverExitsol ( SCIP *  scip,
GCG_SOLVER solver 
)

calls solving process deinitialization method of GCG pricing solver

Definition at line 240 of file solver.c.

◆ GCGsolverUpdate()

SCIP_EXPORT SCIP_RETCODE GCGsolverUpdate ( SCIP *  pricingprob,
GCG_SOLVER solver,
int  probnr,
SCIP_Bool  varobjschanged,
SCIP_Bool  varbndschanged,
SCIP_Bool  consschanged 
)

calls update method of GCG pricing solver

Definition at line 257 of file solver.c.

Referenced by GCGsetPricingObjs(), ObjPricerGcg::priceNewVariables(), and ObjPricerGcg::pricingLoop().

◆ GCGsolverSolve()

SCIP_EXPORT SCIP_RETCODE GCGsolverSolve ( SCIP *  scip,
SCIP *  pricingprob,
GCG_SOLVER solver,
SCIP_Bool  redcost,
SCIP_Bool  heuristic,
int  probnr,
SCIP_Real  dualsolconv,
SCIP_Real *  lowerbound,
GCG_PRICINGSTATUS status,
SCIP_Bool *  solved 
)

calls heuristic or exact solving method of GCG pricing solver

calls heuristic or exact solving method of GCG pricing solver

Note
This method has to be threadsafe!

Definition at line 280 of file solver.c.

References GCG_Solver::exactenabled, GCG_PRICINGSTATUS_NOTAPPLICABLE, GCG_Solver::heurenabled, GCG_Solver::heurfarkascalls, GCG_Solver::heurfarkasclock, GCG_Solver::heurredcostcalls, GCG_Solver::heurredcostclock, GCG_Solver::optfarkascalls, GCG_Solver::optfarkasclock, GCG_Solver::optredcostcalls, and GCG_Solver::optredcostclock.