Scippy

SCIP

Solving Constraint Integer Programs

Detailed Description

methods for primal heuristic plugins

Modules

 Special Methods
 methods commonly used by primal heuristics
 

Functions

SCIP_EXPORT SCIP_DECL_SORTPTRCOMP (SCIPheurComp)
 
SCIP_EXPORT SCIP_DECL_SORTPTRCOMP (SCIPheurCompName)
 
SCIP_EXPORT SCIP_HEURDATASCIPheurGetData (SCIP_HEUR *heur)
 
SCIP_EXPORT void SCIPheurSetData (SCIP_HEUR *heur, SCIP_HEURDATA *heurdata)
 
SCIP_EXPORT const char * SCIPheurGetName (SCIP_HEUR *heur)
 
SCIP_EXPORT const char * SCIPheurGetDesc (SCIP_HEUR *heur)
 
SCIP_EXPORT char SCIPheurGetDispchar (SCIP_HEUR *heur)
 
SCIP_EXPORT SCIP_HEURTIMING SCIPheurGetTimingmask (SCIP_HEUR *heur)
 
SCIP_EXPORT void SCIPheurSetTimingmask (SCIP_HEUR *heur, SCIP_HEURTIMING timingmask)
 
SCIP_EXPORT SCIP_Bool SCIPheurUsesSubscip (SCIP_HEUR *heur)
 
SCIP_EXPORT int SCIPheurGetPriority (SCIP_HEUR *heur)
 
SCIP_EXPORT int SCIPheurGetFreq (SCIP_HEUR *heur)
 
SCIP_EXPORT void SCIPheurSetFreq (SCIP_HEUR *heur, int freq)
 
SCIP_EXPORT int SCIPheurGetFreqofs (SCIP_HEUR *heur)
 
SCIP_EXPORT int SCIPheurGetMaxdepth (SCIP_HEUR *heur)
 
SCIP_EXPORT SCIP_Longint SCIPheurGetNCalls (SCIP_HEUR *heur)
 
SCIP_EXPORT SCIP_Longint SCIPheurGetNSolsFound (SCIP_HEUR *heur)
 
SCIP_EXPORT SCIP_Longint SCIPheurGetNBestSolsFound (SCIP_HEUR *heur)
 
SCIP_EXPORT SCIP_Bool SCIPheurIsInitialized (SCIP_HEUR *heur)
 
SCIP_EXPORT SCIP_Real SCIPheurGetSetupTime (SCIP_HEUR *heur)
 
SCIP_EXPORT SCIP_Real SCIPheurGetTime (SCIP_HEUR *heur)
 
SCIP_EXPORT SCIP_DIVESET ** SCIPheurGetDivesets (SCIP_HEUR *heur)
 
SCIP_EXPORT int SCIPheurGetNDivesets (SCIP_HEUR *heur)
 
SCIP_EXPORT SCIP_RETCODE SCIPincludeHeur (SCIP *scip, const char *name, const char *desc, char dispchar, int priority, int freq, int freqofs, int maxdepth, SCIP_HEURTIMING timingmask, SCIP_Bool usessubscip, SCIP_DECL_HEURCOPY((*heurcopy)), SCIP_DECL_HEURFREE((*heurfree)), SCIP_DECL_HEURINIT((*heurinit)), SCIP_DECL_HEUREXIT((*heurexit)), SCIP_DECL_HEURINITSOL((*heurinitsol)), SCIP_DECL_HEUREXITSOL((*heurexitsol)), SCIP_DECL_HEUREXEC((*heurexec)), SCIP_HEURDATA *heurdata)
 
SCIP_EXPORT SCIP_RETCODE SCIPincludeHeurBasic (SCIP *scip, SCIP_HEUR **heur, const char *name, const char *desc, char dispchar, int priority, int freq, int freqofs, int maxdepth, SCIP_HEURTIMING timingmask, SCIP_Bool usessubscip, SCIP_DECL_HEUREXEC((*heurexec)), SCIP_HEURDATA *heurdata)
 
SCIP_EXPORT SCIP_RETCODE SCIPsetHeurCopy (SCIP *scip, SCIP_HEUR *heur, SCIP_DECL_HEURCOPY((*heurcopy)))
 
SCIP_EXPORT SCIP_RETCODE SCIPsetHeurFree (SCIP *scip, SCIP_HEUR *heur, SCIP_DECL_HEURFREE((*heurfree)))
 
