Information Technology Reference
In-Depth Information
the choice of these parameters. That is, while it is true that a great deal
of progress and improvement can be made through tuning, one may well
find that all reasonable parameter choices comfortably outperform a purely
random search. Therefore, if one is the first to use a search based approach,
almost any reasonable (non extreme) choice of parameters may well support
progress from the current 'state of the art'.
3. Scalability Through Parallelism
Search based optimisation techniques are often referred to as being 'embar-
rassingly parallel' because of their potential for scalability through parallel
execution of fitness computations. Several SBSE authors have demonstrated
that this parallelism can be exploited in SBSE work to obtain scalability
through distributed computation [12, 62, 69]. Recent work has also shown
how General Purpose Graphical Processing devices (GPGPUs) can be used
to achieve scale up factors of up to 20 compared to single CPU-based com-
putation [110].
4. Re-unification
SBSE can also create linkages and relationships between areas in Software
Engineering that would otherwise appear to be completely unrelated. For
instance, the problems of Requirements Engineering and Regression Testing
would appear to be entirely unrelated topics; they have their own conferences
and journals and researchers in one field seldom exchange ideas with those
from the other.
However, using SBSE, a clear relationship can be seen between these two
problem domains [48]. That is, as optimisation problems they are remark-
ably similar as Figure 1 illustrates: Both involve selection and prioritisation
problems that share a similar structure as search problems.
5. Direct Fitness Computation
In engineering disciplines such as mechanical, chemical, electrical and elec-
tronic engineering, search based optimisation has been applied for many
years. However, it has been argued that it is with Software Engineering,
more than any other engineering discipline , that search based optimisation
has the highest application potential [39]. This argument is based on the
nature of software as a unique and very special engineering 'material', for
which even the word 'engineering material' is a slight misnomer. After all,
software is the only engineering material that can only be sensed by the
mind and not through any of the five senses of sight, sounds, smell, taste
and touch.
In traditional engineering optimisation, the artefact to be optimised is
often simulated precisely because it is of physical material, so building mock
ups for fitness computation would be prohibitively slow and expensive. By
contrast, software has no physical existence; it is purely a 'virtual engineering
material'. As a result, the application of search based optimisation can often
be completely direct; the search is performed directly on the engineering
material itself, not a simulation of a model of the real material (as with
traditional engineering optimisations).
 
Search WWH ::




Custom Search