# ParadisEO-MOMovingObjects: moHC< M > Class Template Reference

# moHC< M > Class Template Reference

Hill Climbing (HC). More...

`#include <moHC.h>`

Inherits moAlgo< M::EOType >.

List of all members.

## Public Member Functions

| moHC (moMoveInit< M > &_move_initializer, moNextMove< M > &_next_move_generator, moMoveIncrEval< M > &_incremental_evaluation, moMoveSelect< M > &_move_selection, eoEvalFunc< EOT > &_full_evaluation)
| Full constructor.
| moHC (moMoveExpl< M > &_move_explorer, eoEvalFunc< EOT > &_full_evaluation)
| Light constructor.
bool | operator() (EOT &_solution)
| Function which launches the HC.

## Private Types

typedef M::EOType | EOT
| Alias for the type.
typedef EOT::Fitness | Fitness
| Alias for the fitness.

## Private Attributes

moMoveExpl< M > & | move_explorer
| Complete exploration of the neighborhood.
eoEvalFunc< EOT > & | full_evaluation
| A full evaluation function.

## Detailed Description

### template<class M>
class moHC< M >

Hill Climbing (HC).

Class which describes the algorithm for a hill climbing.

Definition at line 49 of file moHC.h.

## Constructor & Destructor Documentation

template<class M>

moHC< M >::moHC | ( | moMoveInit< M > & | _move_initializer,
|  | moNextMove< M > & | _next_move_generator,
|  | moMoveIncrEval< M > & | _incremental_evaluation,
|  | moMoveSelect< M > & | _move_selection,
|  | eoEvalFunc< EOT > & | _full_evaluation |
| ) |  |  | `[inline]`

Full constructor.

All the boxes are given in order the HC to use a moHCMoveLoopExpl.

Parameters:

  | _move_initializer | a move initialiser.
  | _next_move_generator | a neighborhood explorer.
  | _incremental_evaluation | a (generally) efficient evaluation function.
  | _move_selection | a move selector.
  | _full_evaluation | a full evaluation function.

Definition at line 69 of file moHC.h.

template<class M>

moHC< M >::moHC | ( | moMoveExpl< M > & | _move_explorer,
|  | eoEvalFunc< EOT > & | _full_evaluation |
| ) |  |  | `[inline]`

Light constructor.

This constructor allow to use another moMoveExpl (generally not a moHCMoveLoopExpl).

Parameters:

  | _move_explorer | a complete explorer.
  | _full_evaluation | a full evaluation function.

Definition at line 82 of file moHC.h.

## Member Function Documentation

template<class M>

bool moHC< M >::operator() | ( | EOT & | _solution | ) | `[inline, virtual]`

Function which launches the HC.

The HC has to improve a current solution. As the moSA and the mo TS, it can be used for HYBRIDATION in an evolutionnary algorithm.

Parameters:

  | _solution | a current solution to improve.

Returns:
  true.

Implements eoUF< M::EOType &, bool >.

Definition at line 94 of file moHC.h.

References moHC< M >::full_evaluation, and moHC< M >::move_explorer.

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

- moHC.h