SCIP_EXPORT SCIP_RETCODE SCIPsetHeurInit (SCIP *scip, SCIP_HEUR *heur, SCIP_DECL_HEURINIT((*heurinit)))
 
SCIP_EXPORT SCIP_RETCODE SCIPsetHeurExit (SCIP *scip, SCIP_HEUR *heur, SCIP_DECL_HEUREXIT((*heurexit)))
 
SCIP_EXPORT SCIP_RETCODE SCIPsetHeurInitsol (SCIP *scip, SCIP_HEUR *heur, SCIP_DECL_HEURINITSOL((*heurinitsol)))
 
SCIP_EXPORT SCIP_RETCODE SCIPsetHeurExitsol (SCIP *scip, SCIP_HEUR *heur, SCIP_DECL_HEUREXITSOL((*heurexitsol)))
 
SCIP_EXPORT SCIP_HEURSCIPfindHeur (SCIP *scip, const char *name)
 
SCIP_EXPORT SCIP_HEUR ** SCIPgetHeurs (SCIP *scip)
 
SCIP_EXPORT int SCIPgetNHeurs (SCIP *scip)
 
SCIP_EXPORT SCIP_RETCODE SCIPsetHeurPriority (SCIP *scip, SCIP_HEUR *heur, int priority)
 

Function Documentation

◆ SCIP_DECL_SORTPTRCOMP() [1/2]

SCIP_EXPORT SCIP_DECL_SORTPTRCOMP ( SCIPheurComp  )

compares two heuristics w. r. to their priority

compares two heuristics w. r. to their delay positions and their priority

Definition at line 42 of file heur.c.

References SCIP_Heur::delaypos, SCIP_Heur::freq, SCIP_Heur::ncalls, NULL, and SCIP_Heur::priority.

◆ SCIP_DECL_SORTPTRCOMP() [2/2]

SCIP_EXPORT SCIP_DECL_SORTPTRCOMP ( SCIPheurCompName  )

comparison method for sorting heuristics w.r.t. to their name

Definition at line 66 of file heur.c.

References SCIPheurGetName().

◆ SCIPheurGetData()

SCIP_EXPORT SCIP_HEURDATA* SCIPheurGetData ( SCIP_HEUR heur)

gets user data of primal heuristic

Parameters
heurprimal heuristic

Definition at line 1340 of file heur.c.

References SCIP_Heur::heurdata, and NULL.

Referenced by addCandSolCyckerlin(), addLocalbranchingConstraintAndObjcutoff(), applyRepair(), createNewSol(), createSolFromNLP(), createSolFromSubScipSol(), determineLimits(), executeHeuristic(), reduce_bound(), reduce_boundHopRc(), reduce_daSlackPruneMw(), SCIP_DECL_HEURCOPY(), SCIP_DECL_HEUREXEC(), SCIP_DECL_HEUREXIT(), SCIP_DECL_HEUREXITSOL(), SCIP_DECL_HEURFREE(), SCIP_DECL_HEURINIT(), SCIP_DECL_HEURINITSOL(), SCIP_DECL_TABLEOUTPUT(), SCIPaddLinearConsToNlpHeurSubNlp(), SCIPapplyHeurDualval(), SCIPapplyHeurSubNlp(), SCIPapplyLockFixings(), SCIPapplyProximity(), SCIPapplyUndercover(), SCIPapplyZeroobj(), SCIPdeleteSubproblemProximity(), SCIPfindObjHeur(), SCIPgetObjHeur(), SCIPgetStartCandidateHeurSubNlp(), SCIPgetSubScipHeurSubNlp(), SCIPgetVarMappingScip2SubScipHeurSubNlp(), SCIPgetVarMappingSubScip2ScipHeurSubNlp(), SCIPheurPassIndicator(), SCIPheurPassSolAddSol(), SCIPheurPassSolTrySol(), SCIPheurSyncPassSol(), SCIPinitHeurOptcumulative(), SCIPinitializeHeurListScheduling(), SCIPreoptsolsGetNCheckedsols(), SCIPreoptsolsGetNImprovingsols(), SCIPresolveSolHeurSubNlp(), SCIPStpHeurRecExclude(), SCIPStpHeurRecRun(), SCIPStpHeurTMRun(), SCIPStpHeurTMRunLP(), SCIPupdateStartpointHeurSubNlp(), setupAndSolveSubscip(), setupAndSolveSubscipLocalbranching(), setupAndSolveSubscipMutation(), setupAndSolveSubscipTrustregion(), setupSubScip(), solveSubNLP(), solveSubproblem(), and storeSolution().

