Scippy

SCIP

Solving Constraint Integer Programs

pricer_stp.c File Reference

Detailed Description

stp variable pricer

Author
Daniel Rehfeldt

Definition in file pricer_stp.c.

#include <assert.h>
#include <string.h>
#include "scip/cons_linear.h"
#include <stdio.h>
#include <stdlib.h>
#include "pricer_stp.h"
#include "grph.h"

Go to the source code of this file.

Macros

#define PRICER_NAME   "stp"
 
#define PRICER_DESC   "pricer for stp"
 
#define PRICER_PRIORITY   1
 
#define PRICER_DELAY   TRUE /* only call pricer if all problem variables have non-negative reduced costs */
 

Functions

static SCIP_DECL_PRICERCOPY (pricerCopyStp)
 
static SCIP_DECL_PRICERFREE (pricerFreeStp)
 
static SCIP_DECL_PRICERINIT (pricerInitStp)
 
static SCIP_DECL_PRICERINITSOL (pricerInitsolStp)
 
static SCIP_DECL_PRICEREXITSOL (pricerExitsolStp)
 
static SCIP_RETCODE pricing (SCIP *scip, SCIP_PRICER *pricer, SCIP_Real *lowerbound, SCIP_Bool farkas)
 
static SCIP_DECL_PRICERREDCOST (pricerRedcostStp)
 
static SCIP_DECL_PRICERFARKAS (pricerFarkasStp)
 
SCIP_RETCODE SCIPincludePricerStp (SCIP *scip)
 

Macro Definition Documentation

#define PRICER_DELAY   TRUE /* only call pricer if all problem variables have non-negative reduced costs */

Definition at line 34 of file pricer_stp.c.

Referenced by SCIPincludePricerStp().

#define PRICER_DESC   "pricer for stp"

Definition at line 32 of file pricer_stp.c.

Referenced by SCIPincludePricerStp().

#define PRICER_NAME   "stp"

Definition at line 31 of file pricer_stp.c.

Referenced by SCIP_DECL_PRICERCOPY(), and SCIPincludePricerStp().

#define PRICER_PRIORITY   1

Definition at line 33 of file pricer_stp.c.

Referenced by SCIPincludePricerStp().

Function Documentation

static SCIP_RETCODE pricing ( SCIP *  scip,
SCIP_PRICER *  pricer,
SCIP_Real *  lowerbound,
SCIP_Bool  farkas 
)
static

method for either Farkas or Redcost pricing

Parameters
scipSCIP data structure
pricerpricer
lowerboundlowerbound pointer
farkasTRUE: Farkas pricing; FALSE: Redcost pricing

Definition at line 174 of file pricer_stp.c.

References shortest_path::edge, FALSE, FSP_MODE, graph_path_exec(), GRAPH::knots, GRAPH::mark, SCIPprobdataGetGraph(), SCIPprobdataPrintGraph(), GRAPH::tail, and TRUE.

Referenced by SCIP_DECL_PRICERFARKAS(), and SCIP_DECL_PRICERREDCOST().

static SCIP_DECL_PRICERCOPY ( pricerCopyStp  )
static

copy method for pricer plugins (called when SCIP copies plugins)

Definition at line 71 of file pricer_stp.c.

References PRICER_NAME.

static SCIP_DECL_PRICEREXITSOL ( pricerExitsolStp  )
static

solving process deinitialization method of variable pricer (called before branch and bound process data is freed)

Definition at line 154 of file pricer_stp.c.

References SCIP_PricerData::scip.

static SCIP_DECL_PRICERFARKAS ( pricerFarkasStp  )
static

Farkas pricing method of variable pricer for infeasible LPs

Definition at line 365 of file pricer_stp.c.

References pricing(), SCIP_PricerData::scip, and TRUE.

static SCIP_DECL_PRICERFREE ( pricerFreeStp  )
static

destructor of variable pricer to free user data (called when SCIP is exiting)

Definition at line 82 of file pricer_stp.c.

References SCIP_PricerData::scip.

static SCIP_DECL_PRICERINIT ( pricerInitStp  )
static

initialization method of variable pricer (called after problem was transformed)

Definition at line 104 of file pricer_stp.c.

References SCIP_PricerData::scip, SCIPprobdataGetEdgeConstraints(), SCIPprobdataGetNEdges(), SCIPprobdataGetPathConstraints(), SCIPprobdataGetRNTerms(), SCIPprobdataGetRoot(), SCIPprobdataGetRTerms(), and SCIPprobdataIsBigt().

static SCIP_DECL_PRICERINITSOL ( pricerInitsolStp  )
static

solving process initialization method of variable pricer (called when branch and bound process is about to begin)

Definition at line 125 of file pricer_stp.c.

References SCIP_PricerData::scip, SCIPprobdataGetNEdges(), and SCIPprobdataGetRNTerms().

static SCIP_DECL_PRICERREDCOST ( pricerRedcostStp  )
static

reduced cost pricing method of variable pricer for feasible LPs

Definition at line 354 of file pricer_stp.c.

References FALSE, SCIP_PricerData::lowerbound, pricing(), and SCIP_PricerData::scip.

SCIP_RETCODE SCIPincludePricerStp ( SCIP *  scip)

creates the stp variable pricer and includes it in SCIP

Parameters
scipSCIP data structure

Definition at line 377 of file pricer_stp.c.

References PRICER_DELAY, PRICER_DESC, PRICER_NAME, PRICER_PRIORITY, and SCIP_PricerData::scip.

Referenced by runShell().