About
134
Publications
42,570
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
10,889
Citations
Introduction
Current institution
Publications
Publications (134)
The Healthy, Mobility and Security-based Data Communication Architecture, also known as HAMSTER, is provided with a special platform for safety & security: Sphere. It concentrates all the safety & security aspects of the main architecture and all derivative versions. The aim is to define patterns for assuring safety & security that allow every unma...
Evolution has provided a source of inspiration for algorithm designers since the birth of computers. The resulting field, evolutionary computation, has been successful in solving engineering tasks ranging in outlook from the molecular to the astronomical. Today, the field is entering a new phase as evolutionary algorithms that take place in hardwar...
This paper examines the factors affecting the quality of solution found by meta-heuristic search when optimising object-oriented software class models. From the algorithmic perspective, we examine the effect of encoding, choice of components such as the global search heuristic, and various means of incorporating problem- and instance-specific infor...
Early lifecycle software design is an intensely human activity in which design scale and complexity can place a high cognitive load on the software designer. Recently, the use of evolutionary search has been suggested to yield insights in the nature of software engineering problems generally, and so we have applied dynamic evolutionary computation...
The “end-game” of evolutionary optimisation is often largely governed by the efficiency and effectiveness of searching regions of space known to contain high quality solutions. In a traditional EA this role is done via mutation, which creates a tension with its other different role of maintaining diversity. One approach to improving the efficiency...
Finding good designs in the early stages of the software development lifecycle is a demanding multi-objective problem that is crucial to success. Previously, both interactive and non-interactive techniques based on evolutionary algorithms (EAs) have been successfully applied to assist the designer. However, recently ant colony optimization was show...
This paper investigates the one-dimensional cutting stock problem considering two
conflicting objective functions: minimization of both the number of objects and the
number of different cutting patterns used. A new heuristic method based on the
concepts of genetic algorithms is proposed to solve the problem. This heuristic is
empirically analyzed b...
Recent research has demonstrated that the problem of class modelling within early cycle object orientated software engineering can be successfully tackled by posing it as a search problem to be tackled with meta-heuristics. This "Search Based Software Engineering" approach has been illustrated using both Evolutionary Algorithms and Ant Colony Optim...
In this paper Ant Colony Optimisation (ACO) is applied in the field of Statistical Disclosure Control (SDC) for the first time. It has been applied to a permutation problem found in Cell Suppression. ACO has successfully improved the suppression patterns created to protect published statistical tables but when compared to using the Genetic Algorith...
Software design is crucial to successful software development, yet is a
demanding multi-objective problem for software engineers. In an attempt to
assist the software designer, interactive (i.e. human in-the-loop)
meta-heuristic search techniques such as evolutionary computing have been
applied and show promising results. Recent investigations have...
The accuracy of machine learning systems is a widely studied research topic.
Established techniques such as cross-validation predict the accuracy on unseen
data of the classifier produced by applying a given learning method to a given
training data set. However, they do not predict whether incurring the cost of
obtaining more data and undergoing fu...
Advances in processing capacity, coupled with the desire to tackle problems
where a human subjective judgment plays an important role in determining the
value of a proposed solution, has led to a dramatic rise in the number of
applications of Interactive Artificial Intelligence. Of particular note is the
coupling of meta-heuristic search engines wi...
Statistical disclosure control is the collective name for a range of tools used by data providers such as government departments to protect the confidentiality of individuals or organizations. When the published tables contain magnitude data such as turnover or health statistics, the preferred method is to suppress the values of certain cells. Assi...
Results from applications of meta-heuristics, and Evolutionary Computation in particular, have led to the widespread acknowledgement of two facts. The first is that evolutionary optimisation can be improved by the use of local search methods, creating so-called Memetic Algorithms. The second is that there is no single “best” choice of memetic opera...
Among the most promising and active research areas in heuristic optimisation is the field of adaptive memetic algorithms (AMAs). These gain much of their reported robustness by adapting the probability with which each of a set of local improvement operators is applied, according to an estimate of their current value to the search process. This pape...
Developing automated problem solvers (that is, algorithms) is one of the central themes of mathematics and computer science. Similarly to engineering,where looking at Nature’s solutions has always been a source of inspiration, copying ‘natural problem solvers’ is a stream within these disciplines. When looking for the most powerful problem solver o...
This paper looks at the real world problem of statistical disclosure control. National Statistics Agencies are required to publish detailed statistics and simultaneously guarantee the confidentiality of the contributors. When published statistical tables contain magnitude data such as turnover or health statistics the preferred method is to suppres...
GECCO-2011 A joint meeting of the twentieth international conference on genetic algorithms (ICGA-2011) and the sixteenth annual genetic programming conference (GP-2011)
The choice of mutation rate is a vital factor in the success of any genetic algorithm (GA), and for permutation representations this is compounded by the availability of several alternative mutation operators. It is now well understood that there is no one "optimal choice"; rather, the situation changes per problem instance and during evolution. Th...
This paper investigates the search efficiency of a class of adaptive memetic algorithms where the pivot function, depth, and definition of the local search operators are co-evolved alongside a population of potential solutions to the problem in hand. Such co-evolutionary mechanism requires a means for assigning meme fitness based in some way on the...
Diversity or redundancy based software fault tolerance encompasses the development of application domain specific variants and error detection mechanisms. In this regard, this paper presents an analytical design strategy to develop the variants for a fault tolerant real-time control system. This work also presents a generalized error detection mech...
In surface inspection applications, the main goal is to detect all areas which might contain defects or unacceptable imperfections,
and to classify either every single ‘suspicious’ region or the investigated part as a whole. After an image is acquired by
the machine vision hardware, all pixels that deviate from a pre-defined ‘ideal’ master image ar...
In this paper, we present a framework for the classification of images in surface inspection tasks and address several key
aspects of the processing chain from the original image to the final classification result. A major contribution of this paper
is a quantitative assessment of how incorporating adaptivity into the feature calculation, the featu...
The nearest-neighbour (1NN) classifier has long been used in pattern recognition, exploratory data analysis, and data mining problems. A vital consideration in obtaining good results with this technique is the choice of distance function, and correspondingly which features to consider when computing distances between samples. In recent years there...
Diversity or redundancy based software fault tolerance does not come for free; rather it introduces additional complexity to the core functionality in the form of redundancy development, management and controlled execution. This results in tangling of core functionality with the fault tolerance concerns. This paper presents a novel design framework...
Software fault tolerance demands additional tasks like error detection and recovery through executable assertions, exception
handling, diversity and redundancy based mechanisms. These mechanisms do not come for free; rather they introduce additional
complexity to the core functionality. This paper presents light weight error detection and recovery...
Creating successful machine vision systems often begins a process of developing customised reliable image segmentation algorithms for the detection, and possibly categorisation of regions of interest within images. This can require significant investment of time from both the image processing and the domain experts to set up. Frequently this proces...
Dependable computer based systems employing fault tolerance and robust software development techniques demand additional error detection and recovery related tasks. This results in tangling of core functionality with these cross cutting non-functional concerns. In this regard current work identifies these dependability related non-functional and cr...
This paper considers on a number of issues that arise when a trainable machine vision system learns directly from humans. We contrast this to the ldquonormalrdquo situation where machine learning (ML) techniques are applied to a ldquocleanedrdquo data set which is considered to be perfectly labeled with complete accuracy. This paper is done within...
This paper considers a number of issues that arise when a trainable machine vision system learns directly from humans, rather than from a "cleaned" data set, i.e. data items which are perfectly labelled with complete accuracy. This is done within the context of a generic system for the visual surface inspection of manufactured parts. The issues tre...
Statistical Disclosure Control is the collective name for a range of tools that data providers such as government departments use to protect the confidentiality of individuals or organizations. When the published tables contain magnitude data such as turnover or health statistics, the preferred method is to suppress the values of certain cells. Ass...
A pre-processing optimisation is proposed that can be applied to the integer and mixed integer linear programming models that
are used to solve the cell suppression problem in statistical disclosure control. In this paper we report our initial findings
which confirm that in many situations the pre-processing optimisation can considerably reduce the...
Feature selection (FS) algorithms are popular methods to reduce the dimensionality of the feature space and remove the redundant, irrelevant or noisy data and improves the classification accuracy. In this chapter; we have dis- cussed our recently proposed tabu search based algorithms for feature se- lection problems and have compared with other seq...
In this paper we present a novel image classification framework, which is able to automatically re-configure and adapt its
feature-driven classifiers and improve its performance based on user interaction during on-line processing mode. Special emphasis
is placed on the generic applicability of the framework to arbitrary surface inspection systems....
Automated surface inspection of products as part of a manufacturing quality control process involves the applications of image
processing routines to segment regions of interest (ROI) or objects which correspond to potential defects on the product or
part. In these type of applications, it is not known in advance how many ROIs may be segmented from...
In previous work (Krasnogor, http://www.cs.nott.ac.uk/~nxk/papers.html. In: Studies on the Theory and Design Space of Memetic Algorithms. Ph.D. thesis, University of the West of England, Bristol,
UK, 2002; Krasnogor and Smith, IEEE Trans Evol Algorithms 9(6):474–488, 2005) we develop a syntax-only classification of evolutionary algorithms, in parti...
The successful application of machine learning techniques to industrial problems places various demands on the collaborators. The system designers must possess appropriate analytical skills and technical expertise, and the management of the industrial or commercial partner must be sufficiently convinced of the potential benefits that they are prepa...
The nearest-neighbour (NN) classifier has long been used in pattern recognition, exploratory data analysis, and data mining
problems. A vital consideration in obtaining good results with this technique is the choice of distance function, and correspondingly
which features to consider when computing distances between samples. In this chapter, a new...
5 6 Abstract 7 An increasingly frequent application of Machine Vision technologies is in automated surface inspection for the detection of defects in 8 manufactured products. Such systems offer significant benefits in terms of cost, detection rates, and user-satisfaction over conventional 9 human inspection systems. However, they usually require si...
Coevolving memetic algorithms are a family of metaheuristic search algorithms in which a rule-based representation of local search (LS) is coadapted alongside candidate solutions within a hybrid evolutionary system. Simple versions of these systems have been shown to outperform other nonadaptive memetic and evolutionary algorithms on a range of pro...
Steady State models of Evolutionary Algorithms are widely used, yet surprisingly little attention has been paid to the effects arising from different replacement strategies. This paper explores the use of mathematical models to characterise the selection pressures arising in a selection-only environment. The first part brings together models for th...
ABSTRACT Adaptive Memetic Algorithms couple an evolutionary algo- rithm with a number,of local search heuristics for improving the evolving solutions. They are part of a broad family of meta-heuristics which maintain a set of local search opera- tors applying them,at different stages of the search. This creates a need to make,decisions about which...
The issue of setting the values of various parameters of an evolutionary algorithm is crucial for good performance. In this paper we discuss how to do this, beginning with the issue of whether these values are best set in advance or are best changed during evolution. We provide a classification of different approaches based on a number of complemen...
This work will discuss further tests carried out using a pool of operational research and artificial intelligence techniques to solve the cell suppression problem. Existing solutions to the problem available through Tau-Argus software are mathematically demanding and only enable a solution to the problem for small table sizes. The approaches invest...
The nearest-neighbor (NN) classifier has long been used in pattern recognition, exploratory data analysis, and data mining problems. A vital consideration in obtaining good results with this technique is the choice of distance function, and correspondingly which features to consider when computing distances between samples. In this paper, a new ens...
Gene libraries are a biological mechanism for generating combinatorial diversity in the immune system. However, they also
bias the antibody creation process, so that they can be viewed as a way of guiding lifetime learning mechanisms. In this paper
we examine the implications of this view, by examining coverage, avoidance of self, clustering and di...
Memetic Evolutionary Algorithms (MAs) are a class of stochastic heuristics for global optimization which combine the parallel
global search nature of Evolutionary Algorithms with Local Search to improve individual solutions. These techniques are being
applied to an increasing range of application domains with successful results, and the aim of this...
This paper describes a co-evolutionary learning-optimisation approach to Protein Structure Prediction which uses a Memetic Algorithm as its underlying search method. Instance-specific knowledge can be learned, stored and applied by the system in the form of a population of rules. These rules determine the neighbourhoods used by the local search pro...
This paper examines the use of genetic algorithms (GAs) in generating sets of input data to use for software testing. The aim is to produce test sets which maximise coverage of the software using a given metric, whilst minimising the size of the sets.
Using the well known triangle program as an example, a representation is described which allows th...
A genetic recombination framework is presented within which both the unit of inheritance of genetic material from a parent, and the number of parents involved in the creation of a new individual are potentially learnt through the evolution of competing subpopulations representing different strategies.
At the heart of the framework is a recombinatio...
The combination of evolutionary algorithms with local search was named "memetic algorithms" (MAs) (Moscato, 1989). These methods are inspired by models of natural systems that combine the evolutionary adaptation of a population with individual learning within the lifetimes of its members. Additionally, MAs are inspired by Richard Dawkin's concept o...
Artificial Immune Systems (AIS) have been shown to be useful, practical and realisable approaches to real-world problems.
Most AIS implementations are based around a canonical algorithm such as clonotypic learning, which we may think of as individual,
lifetime learning. Yet a species also learns. Gene libraries are often thought of as a biological...
A rapidly emerging model in the field of adaptive computing is the symbiosis of human expertise with evolutionary algorithms for user controlled and directed search. The two aspects in any EA are the selection of individuals to reproduce based on some measure of their quality or fitness and the application of variation operators to produce new solu...
This paper presents a real-coded memetic algorithm that applies a crossover hill-climbing to solutions produced by the genetic operators. On the one hand, the memetic algorithm provides global search (reliability) by means of the promotion of high levels ...
We present a coevolutionary learning-optimisation approach to protein structure prediction which uses a memetic algorithm as its underlying search method. Instance-specific knowledge can be learned, stored and applied by the system in the form of a population of rules. These rules determine the neighbourhoods used by the local search process, which...
We present results from analyses of fitness landscapes of the HP model of protein structure prediction problems. The work concentrates on those issues that are likely to impact on the effectiveness of evolutionary search of those landscapes, such as massive multimodality, degeneracy, and the presence of large regions corresponding to physically inf...
This paper presents and examines the behaviour of a system whereby the rules governing local search within a memetic algorithm are co-evolved alongside the problem representation. We describe the rationale for such a system, and then describe the implementation of a simple version in which the evolving rules are encoded as (condition:action) patter...
The symbiosis of human expertise, in terms of creativity and pattern recognition, with evolutionary algorithms for user controlled and directed search is now a rapidly emerging model.
One of the main issues that need to be addressed is the development of techniques to ensure that the power of the evolutionary search is exploited without compromisin...
Evolutionary algorithms combined with local search were named "Memetic Algorithms" (MAs) in [1]. These methods are inspired by models of adaptation in natural systems that combine evolutionary adaptation of populations of individuals with individual learning within a lifetime. Additionally, MAs are inspired by Richard Dawkins concept of a meme, whi...
In this chapter we introduce evolution strategies (ES), another member of the evolutionary algorithm family. We also use these algorithms to illustrate a very useful feature in evolutionary computing: self-adaptation of strategy parameters. In general, self-adaptivity means that some parameters of the EA are varied during a run in a specific manner...
The most important aim of this chapter is to describe what an evolutionary algorithm is. This description is deliberately based on a unifying view presenting a general scheme that forms the common basis of all evolutionary algorithm (EA) variants. The main components of EAs are discussed, explaining their role and related issues of terminology. Thi...
In this chapter we present evolutionary programming (EP), another historical member of the EC family. Other EC streams have an algorithm variant that can be identified as being the “standard”, or typical, version of genetic algorithms, evolution strategies, or genetic programming. For EP such a standard version is hard to define for reasons discuss...
In this chapter we present a brief overview of some of the approaches taken to analysing and modelling the behaviour of Evolutionary Algorithms. The “Holy Grail” of these efforts is the formulation of predictive models describing the behaviour of an EA on arbitrary problems, and permitting the specification of the most efficient form of optimiser f...
In this chapter we present genetic programming, the youngest member of the evolutionary algorithm family. Besides the particular representation (using trees as chromosomes), it differs from other EA strands in its application area. While the EAs discussed so far are typically applied to optimisation problems, GP could instead be positioned in machi...
The main objective of this chapter is to provide practical guidelines for working with EAs. Working with EAs often means comparing different versions experimentally. Guidelines to perform experimental comparisons are therefore given much attention, including the issues of algorithm performance measures, statistics, and benchmark test suites. The ex...
In this chapter we consider the issue of constraint handling by evolutionary algorithms. This issue has great practical relevance because many practical problems are constrained. It is also a theoretically challenging subject since a great deal of intractable problems (NP-hard, NP-complete, etc.) are constrained. The presence of constraints has the...
Gray coding is a variation on the way that integers are mapped on bit strings that ensures that consecutive integers always have Hamming distance one. A three bit Gray coding table is given in Table A.l, and the procedures for converting a binary number b = 〈b
1,..., b
m〉, where m is the number of bits, into a Gray code number g = 〈g
1,..., g
m〉 an...
This chapter introduces an evolutionary approach to machine learning tasks working with rule sets, rather than parse trees, to represent knowledge. In learning classifier systems (LCS) the evolutionary algorithm acts as a rule discovery component. LCS systems are used primarily in applications where the objective is to evolve a system that will res...
So far in our discussion of evolutionary algorithms we have considered the entire population to act as a common genepool, with fitness as the primary feature affecting the likelihood of an individual taking part in the creation of new offspring, and surviving to the next generation. However we know that evolution in vivo is also affected by another...
In this chapter we discuss special forms of evolution that in some sense deviate from the standard evolutionary algorithms. In particular, we present coevolution and interactive evolution that both work under “external influence”. In coevolution the influence comes from another population, whose members affect the fitness of the main population. In...
We cannot hope here to give a comprehensive set of test functions, and by the arguments given in Sect. 14.4.1, it would not be particularly appropriate. Rather we will give a few instances of test problems that we have referred to in this book, along with descriptions and pseudocode for two randomised test function generators.
In this chapter we describe the most widely known type of evolutionary algorithm: the genetic algorithm. After presenting a simple example to introduce the basic concepts, we begin with what is usually the most critical decision in any application, namely that of deciding how best to represent a candidate solution to the algorithm. We present four...
In the preceding chapters we described the main varieties of evolutionary algorithms and described various examples of how they might be suitably implemented for different applications. In this chapter we turn our attention to systems in which, rather than existing as “stand-alone” algorithms, EA-based approaches are either incorporated within larg...
This paper presents and examines the behaviour of a system whereby the rules governing local search within a Memetic Algorithm
are co-evolved alongside the problem representation. We describe the rationale for such a system, and the implementation of
a simple version in which the evolving rules are encoded as (condition:action) patterns applied to...
To understand the behaviour of search methods (including GAs), it is useful to understand the nature of the landscapes they search. What makes a landscape complex to search? Since there are an infinite number of landscapes, with an infinite number of characteristics, this is a di#cult question. Therefore, it is interesting to consider parameterised...
This paper carefully considers random landscapes related to Kauffman's NK model. In particular, it considers a superset of this model (the NKP model) recently suggested in the GA-analytic literature. Landscapes are exhaustively examined for both the distribution of local optima relative to the global optima, and for characteristics that would effec...
A number of algorithms have been proposed aimed at tackling the problem of learning “Gene Linkage” within the context of genetic optimisation, that is to say, the problem of learning which groups of co-adapted genes should be inherited together during the recombination process. These may be seen within a wider context as a search for appropriate re...
CATEGORY: Real-World Applications Structural comparison of proteins is a core problem in modern biomedical research.
In this paper we present results on the application of Multimeme Algorithms to two important bioinformatics problems: Protein Structure Prediction and Proteins' Structure Comparison. We briey introduce our metaheuristic and give a short introduction to both problems, before presenting results and conclusions.
Self-adaptation has been widely used in Evolution Strategies (ES) and Evolutionary Programming (EP), where it has proved useful in varying the mutation step size for continuous objective variables. To date, relatively little work has been performed on applying self- adaptation to the canonical Genetic Algorithm (GA). This research applies a simple...
Evolutionary algorithms are search algorithms based on the Darwinian metaphor of natural selection. Typically these algorithms maintain a finite memory, or ‘population’, of individual solutions (points on the search landscape), each of which has a scalar value, or ‘fitness’ attached to it, which in some way reflects the quality of the solution. The...