1. INTRODUCTION
Many optimization problems of practical
as well as theoretical importance consist
of the search for a “best” configuration
of a set of variables to achieve
some goals. They seem to divide naturally
into two categories: those where solutions
are encoded with real-valued variables,
and those where solutions are encoded
with discrete variables. Among the latter
ones we find a class of problems
called Combinatorial Optimization (CO)
problems. According to Papadimitriou and
Steiglitz [1982], in CO problems, we are
looking for an object from a finite—or possibly
countably infinite—set. This object
is typically an integer number, a subset, a
permutation, or a graph structure