◆ SCIPheurSetData()

SCIP_EXPORT void SCIPheurSetData ( SCIP_HEUR heur,
SCIP_HEURDATA heurdata 
)

sets user data of primal heuristic; user has to free old data in advance!

Parameters
heurprimal heuristic
heurdatanew primal heuristic user data

Definition at line 1350 of file heur.c.

References SCIP_Heur::heurdata, and NULL.

Referenced by presolveTwoOpt(), SCIP_DECL_HEUREXIT(), SCIP_DECL_HEUREXITSOL(), SCIP_DECL_HEURFREE(), SCIP_DECL_HEURINIT(), and SCIP_DECL_HEURINITSOL().

◆ SCIPheurGetName()

◆ SCIPheurGetDesc()

SCIP_EXPORT const char* SCIPheurGetDesc ( SCIP_HEUR heur)

gets description of primal heuristic

Parameters
heurprimal heuristic

Definition at line 1439 of file heur.c.

References SCIP_Heur::desc, and NULL.

Referenced by SCIP_DECL_DIALOGEXEC(), SCIPincludeDialogDefaultFix(), and SCIPincludeDialogDefaultSet().

◆ SCIPheurGetDispchar()

SCIP_EXPORT char SCIPheurGetDispchar ( SCIP_HEUR heur)

gets display character of primal heuristic

Parameters
heurprimal heuristic

Definition at line 1449 of file heur.c.

References SCIP_Heur::dispchar, and NULL.

Referenced by SCIP_DECL_DIALOGEXEC(), and SCIP_DECL_DISPOUTPUT().

◆ SCIPheurGetTimingmask()

SCIP_EXPORT SCIP_HEURTIMING SCIPheurGetTimingmask ( SCIP_HEUR heur)

returns the timing mask of the heuristic

Parameters
heurprimal heuristic

Definition at line 1459 of file heur.c.

References NULL, and SCIP_Heur::timingmask.

◆ SCIPheurSetTimingmask()

SCIP_EXPORT void SCIPheurSetTimingmask ( SCIP_HEUR heur,
SCIP_HEURTIMING  timingmask 
)

sets new timing mask for heuristic

Parameters
heurprimal heuristic
timingmasknew timing mask of heuristic

Definition at line 1469 of file heur.c.

References NULL, and SCIP_Heur::timingmask.

Referenced by SCIP_DECL_HEUREXEC(), SCIP_DECL_HEUREXITSOL(), SCIP_DECL_HEURINIT(), and SCIP_DECL_HEURINITSOL().

◆ SCIPheurUsesSubscip()

SCIP_EXPORT SCIP_Bool SCIPheurUsesSubscip ( SCIP_HEUR heur)

does the heuristic use a secondary SCIP instance?

Parameters
heurprimal heuristic

Definition at line 1480 of file heur.c.

References NULL, and SCIP_Heur::usessubscip.

Referenced by paramsetSetHeuristicsFast(), SCIPparamsetSetEmphasis(), and SCIPparamsetSetToSubscipsOff().

◆ SCIPheurGetPriority()

SCIP_EXPORT int SCIPheurGetPriority ( SCIP_HEUR heur)

gets priority of primal heuristic

Parameters
heurprimal heuristic

Definition at line 1490 of file heur.c.

References NULL, and SCIP_Heur::priority.

Referenced by SCIP_DECL_DIALOGEXEC(), and SCIPprimalHeuristics().

◆ SCIPheurGetFreq()

SCIP_EXPORT int SCIPheurGetFreq ( SCIP_HEUR heur)

gets frequency of primal heuristic

Parameters
heurprimal heuristic

Definition at line 1514 of file heur.c.

References SCIP_Heur::freq, and NULL.

Referenced by checkParameters(), SCIP_DECL_DIALOGEXEC(), SCIP_DECL_HEUREXEC(), SCIP_DECL_HEURINIT(), SCIP_DECL_HEURINITSOL(), and SCIPupdateStartpointHeurSubNlp().

◆ SCIPheurSetFreq()

SCIP_EXPORT void SCIPheurSetFreq ( SCIP_HEUR heur,
int  freq 
)

