00001 // Copyright (C) 2002, International Business Machines 00002 // Corporation and others. All Rights Reserved. 00003 #ifndef SbbHeuristicLocal_H 00004 #define SbbHeuristicLocal_H 00005 00006 #include "SbbHeuristic.hpp" 00010 class SbbLocalSearch : public SbbHeuristic { 00011 public: 00012 00013 // Default Constructor 00014 SbbLocalSearch (); 00015 00016 /* Constructor with model - assumed before cuts 00017 Initial version does not do Lps 00018 */ 00019 SbbLocalSearch (SbbModel & model); 00020 00021 // Copy constructor 00022 SbbLocalSearch ( const SbbLocalSearch &); 00023 00024 // Destructor 00025 ~SbbLocalSearch (); 00026 00028 virtual SbbHeuristic * clone() const; 00029 00031 virtual void setModel(SbbModel * model); 00032 00044 virtual int solution(double & objectiveValue, 00045 double * newSolution); 00046 00047 protected: 00048 // Data 00049 00050 // Original matrix by column 00051 CoinPackedMatrix matrix_; 00052 00053 // Number of solutions so we only do after new solution 00054 int numberSolutions_; 00055 // Type of search 00056 int swap_; 00057 00058 private: 00060 SbbLocalSearch & operator=(const SbbLocalSearch& rhs); 00061 }; 00062 00063 00064 #endif