Information Technology Reference
In-Depth Information
cooling parameter of simulated annealing, though there are ways to incorporat-
ing similar ideas into almost all search algorithms.
Try Other Search Algorithms: As noted above, the reasons for poor perfor-
mance could simply be that the wrong search algorithm is used for the search
space in hand. If the fitness landscape resembles one enormous hill (or lots of
hills of equal fitness) then hill climbing is clearly an attractive candidate. For
landscapes with so-called 'royal road' properties [70], an evolutionary algorithm
will be favourable. These distinctions are starting to be explored in the SBSE
literature [49]. It is always advisable to explore with several search based algo-
rithms in any SBSE work, to include (as a sanity check) random search, together
with at least one local and one global search technique, simply to get a sense for
the variabilities involved. Of course, comparing these will require some thought
and careful planning, as explained in Section 6.
Look for Building Blocks: It is unlikely, but suppose you discover that you
cannot get the higher quality results you seek after trying several fitness functions
and many different algorithms. What then? Well, in this situation, you will have
a large set of results, albeit a set of sub optimal results. There is a great deal of
value that can be obtained from such a set of results. You can use them to under-
stand the structure of the search space. This may helpful to explain why your results
turn out the way they do. Furthermore, you can search for building blocks in the
solutions, that can help you to identify partial solutions or fragments of good so-
lutions that can help to identify better solutions. Such building blocks may lead
a human to a 'eureka' moment, when they gain insight into the structure of some
essential or sucient ingredient of a good solution. They can also be used to con-
strain subsequent search based approaches, that may then prove more successful.
This two-stage search approach has been shown to be effective in SBSE work; it
has been used to identify the building blocks of good software modularisations for
a subsequent search over a constrained (and therefore much smaller) landscape in
which the building blocks are now fixed [62].
12 Conclusion
We hope that this tutorial paper has been a useful guide to the development of
the reader's (perhaps first) SBSE paper. We look forward to reading and learning
from your work on SBSE.
References
1. ACM. The 1998 ACM computing classification system (2009),
http://www.acm.org/about/class/1998
2. Adamopoulos, K., Harman, M., Hierons, R.M.: How to Overcome the Equivalent
Mutant Problem and Achieve Tailored Selective Mutation Using Co-evolution. In:
Deb, K., et al. (eds.) GECCO 2004. LNCS, vol. 3103, pp. 1338-1349. Springer,
Heidelberg (2004)
 
Search WWH ::




Custom Search