sets frequency of primal heuristic

Parameters
heurprimal heuristic
freqnew frequency of heuristic

Definition at line 1524 of file heur.c.

References SCIP_Heur::freq, and NULL.

Referenced by SCIP_DECL_HEUREXEC(), SCIPheurSyncPassSol(), and storeSolution().

◆ SCIPheurGetFreqofs()

SCIP_EXPORT int SCIPheurGetFreqofs ( SCIP_HEUR heur)

gets frequency offset of primal heuristic

Parameters
heurprimal heuristic

Definition at line 1535 of file heur.c.

References SCIP_Heur::freqofs, and NULL.

Referenced by SCIP_DECL_DIALOGEXEC(), SCIP_DECL_HEURINIT(), and SCIP_DECL_HEURINITSOL().

◆ SCIPheurGetMaxdepth()

SCIP_EXPORT int SCIPheurGetMaxdepth ( SCIP_HEUR heur)

gets maximal depth level for calling primal heuristic (returns -1, if no depth limit exists)

Parameters
heurprimal heuristic

Definition at line 1545 of file heur.c.

References SCIP_Heur::maxdepth, and NULL.

◆ SCIPheurGetNCalls()

SCIP_EXPORT SCIP_Longint SCIPheurGetNCalls ( SCIP_HEUR heur)

gets the number of times, the heuristic was called and tried to find a solution

Parameters
heurprimal heuristic

Definition at line 1555 of file heur.c.

References SCIP_Heur::ncalls, and NULL.

Referenced by applyVbounds(), calcNodeLimit(), determineLimits(), getLPIterlimit(), SCIP_DECL_HEUREXEC(), SCIPapplyZeroobj(), SCIPprintHeuristicStatistics(), selectDiving(), setupAndSolveSubscipCrossover(), and setupSubScip().

◆ SCIPheurGetNSolsFound()

SCIP_EXPORT SCIP_Longint SCIPheurGetNSolsFound ( SCIP_HEUR heur)

gets the number of primal feasible solutions found by this heuristic

Parameters
heurprimal heuristic

Definition at line 1565 of file heur.c.

References SCIP_Heur::nsolsfound, and NULL.

Referenced by getLPIterlimit(), SCIP_DECL_HEUREXEC(), and SCIPprintHeuristicStatistics().

◆ SCIPheurGetNBestSolsFound()

SCIP_EXPORT SCIP_Longint SCIPheurGetNBestSolsFound ( SCIP_HEUR heur)

gets the number of new best primal feasible solutions found by this heuristic

Parameters
heurprimal heuristic

Definition at line 1575 of file heur.c.

References SCIP_Heur::nbestsolsfound, and NULL.

Referenced by applyVbounds(), determineLimits(), getLPIterlimit(), SCIP_DECL_HEUREXEC(), and SCIPprintHeuristicStatistics().

◆ SCIPheurIsInitialized()

SCIP_EXPORT SCIP_Bool SCIPheurIsInitialized ( SCIP_HEUR heur)

is primal heuristic initialized?

Parameters
heurprimal heuristic

Definition at line 1585 of file heur.c.

References SCIP_Heur::initialized, and NULL.

◆ SCIPheurGetSetupTime()

SCIP_EXPORT SCIP_Real SCIPheurGetSetupTime ( SCIP_HEUR heur)

gets time in seconds used in this heuristic for setting up for next stages

Parameters
heurprimal heuristic

Definition at line 1607 of file heur.c.

References NULL, SCIPclockGetTime(), and SCIP_Heur::setuptime.

Referenced by SCIPprintHeuristicStatistics().

◆ SCIPheurGetTime()

SCIP_EXPORT SCIP_Real SCIPheurGetTime ( SCIP_HEUR heur)

gets time in seconds used in this heuristic

Parameters
heurprimal heuristic

Definition at line 1617 of file heur.c.

References SCIP_Heur::heurclock, NULL, and SCIPclockGetTime().

Referenced by SCIPprintHeuristicStatistics().

◆ SCIPheurGetDivesets()

SCIP_EXPORT SCIP_DIVESET** SCIPheurGetDivesets ( SCIP_HEUR heur)

returns array of divesets of this primal heuristic, or NULL if it has no divesets

Parameters
heurprimal heuristic

Definition at line 1627 of file heur.c.

References SCIP_Heur::divesets, and NULL.

