# AbcHeuristic Class Reference

Heuristic base class. More...

`#include <AbcHeuristic.h>`

Inheritance diagram for AbcHeuristic:
[legend]
Collaboration diagram for AbcHeuristic:
[legend]

List of all members.

## Public Member Functions
| AbcHeuristic ()
| AbcHeuristic (AbcModel &model)
virtual | ~AbcHeuristic ()
virtual void | setModel (AbcModel *model)
| update model (This is needed if cliques update matrix etc)
virtual AbcHeuristic * | clone () const =0
| Clone.
virtual int | solution (double &objectiveValue, double *newSolution)=0
| returns 0 if no solution, 1 if valid solution with better objective value than one passed in Sets solution values if good, sets objective value This is called after cuts have been added - so can not add cuts
virtual int | solution (double &objectiveValue, double *newSolution, OsiCuts &cs)
| returns 0 if no solution, 1 if valid solution, -1 if just returning an estimate of best possible solution with better objective value than one passed in Sets solution values if good, sets objective value (only if nonzero code) This is called at same time as cut generators - so can add cuts Default is do nothing
## Protected Attributes
AbcModel * | model_
| Model.
## Private Member Functions
AbcHeuristic & | operator= (const AbcHeuristic &rhs)
| Illegal Assignment operator.

## Detailed Description

Heuristic base class.

Definition at line 41 of file AbcHeuristic.h.

## Constructor & Destructor Documentation

AbcHeuristic::AbcHeuristic | ( |  | ) |

AbcHeuristic::AbcHeuristic | ( | AbcModel & | model | ) |

virtual AbcHeuristic::~AbcHeuristic | ( |  | ) | `[virtual]`

## Member Function Documentation

virtual void AbcHeuristic::setModel | ( | AbcModel * | model | ) | `[virtual]`

update model (This is needed if cliques update matrix etc)

Reimplemented in AbcRounding.

virtual AbcHeuristic* AbcHeuristic::clone | ( |  | ) | const`[pure virtual]`

Clone.

Implemented in AbcRounding.

virtual int AbcHeuristic::solution | ( | double & | objectiveValue,
|  | double * | newSolution |
| ) |  |  | `[pure virtual]`

returns 0 if no solution, 1 if valid solution with better objective value than one passed in Sets solution values if good, sets objective value This is called after cuts have been added - so can not add cuts

Implemented in AbcRounding.

virtual int AbcHeuristic::solution | ( | double & | objectiveValue,
|  | double * | newSolution,
|  | OsiCuts & | cs |
| ) |  |  | `[inline, virtual]`

returns 0 if no solution, 1 if valid solution, -1 if just returning an estimate of best possible solution with better objective value than one passed in Sets solution values if good, sets objective value (only if nonzero code) This is called at same time as cut generators - so can add cuts Default is do nothing

Definition at line 72 of file AbcHeuristic.h.

AbcHeuristic& AbcHeuristic::operator= | ( | const AbcHeuristic & | rhs | ) | `[private]`

Illegal Assignment operator.

Reimplemented in AbcRounding.

## Member Data Documentation

AbcModel* AbcHeuristic::model_`[protected]`

Model.

Definition at line 79 of file AbcHeuristic.h.

The documentation for this class was generated from the following file:

- /home/coin/svn-release/Alps-1.4.6/Alps/examples/Abc/AbcHeuristic.h