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_dks.c
     dks primal heuristic
     
    file  heur_dps.c
     dynamic partition search
     
    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_indicatordiving.c
     LP diving heuristic that fixes indicator variables controlling semicontinuous 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_scheduler.c
     Adaptive heuristic to schedule LNS and diving heuristics.
     
    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