Referenced by findAndStoreDivesets(), and SCIPprintHeuristicStatistics().

◆ SCIPheurGetNDivesets()

SCIP_EXPORT int SCIPheurGetNDivesets ( SCIP_HEUR heur)

returns the number of divesets of this primal heuristic

Parameters
heurprimal heuristic

Definition at line 1637 of file heur.c.

References SCIP_Heur::ndivesets, and NULL.

Referenced by findAndStoreDivesets(), and SCIPprintHeuristicStatistics().

◆ SCIPincludeHeur()

SCIP_EXPORT SCIP_RETCODE SCIPincludeHeur ( SCIP scip,
const char *  name,
const char *  desc,
char  dispchar,
int  priority,
int  freq,
int  freqofs,
int  maxdepth,
SCIP_HEURTIMING  timingmask,
SCIP_Bool  usessubscip,
SCIP_DECL_HEURCOPY((*heurcopy))  ,
SCIP_DECL_HEURFREE((*heurfree))  ,
SCIP_DECL_HEURINIT((*heurinit))  ,
SCIP_DECL_HEUREXIT((*heurexit))  ,
SCIP_DECL_HEURINITSOL((*heurinitsol))  ,
SCIP_DECL_HEUREXITSOL((*heurexitsol))  ,
SCIP_DECL_HEUREXEC((*heurexec))  ,
SCIP_HEURDATA heurdata 
)

creates a primal heuristic and includes it in SCIP.

Note
method has all heuristic callbacks as arguments and is thus changed every time a new callback is added in future releases; consider using SCIPincludeHeurBasic() and setter functions if you seek for a method which is less likely to change in future releases
Returns
SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see SCIP_RETCODE for a complete list of error codes.
Precondition
This method can be called if scip is in one of the following stages:
Parameters
scipSCIP data structure
namename of primal heuristic
descdescription of primal heuristic
dispchardisplay character of primal heuristic
prioritypriority of the primal heuristic
freqfrequency for calling primal heuristic
freqofsfrequency offset for calling primal heuristic
maxdepthmaximal depth level to call heuristic at (-1: no limit)
timingmaskpositions in the node solving loop where heuristic should be executed; see definition of SCIP_HEURTIMING for possible values
usessubscipdoes the heuristic use a secondary SCIP instance?
heurdataprimal heuristic data

Definition at line 58 of file scip_heur.c.

References FALSE, Scip::mem, Scip::messagehdlr, NULL, SCIP_CALL, SCIP_INVALIDDATA, SCIP_OKAY, SCIPcheckStage(), SCIPerrorMessage, SCIPfindHeur(), SCIPheurCreate(), SCIPsetIncludeHeur(), Scip::set, SCIP_Mem::setmem, and TRUE.

Referenced by SCIPincludeHeurOptcumulative(), and SCIPincludeObjHeur().

◆ SCIPincludeHeurBasic()

SCIP_EXPORT SCIP_RETCODE SCIPincludeHeurBasic ( SCIP scip,
SCIP_HEUR **  heur,
const char *  name,
const char *  desc,
char  dispchar,
int  priority,
int  freq,
int  freqofs,
int  maxdepth,
SCIP_HEURTIMING  timingmask,
SCIP_Bool  usessubscip,
SCIP_DECL_HEUREXEC((*heurexec))  ,
SCIP_HEURDATA heurdata 
)

creates a primal heuristic and includes it in SCIP with its most fundamental callbacks. All non-fundamental (or optional) callbacks as, e. g., init and exit callbacks, will be set to NULL. Optional callbacks can be set via specific setter functions, see SCIPsetHeurCopy(), SCIPsetHeurFree(), SCIPsetHeurInit(), SCIPsetHeurExit(), SCIPsetHeurInitsol(), and SCIPsetHeurExitsol()

Note
if you want to set all callbacks with a single method call, consider using SCIPincludeHeur() instead
Parameters
scipSCIP data structure
heurpointer to primal heuristic
namename of primal heuristic
descdescription of primal heuristic
dispchardisplay character of primal heuristic
prioritypriority of the primal heuristic
freqfrequency for calling primal heuristic
freqofsfrequency offset for calling primal heuristic
maxdepthmaximal depth level to call heuristic at (-1: no limit)
timingmaskpositions in the node solving loop where heuristic should be executed; see definition of SCIP_HEURTIMING for possible values
usessubscipdoes the heuristic use a secondary SCIP instance?
heurdataprimal heuristic data

