Simulated annealing is usually a method where random sampling techniques,
ie the Monte Carlo method, can be used to find a solution.
The good part is that it does not suffer from the local minimum problem.
For example, it can be used to find a solution on Set cover problems.
Update: The Algorithm Design Manual
7.5.4 Applications of Simulated Annealing
We provide several examples
to demonstrate how these components
can lead to elegant simulated
annealing solutions for real
combinatorial search problems.
Maximum Cut
The "maximum cut"
problem seeks to partition the
vertices of a weighted graph G into
sets V1 and V2 to maximize the weight
(or number) of edges with one vertex
in each set. For graphs that specify an electronic circuit, the maximum cut in the graph defines the largest amount of data communication that can take place in the circuit simultaneously. As discussed in Section 16.6 (page 541), maximum cut is NP-complete. [...]
Independent Set
An "independent set" of a graph G is
a subset of vertices of S such that
there is no edge with both endpoints
in S. The maximum independent set of a
graph is the larger such empty induces
subgraph. Finding large independent
sets arises in dispersion problems
associated with facility location and
coding theory [...]
Circuit Board Placement
In designing printed circuit boards,
we faced with the problem of
positioning modules (typically,
integrated circuits) on the board.
Desired criteria in a layout may
include (1) minimizing the area or
aspect ratio of the board so that it
properly fits within the allotted
space, and (2) minimizing the total or
longest wire length in connecting the
components. Circuit board placement is
representative of the kind messy,
multicriterion optimization problems
for which simulated annealing is
ideally suited. [...]