SCIP Doxygen Documentation
 
Loading...
Searching...
No Matches
SCIP_Var Struct Reference

Detailed Description

variable of the problem

Definition at line 207 of file struct_var.h.

#include <struct_var.h>

Public Member Functions

 SCIP_DECL_VARCOPY ((*varcopy))
 
 SCIP_DECL_VARDELORIG ((*vardelorig))
 
 SCIP_DECL_VARTRANS ((*vartrans))
 
 SCIP_DECL_VARDELTRANS ((*vardeltrans))
 

Data Fields

SCIP_Real obj
 
SCIP_Real unchangedobj
 
SCIP_Real branchfactor
 
SCIP_Real rootsol
 
SCIP_Real bestrootsol
 
SCIP_Real bestrootredcost
 
SCIP_Real bestrootlpobjval
 
SCIP_Real relaxsol
 
SCIP_Real nlpsol
 
SCIP_Real primsolavg
 
SCIP_Real conflictlb
 
SCIP_Real conflictub
 
SCIP_Real conflictrelaxedlb
 
SCIP_Real conflictrelaxedub
 
SCIP_Real lazylb
 
SCIP_Real lazyub
 
SCIP_DOM glbdom
 
SCIP_DOM locdom
 
union { 
 
   SCIP_ORIGINAL   original 
 
   SCIP_COL *   col 
 
   SCIP_AGGREGATE   aggregate 
 
   SCIP_MULTAGGR   multaggr 
 