Definition at line 108 of file scip_heur.c.

References FALSE, Scip::mem, Scip::messagehdlr, NULL, SCIP_CALL, SCIP_INVALIDDATA, SCIP_OKAY, SCIPcheckStage(), SCIPerrorMessage, SCIPfindHeur(), SCIPheurCreate(), SCIPsetIncludeHeur(), Scip::set, SCIP_Mem::setmem, and TRUE.

Referenced by SCIPincludeHeurActconsdiving(), SCIPincludeHeurAdaptivediving(), SCIPincludeHeurAlns(), SCIPincludeHeurBound(), SCIPincludeHeurCoefdiving(), SCIPincludeHeurCompletesol(), SCIPincludeHeurConflictdiving(), SCIPincludeHeurCrossover(), SCIPincludeHeurCycGreedy(), SCIPincludeHeurCycKerlin(), SCIPincludeHeurDins(), SCIPincludeHeurDualval(), SCIPincludeHeurFixandinfer(), SCIPincludeHeurFracdiving(), SCIPincludeHeurFuzzyround(), SCIPincludeHeurGuideddiving(), SCIPincludeHeurIndicator(), SCIPincludeHeurInit(), SCIPincludeHeurIntdiving(), SCIPincludeHeurIntshifting(), SCIPincludeHeurLinesearchdiving(), SCIPincludeHeurListScheduling(), SCIPincludeHeurLocalbranching(), SCIPincludeHeurLpface(), SCIPincludeHeurMpec(), SCIPincludeHeurMultistart(), SCIPincludeHeurMutation(), SCIPincludeHeurObjpscostdiving(), SCIPincludeHeurOctane(), SCIPincludeHeurOfins(), SCIPincludeHeurOneopt(), SCIPincludeHeurPADM(), SCIPincludeHeurProximity(), SCIPincludeHeurPscostdiving(), SCIPincludeHeurRandrounding(), SCIPincludeHeurRedsize(), SCIPincludeHeurRens(), SCIPincludeHeurReoptsols(), SCIPincludeHeurRins(), SCIPincludeHeurRootsoldiving(), SCIPincludeHeurRounding(), SCIPincludeHeurShiftandpropagate(), SCIPincludeHeurShifting(), SCIPincludeHeurSimplerounding(), SCIPincludeHeurSubNlp(), SCIPincludeHeurSync(), SCIPincludeHeurTrivial(), SCIPincludeHeurTrivialnegation(), SCIPincludeHeurTrustregion(), SCIPincludeHeurTrySol(), SCIPincludeHeurTwoopt(), SCIPincludeHeurUndercover(), SCIPincludeHeurVeclendiving(), SCIPincludeHeurZeroobj(), SCIPincludeHeurZirounding(), SCIPStpIncludeHeurAscendPrune(), SCIPStpIncludeHeurLocal(), SCIPStpIncludeHeurPrune(), SCIPStpIncludeHeurRec(), SCIPStpIncludeHeurSlackPrune(), and SCIPStpIncludeHeurTM().

◆ SCIPsetHeurCopy()

SCIP_EXPORT SCIP_RETCODE SCIPsetHeurCopy ( SCIP scip,
SCIP_HEUR heur,
SCIP_DECL_HEURCOPY((*heurcopy))   
)

sets copy method of primal heuristic

Parameters
scipSCIP data structure
heurprimal heuristic

Definition at line 153 of file scip_heur.c.

References FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPheurSetCopy(), and TRUE.

