Scippy

SCIP

Solving Constraint Integer Programs

Detailed Description

implementation files (.c files) of the default primal heuristics of SCIP

Files

file  heur_actconsdiving.c
 LP diving heuristic that chooses fixings w.r.t. the active constraints the variable appear in.
 
file  heur_adaptivediving.c
 diving heuristic that selects adaptively between the existing, public dive sets
 
file  heur_alns.c
 Adaptive large neighborhood search heuristic that orchestrates popular LNS heuristics.
 
file  heur_bound.c
 heuristic which fixes all integer variables to a bound (lower/upper) and solves the remaining LP
 
file  heur_clique.c
 LNS heuristic using a clique partition to restrict the search neighborhood.
 
file  heur_coefdiving.c
 LP diving heuristic that chooses fixings w.r.t. the matrix coefficients.
 
file  heur_completesol.c
 COMPLETESOL - primal heuristic trying to complete given partial solutions.
 
file  heur_conflictdiving.c
 LP diving heuristic that chooses fixings w.r.t. conflict locks.
 
file  heur_crossover.c
 crossover primal heuristic
 
file  heur_dins.c
 DINS primal heuristic (according to Ghosh)
 
file  heur_distributiondiving.c
 Diving heuristic that chooses fixings w.r.t. changes in the solution density after Pryor and Chinneck.
 
file  heur_dualval.c
 dualval primal heuristic
 
file  heur_farkasdiving.c
 LP diving heuristic that tries to construct a Farkas-proof.
 
file  heur_feaspump.c
 Objective Feasibility Pump 2.0.
 
file  heur_fixandinfer.c
 fix-and-infer primal heuristic
 
file  heur_fracdiving.c
 LP diving heuristic that chooses fixings w.r.t. the fractionalities.
 
file  heur_gins.c
 LNS heuristic that tries to delimit the search region to a neighborhood in the constraint graph.
 
file  heur_guideddiving.c
 LP diving heuristic that chooses fixings in direction of incumbent solutions.
 
file  heur_indicator.c
 handle partial solutions for linear problems with indicators and otherwise continuous variables
 
file  heur_intdiving.c
 LP diving heuristic that fixes variables with integral LP value.
 
file  heur_intshifting.c
 LP rounding heuristic that tries to recover from intermediate infeasibilities, shifts integer variables, and solves a final LP to calculate feasible values for continuous variables.
 
file  heur_linesearchdiving.c
 LP diving heuristic that fixes variables with a large difference to their root solution.
 
file  heur_localbranching.c
 Local branching heuristic according to Fischetti and Lodi.
 
file  heur_locks.c
 rounding locks primal heuristic
 
file  heur_lpface.c
 lpface primal heuristic that searches the optimal LP face inside a sub-MIP
 
file  heur_mpec.c
 mpec primal heuristic
 
file  heur_multistart.c
 multistart heuristic for convex and nonconvex MINLPs
 
file  heur_mutation.c
 LNS heuristic that tries to randomly mutate the incumbent solution.
 
file  heur_nlpdiving.c
 NLP diving heuristic that chooses fixings w.r.t. the fractionalities.
 
file  heur_objpscostdiving.c
 LP diving heuristic that changes variable's objective value instead of bounds, using pseudo cost values as guide.
 
file  heur_octane.c
 octane primal heuristic based on Balas, Ceria, Dawande, Margot, and Pataki
 
file  heur_ofins.c
 OFINS - Objective Function Induced Neighborhood Search - a primal heuristic for reoptimization.
 
file  heur_oneopt.c
 improvement heuristic that alters single variable values
 
file  heur_proximity.c
 improvement heuristic which uses an auxiliary objective instead of the original objective function which is itself added as a constraint to a sub-SCIP instance. The heuristic was presented by Matteo Fischetti and Michele Monaci.
 
file  heur_pscostdiving.c
 LP diving heuristic that chooses fixings w.r.t. the pseudo cost values.
 
file  heur_randrounding.c
 randomized LP rounding heuristic which also generates conflicts via an auxiliary probing tree
 
file  heur_rens.c
 LNS heuristic that finds the optimal rounding to a given point.
 
file  heur_reoptsols.c
 reoptsols primal heuristic
 
file  heur_repair.c
 repair primal heuristic
 
file  heur_rins.c
 LNS heuristic that combines the incumbent with the LP optimum.
 
file  heur_rootsoldiving.c
 LP diving heuristic that changes variable's objective values using root LP solution as guide.
 
file  heur_rounding.c
 LP rounding heuristic that tries to recover from intermediate infeasibilities.
 
file  heur_shiftandpropagate.c
 shiftandpropagate primal heuristic
 
file  heur_shifting.c
 LP rounding heuristic that tries to recover from intermediate infeasibilities and shifts continuous variables.
 
file  heur_simplerounding.c
 simple and fast LP rounding heuristic
 
file  heur_subnlp.c
 NLP local search primal heuristic using sub-SCIPs.
 
file  heur_sync.c
 primal heuristic that adds solutions from synchronization
 
file  heur_trivial.c
 trivial primal heuristic
 
file  heur_trivialnegation.c
 trivialnegation primal heuristic
 
file  heur_trustregion.c
 Large neighborhood search heuristic for Benders' decomposition based on trust region methods.
 
file  heur_trysol.c
 primal heuristic that tries a given solution
 
file  heur_twoopt.c
 primal heuristic to improve incumbent solution by flipping pairs of variables
 
file  heur_undercover.c
 Undercover primal heuristic for MINLPs.
 
file  heur_vbounds.c
 LNS heuristic uses the variable lower and upper bounds to determine the search neighborhood.
 
file  heur_veclendiving.c
 LP diving heuristic that rounds variables with long column vectors.
 
file  heur_zeroobj.c
 heuristic that tries to solve the problem without objective. In Gurobi, this heuristic is known as "Hail Mary"
 
file  heur_zirounding.c
 zirounding primal heuristic