Ignore:
Timestamp:
Nov 5, 2009 10:57:25 AM (10 years ago)
Author:
forrest
Message:

Creating new stable branch 2.4 from trunk (rev 1270)

Location:
stable/2.4
Files:
1 edited
1 copied

Legend:

Unmodified
Added
Removed
  • stable/2.4

    • Property svn:externals
      •  

        old new  
        77CoinUtils         https://projects.coin-or.org/svn/CoinUtils/stable/2.5/CoinUtils
        88Cgl               https://projects.coin-or.org/svn/Cgl/stable/0.54/Cgl
        9 Clp               https://projects.coin-or.org/svn/Clp/stable/1.10/Clp
         9Clp               https://projects.coin-or.org/svn/Clp/stable/1.11/Clp
        1010Osi               https://projects.coin-or.org/svn/Osi/stable/0.100/Osi
        1111Vol               https://projects.coin-or.org/svn/Vol/stable/1.1/Vol
  • stable/2.4/Cbc/src/CbcHeuristicDive.hpp

    r1040 r1271  
     1/* $Id: CbcHeuristicDive.hpp 1252 2009-10-20 09:22:24Z stefan $ */
    12// Copyright (C) 2008, International Business Machines
    23// Corporation and others.  All Rights Reserved.
     
    56
    67#include "CbcHeuristic.hpp"
     8struct PseudoReducedCost {
     9  int var;
     10  double pseudoRedCost;
     11};
     12
    713
    814/** Dive class
     
    3137
    3238  /// Create C++ lines to get to current state
    33   virtual void generateCpp( FILE * fp) {}
     39  virtual void generateCpp( FILE * ) {}
    3440
    3541  /// Create C++ lines to get to current state - does work for base class
     
    8187  virtual bool canHeuristicRun();
    8288
    83   /// Selects the next variable to branch on
    84   /** Returns true if all the fractional variables can be trivially
     89  /** Selects the next variable to branch on
     90      Returns true if all the fractional variables can be trivially
    8591      rounded. Returns false, if there is at least one fractional variable
    8692      that is not trivially roundable. In this case, the bestColumn
     
    9197                                      int& bestColumn,
    9298                                      int& bestRound) = 0;
     99  /** Initializes any data which is going to be used repeatedly
     100      in selectVariableToBranch */
     101  virtual void initializeData() {}
    93102
    94103  /// Perform reduced cost fixing on integer variables
    95104  int reducedCostFix (OsiSolverInterface* solver);
     105  /// Fix other variables at bounds
     106  virtual int fixOtherVariables(OsiSolverInterface * solver,
     107                                const double * solution,
     108                                PseudoReducedCost * candidate,
     109                                const double * random);
    96110
    97111protected:
     
    109123  // Up locks
    110124  unsigned short * upLocks_;
     125
     126  /// Extra down array (number Integers long)
     127  double * downArray_;
     128
     129  /// Extra up array (number Integers long)
     130  double * upArray_;
    111131
    112132  // Indexes of binary variables with 0 objective coefficient
Note: See TracChangeset for help on using the changeset viewer.