Referenced by SCIPincludeHeurActconsdiving(), SCIPincludeHeurAdaptivediving(), SCIPincludeHeurAlns(), SCIPincludeHeurBound(), SCIPincludeHeurCoefdiving(), SCIPincludeHeurCompletesol(), SCIPincludeHeurConflictdiving(), SCIPincludeHeurCrossover(), SCIPincludeHeurCycGreedy(), SCIPincludeHeurCycKerlin(), SCIPincludeHeurDins(), SCIPincludeHeurFixandinfer(), SCIPincludeHeurFracdiving(), SCIPincludeHeurGuideddiving(), SCIPincludeHeurIndicator(), SCIPincludeHeurInit(), SCIPincludeHeurIntdiving(), SCIPincludeHeurIntshifting(), SCIPincludeHeurLinesearchdiving(), SCIPincludeHeurLocalbranching(), SCIPincludeHeurLpface(), SCIPincludeHeurMpec(), SCIPincludeHeurMultistart(), SCIPincludeHeurMutation(), SCIPincludeHeurObjpscostdiving(), SCIPincludeHeurOctane(), SCIPincludeHeurOfins(), SCIPincludeHeurOneopt(), SCIPincludeHeurPADM(), SCIPincludeHeurProximity(), SCIPincludeHeurPscostdiving(), SCIPincludeHeurRandrounding(), SCIPincludeHeurRedsize(), SCIPincludeHeurRens(), SCIPincludeHeurReoptsols(), SCIPincludeHeurRins(), SCIPincludeHeurRootsoldiving(), SCIPincludeHeurRounding(), SCIPincludeHeurShiftandpropagate(), SCIPincludeHeurShifting(), SCIPincludeHeurSimplerounding(), SCIPincludeHeurSubNlp(), SCIPincludeHeurTrivial(), SCIPincludeHeurTrivialnegation(), SCIPincludeHeurTrustregion(), SCIPincludeHeurTrySol(), SCIPincludeHeurTwoopt(), SCIPincludeHeurUndercover(), SCIPincludeHeurVeclendiving(), SCIPincludeHeurZeroobj(), SCIPincludeHeurZirounding(), SCIPStpIncludeHeurAscendPrune(), SCIPStpIncludeHeurLocal(), SCIPStpIncludeHeurPrune(), SCIPStpIncludeHeurRec(), SCIPStpIncludeHeurSlackPrune(), and SCIPStpIncludeHeurTM().

◆ SCIPsetHeurFree()

SCIP_EXPORT SCIP_RETCODE SCIPsetHeurFree ( SCIP scip,
SCIP_HEUR heur,
SCIP_DECL_HEURFREE((*heurfree))   
)

sets destructor method of primal heuristic

Parameters
scipSCIP data structure
heurprimal heuristic

Definition at line 169 of file scip_heur.c.

References FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPheurSetFree(), and TRUE.

Referenced by SCIPincludeHeurActconsdiving(), SCIPincludeHeurAdaptivediving(), SCIPincludeHeurAlns(), SCIPincludeHeurBound(), SCIPincludeHeurCoefdiving(), SCIPincludeHeurCompletesol(), SCIPincludeHeurConflictdiving(), SCIPincludeHeurCrossover(), SCIPincludeHeurCycGreedy(), SCIPincludeHeurCycKerlin(), SCIPincludeHeurDins(), SCIPincludeHeurDualval(), SCIPincludeHeurFixandinfer(), SCIPincludeHeurFracdiving(), SCIPincludeHeurGuideddiving(), SCIPincludeHeurIndicator(), SCIPincludeHeurInit(), SCIPincludeHeurIntdiving(), SCIPincludeHeurLinesearchdiving(), SCIPincludeHeurListScheduling(), SCIPincludeHeurLocalbranching(), SCIPincludeHeurLpface(), SCIPincludeHeurMpec(), SCIPincludeHeurMultistart(), SCIPincludeHeurMutation(), SCIPincludeHeurObjpscostdiving(), SCIPincludeHeurOctane(), SCIPincludeHeurOfins(), SCIPincludeHeurOneopt(), SCIPincludeHeurPADM(), SCIPincludeHeurProximity(), SCIPincludeHeurPscostdiving(), SCIPincludeHeurRandrounding(), SCIPincludeHeurRedsize(), SCIPincludeHeurRens(), SCIPincludeHeurReoptsols(), SCIPincludeHeurRins(), SCIPincludeHeurRootsoldiving(), SCIPincludeHeurRounding(), SCIPincludeHeurShiftandpropagate(), SCIPincludeHeurSimplerounding(), SCIPincludeHeurSubNlp(), SCIPincludeHeurSync(), SCIPincludeHeurTrustregion(), SCIPincludeHeurTrySol(), SCIPincludeHeurTwoopt(), SCIPincludeHeurUndercover(), SCIPincludeHeurVeclendiving(), SCIPincludeHeurZeroobj(), SCIPincludeHeurZirounding(), SCIPStpIncludeHeurAscendPrune(), SCIPStpIncludeHeurLocal(), SCIPStpIncludeHeurPrune(), SCIPStpIncludeHeurRec(), SCIPStpIncludeHeurSlackPrune(), and SCIPStpIncludeHeurTM().

