Scippy

SCIP

Solving Constraint Integer Programs

Nh Struct Reference

Detailed Description

neighborhood data structure with callbacks, statistics, fixing rate

Definition at line 371 of file heur_alns.c.

Public Member Functions

 DECL_VARFIXINGS ((*varfixings))
 
 DECL_CHANGESUBSCIP ((*changesubscip))
 
 DECL_NHINIT ((*nhinit))
 
 DECL_NHEXIT ((*nhexit))
 
 DECL_NHFREE ((*nhfree))
 
 DECL_NHREFSOL ((*nhrefsol))
 
 DECL_NHDEACTIVATE ((*nhdeactivate))
 
 DECL_VARFIXINGS ((*varfixings))
 
 DECL_CHANGESUBSCIP ((*changesubscip))
 
 DECL_NHINIT ((*nhinit))
 
 DECL_NHEXIT ((*nhexit))
 
 DECL_NHFREE ((*nhfree))
 
 DECL_NHREFSOL ((*nhrefsol))
 
 DECL_NHDEACTIVATE ((*nhdeactivate))
 

Data Fields

char * name
 
NH_FIXINGRATE fixingrate
 
NH_STATS stats
 
SCIP_Bool active
 
SCIP_Real priority
 
union {
   DATA_MUTATION *   mutation
 
   DATA_CROSSOVER *   crossover
 
   DATA_DINS *   dins
 
   DATA_TRUSTREGION *   trustregion
 
data
 
HEUR_STATS stats
 
int nodelimit
 
int rootnodepriority
 
union {
   DATA_MUTATION *   mutation
 
   DATA_CROSSOVER *   crossover
 
   DATA_DINS *   dins
 
   DATA_TRUSTREGION *   trustregion
 
data
 

Member Function Documentation

◆ DECL_VARFIXINGS() [1/2]

Nh::DECL_VARFIXINGS ( varfixings)

variable fixings callback for this neighborhood

◆ DECL_CHANGESUBSCIP() [1/2]

Nh::DECL_CHANGESUBSCIP ( changesubscip)

callback for subproblem changes other than variable fixings

◆ DECL_NHINIT() [1/2]

Nh::DECL_NHINIT ( nhinit)

initialization callback when a new problem is read

◆ DECL_NHEXIT() [1/2]

Nh::DECL_NHEXIT ( nhexit)

deinitialization callback when exiting a problem

◆ DECL_NHFREE() [1/2]

Nh::DECL_NHFREE ( nhfree)

deinitialization callback before SCIP is freed

◆ DECL_NHREFSOL() [1/2]

Nh::DECL_NHREFSOL ( nhrefsol)

callback function to return a reference solution for further fixings, or NULL

◆ DECL_NHDEACTIVATE() [1/2]

Nh::DECL_NHDEACTIVATE ( nhdeactivate)

callback function to deactivate neighborhoods on problems where they are irrelevant, or NULL if it is always active

◆ DECL_VARFIXINGS() [2/2]

Nh::DECL_VARFIXINGS ( varfixings)

variable fixings callback for this neighborhood

◆ DECL_CHANGESUBSCIP() [2/2]

Nh::DECL_CHANGESUBSCIP ( changesubscip)

callback for subproblem changes other than variable fixings

◆ DECL_NHINIT() [2/2]

Nh::DECL_NHINIT ( nhinit)

initialization callback when a new problem is read

◆ DECL_NHEXIT() [2/2]

Nh::DECL_NHEXIT ( nhexit)

deinitialization callback when exiting a problem

◆ DECL_NHFREE() [2/2]

Nh::DECL_NHFREE ( nhfree)

deinitialization callback before SCIP is freed

◆ DECL_NHREFSOL() [2/2]

Nh::DECL_NHREFSOL ( nhrefsol)

callback function to return a reference solution for further fixings, or NULL

◆ DECL_NHDEACTIVATE() [2/2]

Nh::DECL_NHDEACTIVATE ( nhdeactivate)

callback function to deactivate neighborhoods on problems where they are irrelevant, or NULL if it is always active

Field Documentation

◆ name

char * Nh::name

the name of this neighborhood

Definition at line 373 of file heur_alns.c.

Referenced by alnsFreeNeighborhood(), executeLNSHeuristic(), printNeighborhoodStatistics(), schedulerFreeNeighborhood(), and SCIP_DECL_HEUREXEC().

◆ fixingrate

NH_FIXINGRATE Nh::fixingrate

◆ stats [1/2]

◆ active

SCIP_Bool Nh::active

is this neighborhood active or not?

Definition at line 383 of file heur_alns.c.

Referenced by SCIP_DECL_HEURINITSOL().

◆ priority

SCIP_Real Nh::priority

positive call priority to initialize bandit algorithms

Definition at line 384 of file heur_alns.c.

◆ mutation

DATA_MUTATION* Nh::mutation

mutation data

Definition at line 387 of file heur_alns.c.

Referenced by DECL_NHEXIT(), DECL_NHINIT(), and DECL_VARFIXINGS().

◆ crossover

DATA_CROSSOVER* Nh::crossover

crossover data

Definition at line 388 of file heur_alns.c.

Referenced by DECL_NHEXIT(), DECL_NHFREE(), DECL_NHINIT(), DECL_NHREFSOL(), DECL_VARFIXINGS(), and includeNeighborhoods().

◆ dins

DATA_DINS* Nh::dins

dins data

Definition at line 389 of file heur_alns.c.

Referenced by DECL_NHFREE(), DECL_VARFIXINGS(), and includeNeighborhoods().

◆ trustregion

DATA_TRUSTREGION* Nh::trustregion

trustregion data

Definition at line 390 of file heur_alns.c.

Referenced by DECL_CHANGESUBSCIP(), DECL_NHFREE(), and includeNeighborhoods().

◆ data [1/2]

union { ... } Nh::data

data object for neighborhood specific data

Referenced by DECL_CHANGESUBSCIP(), DECL_NHEXIT(), DECL_NHFREE(), DECL_NHINIT(), DECL_NHREFSOL(), DECL_VARFIXINGS(), and includeNeighborhoods().

◆ stats [2/2]

HEUR_STATS Nh::stats

statistics for this neighborhood

Definition at line 396 of file heur_scheduler.c.

◆ nodelimit

int Nh::nodelimit

nodelimit for next execution

Definition at line 397 of file heur_scheduler.c.

◆ rootnodepriority

int Nh::rootnodepriority

heuristic's priority for call at rootnode

Definition at line 407 of file heur_scheduler.c.

◆ data [2/2]

union { ... } Nh::data

data object for neighborhood specific data