Detailed Description
methods for working with pricing jobs
Various methods to work with pricing jobs
Definition in file pricingjob.c.
#include "pricingjob.h"
#include "pub_gcgcol.h"
#include "pub_pricingjob.h"
#include "gcg.h"
#include "pricer_gcg.h"
#include "pub_pricingprob.h"
#include "pub_solver.h"
#include "scip/scip.h"
Go to the source code of this file.
Function Documentation
◆ GCGpricingjobCreate()
SCIP_RETCODE GCGpricingjobCreate | ( | SCIP * | scip, |
GCG_PRICINGJOB ** | pricingjob, | ||
GCG_PRICINGPROB * | pricingprob, | ||
GCG_SOLVER * | solver, | ||
int | chunk | ||
) |
create a pricing job
- Parameters
-
scip SCIP data structure (master problem) pricingjob pricing job to be created pricingprob data structure of the corresponding pricing problem solver pricing solver responsible for the pricing job chunk chunk that the pricing problem should belong to
Definition at line 51 of file pricingjob.c.
Referenced by gcg::Pricingcontroller::initSol().
◆ GCGpricingjobFree()
void GCGpricingjobFree | ( | SCIP * | scip, |
GCG_PRICINGJOB ** | pricingjob | ||
) |
free a pricing job
- Parameters
-
scip SCIP data structure (master problem) pricingjob pricing job to be freed
Definition at line 72 of file pricingjob.c.
Referenced by gcg::Pricingcontroller::exitSol().
◆ GCGpricingjobSetup()
SCIP_RETCODE GCGpricingjobSetup | ( | SCIP * | scip, |
GCG_PRICINGJOB * | pricingjob, | ||
SCIP_Bool | heuristic, | ||
int | scoring, | ||
int | nroundscol, | ||
SCIP_Real | dualsolconv, | ||
int | npointsprob, | ||
int | nraysprob | ||
) |
setup a pricing job at the beginning of the pricing loop
- Parameters
-
scip SCIP data structure (master problem) pricingjob pricing job heuristic shall the pricing job be performed heuristically? scoring scoring parameter nroundscol number of previous pricing rounds for which the number of improving columns should be counted dualsolconv dual solution value of corresponding convexity constraint npointsprob total number of extreme points generated so far by the pricing problem nraysprob total number of extreme rays generated so far by the pricing problem
Definition at line 82 of file pricingjob.c.
References GCGpricingjobGetPricingprob(), GCGpricingjobResetHeuristic(), GCGpricingjobResetSolver(), GCGpricingjobSetExact(), GCGpricingprobGetNColsLastRounds(), GCGpricingprobGetProbnr(), and GCG_PricingJob::score.
Referenced by gcg::Pricingcontroller::setupPriorityQueue().
◆ GCGpricingjobGetSolver()
GCG_SOLVER* GCGpricingjobGetSolver | ( | GCG_PRICINGJOB * | pricingjob | ) |
get the pricing solver with which the pricing job is to be performed
- Parameters
-
pricingjob pricing job
Definition at line 133 of file pricingjob.c.
References GCG_PricingJob::solver.
Referenced by gcg::Pricingcontroller::evaluatePricingjob(), ObjPricerGcg::pricingLoop(), gcg::SCIP_DECL_SORTPTRCOMP(), and gcg::Pricingcontroller::setupPriorityQueue().
◆ GCGpricingjobResetSolver()
void GCGpricingjobResetSolver | ( | SCIP * | scip, |
GCG_PRICINGJOB * | pricingjob | ||
) |
reset the pricing solver to be used to the one with the highest priority
- Parameters
-
scip SCIP data structure (master problem) pricingjob pricing job
Definition at line 141 of file pricingjob.c.
References GCGpricerGetNSolvers(), GCGpricerGetSolvers(), GCGsolverIsExactEnabled(), GCGsolverIsHeurEnabled(), and GCG_PricingJob::solver.
Referenced by GCGpricingjobSetup().
◆ GCGpricingjobNextSolver()
void GCGpricingjobNextSolver | ( | SCIP * | scip, |
GCG_PRICINGJOB * | pricingjob | ||
) |
get the next pricing solver to be used, or NULL of there is none
- Parameters
-
scip SCIP data structure (master problem) pricingjob pricing job
Definition at line 171 of file pricingjob.c.
References GCGpricerGetNSolvers(), GCGpricerGetSolvers(), GCGsolverIsExactEnabled(), GCGsolverIsHeurEnabled(), and GCG_PricingJob::solver.
Referenced by gcg::Pricingcontroller::evaluatePricingjob().
◆ GCGpricingjobGetChunk()
SCIP_Real GCGpricingjobGetChunk | ( | GCG_PRICINGJOB * | pricingjob | ) |
get the chunk of a pricing job
- Parameters
-
pricingjob pricing job
Definition at line 206 of file pricingjob.c.
References GCG_PricingJob::chunk.
Referenced by gcg::Pricingcontroller::setupPriorityQueue().
◆ GCGpricingjobGetScore()
SCIP_Real GCGpricingjobGetScore | ( | GCG_PRICINGJOB * | pricingjob | ) |
get the score of a pricing job
- Parameters
-
pricingjob pricing job
Definition at line 214 of file pricingjob.c.
References GCG_PricingJob::score.
Referenced by gcg::SCIP_DECL_SORTPTRCOMP().
◆ GCGpricingjobIsHeuristic()
SCIP_Bool GCGpricingjobIsHeuristic | ( | GCG_PRICINGJOB * | pricingjob | ) |
return whether the pricing job is to be performed heuristically
- Parameters
-
pricingjob pricing job
Definition at line 222 of file pricingjob.c.
References GCG_PricingJob::heuristic.
Referenced by gcg::Pricingcontroller::evaluatePricingjob(), ObjPricerGcg::pricingLoop(), and gcg::SCIP_DECL_SORTPTRCOMP().
◆ GCGpricingjobSetExact()
void GCGpricingjobSetExact | ( | GCG_PRICINGJOB * | pricingjob | ) |
set the pricing job to be performed exactly
- Parameters
-
pricingjob pricing job
Definition at line 230 of file pricingjob.c.
References GCG_PricingJob::heuristic.
Referenced by gcg::Pricingcontroller::evaluatePricingjob(), and GCGpricingjobSetup().
◆ GCGpricingjobResetHeuristic()
void GCGpricingjobResetHeuristic | ( | GCG_PRICINGJOB * | pricingjob | ) |
reset number of heuristic pricing iterations of a pricing job
- Parameters
-
pricingjob pricing job
Definition at line 238 of file pricingjob.c.
References GCGsolverIsHeurEnabled(), GCG_PricingJob::heuristic, GCG_PricingJob::nheuriters, and GCG_PricingJob::solver.
Referenced by gcg::Pricingcontroller::evaluatePricingjob(), GCGpricingjobSetup(), and gcg::Pricingcontroller::pricingprobNextBranchcons().
◆ GCGpricingjobIncreaseNHeurIters()
void GCGpricingjobIncreaseNHeurIters | ( | GCG_PRICINGJOB * | pricingjob | ) |
update number of heuristic pricing iterations of a pricing job
- Parameters
-
pricingjob pricing job
Definition at line 250 of file pricingjob.c.
References GCG_PricingJob::heuristic, and GCG_PricingJob::nheuriters.
Referenced by gcg::Pricingcontroller::evaluatePricingjob().
◆ GCGpricingjobGetNHeurIters()
int GCGpricingjobGetNHeurIters | ( | GCG_PRICINGJOB * | pricingjob | ) |
get the number of heuristic pricing iterations of the pricing job
- Parameters
-
pricingjob pricing job
Definition at line 259 of file pricingjob.c.
References GCG_PricingJob::nheuriters.
Referenced by gcg::Pricingcontroller::evaluatePricingjob(), and gcg::SCIP_DECL_SORTPTRCOMP().