EasyLocalpp  3.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Data classes

The data classes are used for template instantiation, and hence they have no actual code. They serve for storing the following information:

  • Input: input data of the problem.
  • Output: output as it has to be delivered to the user.
  • State: an element of the search space.
  • Move: a local move. The class move needs to have the operators == and < defined.
  • CFType: the cost function type. This template is by default instantiated to int, representing an integer (discrete) cost function. However it can be redefined by the user to allow for real-valued cost functions or cost functions of arbitrary types (provided that the basic arithmetic and comparison operators will be defined).

In a few applications, State and Output classes may coincide but, in general, the search space, -which is explored by the algorithm- is only an indirect (not necessarily complete) representation of the output space -which is related to the problem specification.