◆ SCIPsetHeurInit()

SCIP_EXPORT SCIP_RETCODE SCIPsetHeurInit ( SCIP scip,
SCIP_HEUR heur,
SCIP_DECL_HEURINIT((*heurinit))   
)

sets initialization method of primal heuristic

Parameters
scipSCIP data structure
heurprimal heuristic

Definition at line 185 of file scip_heur.c.

References FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPheurSetInit(), and TRUE.

Referenced by SCIPincludeHeurActconsdiving(), SCIPincludeHeurAdaptivediving(), SCIPincludeHeurAlns(), SCIPincludeHeurCoefdiving(), SCIPincludeHeurConflictdiving(), SCIPincludeHeurCrossover(), SCIPincludeHeurCycGreedy(), SCIPincludeHeurCycKerlin(), SCIPincludeHeurDualval(), SCIPincludeHeurFracdiving(), SCIPincludeHeurGuideddiving(), SCIPincludeHeurIndicator(), SCIPincludeHeurIntdiving(), SCIPincludeHeurIntshifting(), SCIPincludeHeurLinesearchdiving(), SCIPincludeHeurLocalbranching(), SCIPincludeHeurLpface(), SCIPincludeHeurMultistart(), SCIPincludeHeurMutation(), SCIPincludeHeurObjpscostdiving(), SCIPincludeHeurOctane(), SCIPincludeHeurOneopt(), SCIPincludeHeurProximity(), SCIPincludeHeurPscostdiving(), SCIPincludeHeurRandrounding(), SCIPincludeHeurRens(), SCIPincludeHeurReoptsols(), SCIPincludeHeurRins(), SCIPincludeHeurRootsoldiving(), SCIPincludeHeurRounding(), SCIPincludeHeurShiftandpropagate(), SCIPincludeHeurShifting(), SCIPincludeHeurSimplerounding(), SCIPincludeHeurTrustregion(), SCIPincludeHeurTwoopt(), SCIPincludeHeurUndercover(), SCIPincludeHeurVeclendiving(), SCIPincludeHeurZeroobj(), SCIPincludeHeurZirounding(), SCIPStpIncludeHeurAscendPrune(), SCIPStpIncludeHeurPrune(), SCIPStpIncludeHeurRec(), SCIPStpIncludeHeurSlackPrune(), and SCIPStpIncludeHeurTM().

◆ SCIPsetHeurExit()

◆ SCIPsetHeurInitsol()

◆ SCIPsetHeurExitsol()

◆ SCIPfindHeur()

◆ SCIPgetHeurs()

SCIP_EXPORT SCIP_HEUR** SCIPgetHeurs ( SCIP scip)

returns the array of currently available primal heuristics

Parameters
scipSCIP data structure

Definition at line 262 of file scip_heur.c.

References SCIP_Set::heurs, NULL, SCIPsetSortHeurs(), and Scip::set.

Referenced by checkParameters(), findAndStoreDivesets(), paramsetSetHeuristicsFast(), SCIP_DECL_DIALOGEXEC(), SCIPcopyConcurrentSolvingStats(), SCIPincludeDialogDefaultFix(), and SCIPincludeDialogDefaultSet().

◆ SCIPgetNHeurs()

SCIP_EXPORT int SCIPgetNHeurs ( SCIP scip)

returns the number of currently available primal heuristics

Parameters
scipSCIP data structure

Definition at line 275 of file scip_heur.c.

References SCIP_Set::nheurs, NULL, and Scip::set.

Referenced by checkParameters(), findAndStoreDivesets(), paramsetSetHeuristicsFast(), SCIP_DECL_DIALOGEXEC(), SCIPcopyConcurrentSolvingStats(), SCIPincludeDialogDefaultFix(), and SCIPincludeDialogDefaultSet().

◆ SCIPsetHeurPriority()

SCIP_EXPORT SCIP_RETCODE SCIPsetHeurPriority ( SCIP scip,
SCIP_HEUR heur,
int  priority 
)

sets the priority of a primal heuristic

Parameters
scipSCIP data structure
heurprimal heuristic
prioritynew priority of the primal heuristic

Definition at line 286 of file scip_heur.c.

References NULL, SCIP_OKAY, SCIPheurSetPriority(), and Scip::set.

Referenced by SCIP_DECL_PARAMCHGD().