1 | /* $Id$ */ |
---|

2 | // Copyright (C) 2007, International Business Machines |
---|

3 | // Corporation and others. All Rights Reserved. |
---|

4 | // This code is licensed under the terms of the Eclipse Public License (EPL). |
---|

5 | |
---|

6 | |
---|

7 | /*! \file CbcSolverHeuristic.hpp |
---|

8 | \brief Routines for doing heuristics. |
---|

9 | */ |
---|

10 | |
---|

11 | |
---|

12 | #ifndef CbcSolverHeuristics_H |
---|

13 | #define CbcSolverHeuristics_H |
---|

14 | |
---|

15 | |
---|

16 | void crunchIt(ClpSimplex * model); |
---|

17 | |
---|

18 | /* |
---|

19 | On input |
---|

20 | doAction - 0 just fix in original and return NULL |
---|

21 | 1 return fixed non-presolved solver |
---|

22 | 2 as one but use presolve Inside this |
---|

23 | 3 use presolve and fix ones with large cost |
---|

24 | ? do heuristics and set best solution |
---|

25 | ? do BAB and just set best solution |
---|

26 | 10+ then use lastSolution and relax a few |
---|

27 | -2 cleanup afterwards if using 2 |
---|

28 | On output - number fixed |
---|

29 | */ |
---|

30 | OsiClpSolverInterface * |
---|

31 | fixVubs(CbcModel & model, int skipZero2, |
---|

32 | int & doAction, |
---|

33 | CoinMessageHandler * /*generalMessageHandler*/, |
---|

34 | const double * lastSolution, double dextra[6], |
---|

35 | int extra[5]); |
---|

36 | |
---|

37 | /** 1 - add heuristics to model |
---|

38 | 2 - do heuristics (and set cutoff and best solution) |
---|

39 | 3 - for miplib test so skip some |
---|

40 | (out model later) |
---|

41 | */ |
---|

42 | int doHeuristics(CbcModel * model, int type, CbcOrClpParam *parameters_, |
---|

43 | int numberParameters_,int noPrinting_,int initialPumpTune) ; |
---|

44 | |
---|

45 | |
---|

46 | #endif //CbcSolverHeuristics_H |
---|

47 | |
---|