   SCIP_NEGATE   negate 
 
data 
 
char * name
 
SCIP_VARDATAvardata
 
SCIP_VAR ** parentvars
 
SCIP_VARnegatedvar
 
SCIP_VBOUNDSvlbs
 
SCIP_VBOUNDSvubs
 
SCIP_IMPLICSimplics
 
SCIP_CLIQUELISTcliquelist
 
SCIP_EVENTFILTEReventfilter
 
SCIP_BDCHGINFOlbchginfos
 
SCIP_BDCHGINFOubchginfos
 
SCIP_HISTORYhistory
 
SCIP_HISTORYhistorycrun
 
SCIP_VALUEHISTORYvaluehistory
 
SCIP_Longint closestvblpcount
 
int index
 
int probindex
 
int pseudocandindex
 
int eventqueueindexobj
 
int eventqueueindexlb
 
int eventqueueindexub
 
int parentvarssize
 
int nparentvars
 
int nuses
 
int nlocksdown [NLOCKTYPES]
 
int nlocksup [NLOCKTYPES]
 
int branchpriority
 
int lbchginfossize
 
int nlbchginfos
 
int ubchginfossize
 
int nubchginfos
 
int conflictlbcount
 
int conflictubcount
 
int closestvlbidx
 
int closestvubidx
 
unsigned int initial:1
 
unsigned int removable:1
 
unsigned int deletable:1
 
unsigned int deleted:1
 
unsigned int donotaggr:1
 
unsigned int donotmultaggr:1
 
unsigned int vartype:2
 
unsigned int varstatus:3
 
unsigned int pseudocostflag:2
 
unsigned int branchdirection:2
 
unsigned int eventqueueimpl:1
 
unsigned int delglobalstructs:1
 
unsigned int relaxationonly:1
 
SCIPscip
 

Member Function Documentation

◆ SCIP_DECL_VARCOPY()

SCIP_Var::SCIP_DECL_VARCOPY ( * varcopy)

copies variable data if wanted to subscip, or NULL

◆ SCIP_DECL_VARDELORIG()

SCIP_Var::SCIP_DECL_VARDELORIG ( * vardelorig)

frees user data of original variable

◆ SCIP_DECL_VARTRANS()

SCIP_Var::SCIP_DECL_VARTRANS ( * vartrans)

creates transformed user data by transforming original user data

◆ SCIP_DECL_VARDELTRANS()

SCIP_Var::SCIP_DECL_VARDELTRANS ( * vardeltrans)

frees user data of transformed variable

Field Documentation

◆ obj

SCIP_Real SCIP_Var::obj

objective function value of variable (might be changed temporarily in probing mode)

Definition at line 209 of file struct_var.h.

Referenced by SCIPvarTransform().

◆ unchangedobj

SCIP_Real SCIP_Var::unchangedobj

unchanged objective function value of variable (ignoring temporary changes in probing mode)

Definition at line 210 of file struct_var.h.

◆ branchfactor

SCIP_Real SCIP_Var::branchfactor

factor to weigh variable's branching score with

Definition at line 211 of file struct_var.h.

Referenced by SCIPvarAggregate(), and SCIPvarTransform().

◆ rootsol

SCIP_Real SCIP_Var::rootsol

last primal solution of variable in root node, or zero

Definition at line 212 of file struct_var.h.

◆ bestrootsol

SCIP_Real SCIP_Var::bestrootsol

best primal solution of variable in root node, or zero, w.r.t. root LP value and root reduced cost

Definition at line 213 of file struct_var.h.

◆ bestrootredcost

SCIP_Real SCIP_Var::bestrootredcost

best reduced costs of variable in root node, or zero, w.r.t. root LP value and root solution value

Definition at line 214 of file struct_var.h.

◆ bestrootlpobjval

SCIP_Real SCIP_Var::bestrootlpobjval

best root LP objective value, or SCIP_INVALID, w.r.t. root solution value and root reduced cost

Definition at line 215 of file struct_var.h.

◆ relaxsol

SCIP_Real SCIP_Var::relaxsol

primal solution of variable in current relaxation solution, or SCIP_INVALID

Definition at line 216 of file struct_var.h.

◆ nlpsol

SCIP_Real SCIP_Var::nlpsol

primal solution of variable in current NLP solution, or SCIP_INVALID

Definition at line 217 of file struct_var.h.

◆ primsolavg

SCIP_Real SCIP_Var::primsolavg

weighted average of all values of variable in primal feasible solutions

Definition at line 218 of file struct_var.h.

Referenced by SCIPsolUpdateVarsum().

◆ conflictlb

SCIP_Real SCIP_Var::conflictlb

maximal lower bound of variable in the current conflict

Definition at line 219 of file struct_var.h.

◆ conflictub

SCIP_Real SCIP_Var::conflictub

minimal upper bound of variable in the current conflict

Definition at line 220 of file struct_var.h.

◆ conflictrelaxedlb

SCIP_Real SCIP_Var::conflictrelaxedlb

maximal relaxed lower bound of variable in the current conflict (conflictrelaxedlb <= conflictlb)

Definition at line 221 of file struct_var.h.

Referenced by SCIPbdchginfoGetRelaxedBound().

◆ conflictrelaxedub

SCIP_Real SCIP_Var::conflictrelaxedub

minimal relaxed upper bound of variable in the current conflict (conflictrelaxedub >= conflictub)

Definition at line 222 of file struct_var.h.

Referenced by SCIPbdchginfoGetRelaxedBound().

◆ lazylb

SCIP_Real SCIP_Var::lazylb

global lower bound that is ensured by constraints and has not to be added to the LP

Definition at line 223 of file struct_var.h.

Referenced by SCIPvarTransform().

◆ lazyub

SCIP_Real SCIP_Var::lazyub

global upper bound that is ensured by constraints and has not to be added to the LP

Definition at line 224 of file struct_var.h.

Referenced by SCIPvarTransform().

◆ glbdom

◆ locdom

SCIP_DOM SCIP_Var::locdom

domain of variable in current subproblem

Definition at line 226 of file struct_var.h.

Referenced by SCIPvarAggregate(), SCIPvarTransform(), varProcessChgLbLocal(), and varProcessChgUbLocal().

◆ original

SCIP_ORIGINAL SCIP_Var::original

original variable information

Definition at line 229 of file struct_var.h.

Referenced by SCIPvarAddLocks(), SCIPvarGetProbvar(), SCIPvarGetTransformed(), SCIPvarTransform(), and varFreeParents().

◆ col

SCIP_COL* SCIP_Var::col

LP column (for column variables)

Definition at line 230 of file struct_var.h.

◆ aggregate

◆ multaggr

SCIP_MULTAGGR SCIP_Var::multaggr

multiple aggregation information (for multiple aggregated variables)

Definition at line 232 of file struct_var.h.

Referenced by SCIPvarAddLocks(), SCIPvarGetAggregatedObj(), SCIPvarGetProbvar(), varFreeParents(), and varGetActiveVar().

◆ negate

◆ [union]

◆ name

char* SCIP_Var::name

name of the variable

Definition at line 235 of file struct_var.h.

Referenced by SCIPlpWriteMip(), SCIPvarAggregate(), SCIPvarTransform(), varAddParent(), and varUpdateAggregationBounds().

◆ vardata

SCIP_VARDATA* SCIP_Var::vardata

user data for this specific variable

Definition at line 240 of file struct_var.h.

Referenced by SCIPvarCopy(), and SCIPvarTransform().

◆ parentvars

SCIP_VAR** SCIP_Var::parentvars

parent variables in the aggregation tree

Definition at line 241 of file struct_var.h.

Referenced by SCIPvarGetOrigvarSum(), SCIPvarIsTransformedOrigvar(), and varFreeParents().

◆ negatedvar

◆ vlbs

SCIP_VBOUNDS* SCIP_Var::vlbs

variable lower bounds x >= b*y + d

Definition at line 243 of file struct_var.h.

Referenced by SCIPvarRemoveCliquesImplicsVbs(), SCIPvarTransform(), and varAddTransitiveImplic().

◆ vubs

SCIP_VBOUNDS* SCIP_Var::vubs

variable upper bounds x <= b*y + d

Definition at line 244 of file struct_var.h.

Referenced by SCIPvarRemoveCliquesImplicsVbs(), SCIPvarTransform(), and varAddTransitiveImplic().

◆ implics

SCIP_IMPLICS* SCIP_Var::implics

implications y >=/<= b following from x <= 0 and x >= 1 (x binary), or NULL if x is not binary

Definition at line 245 of file struct_var.h.

Referenced by SCIPvarRemoveCliquesImplicsVbs(), and varAddTransitiveBinaryClosureImplic().

◆ cliquelist

SCIP_CLIQUELIST* SCIP_Var::cliquelist

list of cliques the variable and its negation is member of

Definition at line 246 of file struct_var.h.

Referenced by SCIPvarsHaveCommonClique().

◆ eventfilter

SCIP_EVENTFILTER* SCIP_Var::eventfilter

event filter for events concerning this variable; not for ORIGINAL vars

Definition at line 247 of file struct_var.h.

◆ lbchginfos

SCIP_BDCHGINFO* SCIP_Var::lbchginfos

bound change informations for lower bound changes from root to current node

Definition at line 248 of file struct_var.h.

Referenced by SCIPvarWasFixedEarlier().

◆ ubchginfos

SCIP_BDCHGINFO* SCIP_Var::ubchginfos

bound change informations for upper bound changes from root to current node

Definition at line 249 of file struct_var.h.

Referenced by SCIPvarWasFixedEarlier().

◆ history

SCIP_HISTORY* SCIP_Var::history

branching and inference history information

Definition at line 250 of file struct_var.h.

Referenced by SCIPreoptMergeVarHistory(), SCIPreoptUpdateVarHistory(), SCIPvarAggregate(), SCIPvarMergeHistories(), and SCIPvarTransform().

◆ historycrun

SCIP_HISTORY* SCIP_Var::historycrun

branching and inference history information for current run

Definition at line 251 of file struct_var.h.

Referenced by SCIPvarAggregate(), and SCIPvarMergeHistories().

◆ valuehistory

SCIP_VALUEHISTORY* SCIP_Var::valuehistory

branching and inference history information which are value based, or NULL if not used

Definition at line 252 of file struct_var.h.

◆ closestvblpcount

SCIP_Longint SCIP_Var::closestvblpcount

LP count for which the closestvlbidx/closestvubidx entries are valid

Definition at line 253 of file struct_var.h.

Referenced by SCIPvarRemoveCliquesImplicsVbs().

◆ index

int SCIP_Var::index

consecutively numbered variable identifier

Definition at line 254 of file struct_var.h.

Referenced by SCIPvarCompare().

◆ probindex

int SCIP_Var::probindex

array position in problems vars array, or -1 if not assigned to a problem

Definition at line 255 of file struct_var.h.

◆ pseudocandindex

int SCIP_Var::pseudocandindex

array position in pseudo branching candidates array, or -1

Definition at line 256 of file struct_var.h.

Referenced by branchcandInsertPseudoCand(), and branchcandRemovePseudoCand().

◆ eventqueueindexobj

int SCIP_Var::eventqueueindexobj

array position in event queue of objective change event, or -1

Definition at line 257 of file struct_var.h.

Referenced by SCIPeventqueueProcess().

◆ eventqueueindexlb

int SCIP_Var::eventqueueindexlb

array position in event queue of lower bound change event, or -1

Definition at line 258 of file struct_var.h.

Referenced by SCIPeventqueueProcess().

◆ eventqueueindexub

int SCIP_Var::eventqueueindexub

array position in event queue of upper bound change event, or -1

Definition at line 259 of file struct_var.h.

Referenced by SCIPeventqueueProcess().

◆ parentvarssize

int SCIP_Var::parentvarssize

available slots in parentvars array

Definition at line 260 of file struct_var.h.

◆ nparentvars

int SCIP_Var::nparentvars

number of parent variables in aggregation tree (used slots of parentvars)

Definition at line 261 of file struct_var.h.

Referenced by SCIPvarIsTransformedOrigvar().

◆ nuses

int SCIP_Var::nuses

number of times, this variable is referenced

Definition at line 262 of file struct_var.h.

◆ nlocksdown

int SCIP_Var::nlocksdown[NLOCKTYPES]

array of variable locks for rounding down; if zero, rounding down is always feasible

Definition at line 263 of file struct_var.h.

Referenced by SCIPvarAddLocks(), and SCIPvarTransform().

◆ nlocksup

int SCIP_Var::nlocksup[NLOCKTYPES]

array of variable locks for rounding up; if zero, rounding up is always feasible

Definition at line 264 of file struct_var.h.

Referenced by SCIPvarAddLocks(), and SCIPvarTransform().

◆ branchpriority

int SCIP_Var::branchpriority

priority of the variable for branching

Definition at line 265 of file struct_var.h.

Referenced by branchcandSortPseudoCands(), SCIPbranchcandGetPseudoCands(), SCIPvarAggregate(), and SCIPvarTransform().

◆ lbchginfossize

int SCIP_Var::lbchginfossize

available slots in lbchginfos array

Definition at line 266 of file struct_var.h.

◆ nlbchginfos

int SCIP_Var::nlbchginfos

number of lower bound changes from root node to current node

Definition at line 267 of file struct_var.h.

Referenced by SCIPvarWasFixedEarlier().

◆ ubchginfossize

int SCIP_Var::ubchginfossize

available slots in ubchginfos array

Definition at line 268 of file struct_var.h.

◆ nubchginfos

int SCIP_Var::nubchginfos

number of upper bound changes from root node to current node

Definition at line 269 of file struct_var.h.

Referenced by SCIPvarWasFixedEarlier().

◆ conflictlbcount

int SCIP_Var::conflictlbcount

number of last conflict, the lower bound was member of

Definition at line 270 of file struct_var.h.

◆ conflictubcount

int SCIP_Var::conflictubcount

number of last conflict, the upper bound was member of

Definition at line 271 of file struct_var.h.

◆ closestvlbidx

int SCIP_Var::closestvlbidx

index of closest VLB variable in current LP solution, or -1

Definition at line 272 of file struct_var.h.

◆ closestvubidx

int SCIP_Var::closestvubidx

index of closest VUB variable in current LP solution, or -1

Definition at line 273 of file struct_var.h.

◆ initial

unsigned int SCIP_Var::initial

TRUE iff var's column should be present in the initial root LP

Definition at line 274 of file struct_var.h.

Referenced by SCIPvarTransform().

◆ removable

unsigned int SCIP_Var::removable

TRUE iff var's column is removable from the LP (due to aging or cleanup)

Definition at line 275 of file struct_var.h.

Referenced by SCIPvarAggregate(), SCIPvarMultiaggregate(), and SCIPvarTransform().

◆ deletable

unsigned int SCIP_Var::deletable

TRUE iff the variable is removable from the problem

Definition at line 276 of file struct_var.h.

◆ deleted

unsigned int SCIP_Var::deleted

TRUE iff variable was marked for deletion from the problem

Definition at line 277 of file struct_var.h.

◆ donotaggr

unsigned int SCIP_Var::donotaggr

TRUE iff variable is not allowed to be aggregated

Definition at line 278 of file struct_var.h.

Referenced by SCIPvarAddLocks(), SCIPvarAggregate(), SCIPvarCopy(), SCIPvarDoNotAggr(), SCIPvarMarkDoNotAggr(), and SCIPvarTransform().

◆ donotmultaggr

unsigned int SCIP_Var::donotmultaggr

TRUE iff variable is not allowed to be multi-aggregated

Definition at line 279 of file struct_var.h.

Referenced by SCIPvarAddLocks(), SCIPvarAggregate(), SCIPvarCopy(), SCIPvarDoNotMultaggr(), SCIPvarMarkDoNotMultaggr(), and SCIPvarTransform().

◆ vartype

unsigned int SCIP_Var::vartype

type of variable: binary, integer, implicit integer, continuous

Definition at line 280 of file struct_var.h.

Referenced by SCIPnodeGetDualBoundchgs(), and SCIPnodeGetNDualBndchgs().

◆ varstatus

unsigned int SCIP_Var::varstatus

status of variable: original, loose, column, fixed, aggregated, multiaggregated, negated

Definition at line 281 of file struct_var.h.

◆ pseudocostflag

unsigned int SCIP_Var::pseudocostflag

temporary flag used in pseudo cost update

Definition at line 282 of file struct_var.h.

◆ branchdirection

unsigned int SCIP_Var::branchdirection

preferred branching direction of the variable (downwards, upwards, auto)

Definition at line 283 of file struct_var.h.

Referenced by SCIPvarAggregate(), and SCIPvarTransform().

◆ eventqueueimpl

unsigned int SCIP_Var::eventqueueimpl

is an IMPLADDED event on this variable currently in the event queue?

Definition at line 284 of file struct_var.h.

Referenced by SCIPeventqueueProcess().

◆ delglobalstructs

unsigned int SCIP_Var::delglobalstructs

is variable marked to be removed from global structures (cliques etc.)?

Definition at line 285 of file struct_var.h.

◆ relaxationonly

unsigned int SCIP_Var::relaxationonly

TRUE if variable has been introduced only to define a relaxation

Definition at line 286 of file struct_var.h.

◆ scip

SCIP* SCIP_Var::scip

SCIP data structure

Definition at line 288 of file struct_var.h.

Referenced by SCIPgetVarCopy(), SCIPvarGetTransformed(), and SCIPvarTransform().