Understanding the behaviour of different optimisation algorithms is important in order to apply the best algorithm to a particular problem. The WFG toolkit was designed to aid this task for multi-objective evolutionary algorithms (MOEAs), offering an easily modifiable framework that allows practitioners the ability to test different features by "plugging" in different forms of transformations. In doing so, the WFG toolkit provides a set of problems that exhibit a variety of different characteristics. This paper presents a comparison between two state of the art MOEAs (NSGA-II and SPEA2) that exemplifies the unique capabilities of the WFG toolkit. By altering the control parameters or even the transformations that compose the WFG problems, we are able to explore the different types of problems where SPEA2 and NSGA-II each excel. Our results show that the performance of the two algorithms differ not only on the dimensionality of the problem, but also by properties such as the shape and size of the underlying Pareto surface. As such, the tunability of the WFG toolkit is key in allowing the easy exploration of these different features.
School of EEE, Nanyang Technological University, 639798 Singapore Kanpur Genetic Algorithms Laboratory (KanGAL),Indian Institute of Technology, Kanpur, PIN 208 016, India Computer Engineering and Networks Laboratory (TIK), Swiss Federal Institute of Technology, ETH Zentrum, CH-8092 Zurich, Switzerland University Dortmund, Lehrstuhl fur Algorithm Engineering, Otto-Hahn-Strasse 14, 44227 Dortmund School of Computer Science & Software Engineering, The University of Western Australia, M002, 35 Stirling Highway,Crawley, Western Australia, 6009
When attempting to better understand the strengths and weaknesses of an algorithm, it is important to have a strong understanding of the problem at hand. This is true for the field of multiobjective evolutionary algorithms (EAs) as it is for any other field. Many of the multiobjective test problems employed in the EA literature have not been rigorously analyzed, which makes it difficult to draw accurate conclusions about the strengths and weaknesses of the algorithms tested on them. In this paper, we systematically review and analyze many problems from the EA literature, each belonging to the important class of real-valued, unconstrained, multiobjective test problems. To support this, we first introduce a set of test problem criteria, which are in turn supported by a set of definitions. Our analysis of test problems highlights a number of areas requiring attention. Not only are many test problems poorly constructed but also the important class of nonseparable problems, particularly nonseparable multimodal problems, is poorly represented. Motivated by these findings, we present a flexible toolkit for constructing well-designed test problems. We also present empirical results demonstrating how the toolkit can be used to test an optimizer in ways that existing test suites do not
Existing ore processing plant designs are often conservative and so the opportunity to achieve full value is lost. Even for well-designed plants, the usage and profitability of mineral processing circuits can change over time, due to a variety of factors from geological variation through processing characteristics to changing market forces.Consequently, existing plant designs often require optimisation in relation to numerous objectives. To facilitate this, task, a multi-objective evolutionary algorithm has been developed to optimise existing plants, as evaluated by simulation, against multiple competing process drivers. A case study involving primary through to quaternary crushing is presented, in which the evolutionary algorithm explores a selection of flow-sheet configurations, in addition to local machine setting optimisations. Results suggest that significant improvements can be achieved over the existing design, promising substantial financial benefits.
In real-world optimisation problems, feasibility of solutions is invariably an essential requirement. A natural way to deal with feasibility is to cast it as an additional objective in a multi-objective optimisation setting. In this paper, we consider two possible ways to do this, using a multi-level scheme for ranking solutions. One strategy considers feasibility first, before considering objective values, while the other reverses this ordering. The first strategy has been explored before, while the second has not. Experiments show that the second strategy can be much more successful on some difficult problems.
Existing plant designs are often conservative and as a consequence the opportunity to achieve full value is lost. Even for well-designed plants, the usage and profitability of mineral processing circuits can change over time, due to a variety of factors from geological variation through processing characteristics to changing market forces. Consequently, plant designs often require optimisation in relation to numerous variables, or objectives. To facilitate this task, a multi-objective evolutionary algorithm has been developed to optimise existing plants against multiple competing process drivers, as evaluated by simulation. A case study involving primary through to quaternary crushing is presented, in which the evolutionary algorithm explores a selection of flowsheet configurations, in addition to local machine setting optimisations. Results suggest that significant improvements can be achieved over the existing design, promising substantial financial benefits. An extension of the evolutionary algorithm to employ wider flowsheet modifications is also discussed.
We present an algorithm for calculating hypervolume exactly, the Hypervolume by Slicing Objectives (HSO) algorithm, that is faster than any that has previously been published. HSO processes objectives instead of points, an idea that has been considered before but that has never been properly evaluated in the literature. We show that both previously studied exact hypervolume algorithms are exponential in at least the number of objectives and that although HSO is also exponential in the number of objectives in the worst case, it runs in significantly less time, i.e., two to three orders of magnitude less for randomly generated and benchmark data in three to eight objectives. Thus, HSO increases the utility of hypervolume, both as a metric for general optimization algorithms and as a diversity mechanism for evolutionary algorithms.
This paper describes the use of a multi-objective evolutionary algorithm to solve an engineering design problem - determining the geometry and operating settings for a crusher in a comminution circuit for ore processing. The outcome is a tool for consulting engineers that can be used to create and explore candidate designs for various scenarios. The tool has proved capable of deriving designs that are clearly superior to existing designs, promising significant financial benefits. The approach is flexible enough to be applied to a variety of similar problems.
This paper presents a new toolkit for creating scalable multiobjective test problems. The WFG Toolkit is flexible, allowing characteristics such as bias, multi-modality, and non-separability to be incorporated and combined as desired. A wide variety of Pareto optimal geometries are also supported, including convex, concave, mixed convex/concave, linear, degenerate, and disconnected geometries. All problems created by the WFG Toolkit are well defined, are scalable with respect to both the number of objectives and the number of parameters, and have known Pareto optimal sets. Nine benchmark multiobjective problems are suggested, including one that is both multi-modal and non-separable, an important combination of characteristics that is lacking among existing (scalable) multi-objective problems.
This paper presents a new toolkit for creating scalable multi-objective test problems. The WFG Toolkit is flexible, allowing characteristics such as bias, multi-modality, and non-separability to be incorporated and combined as desired. A wide variety of Pareto optimal geometries are also supported, including convex, concave, mixed convex/concave, linear, degenerate, and disconnected geometries. All problems created by the WFG Toolkit are well defined, are scalable with respect to both the number of objectives and the number of parameters, and have known Pareto optimal sets. Nine benchmark multi-objective problems are suggested, including one that is both multi-modal and non-separable, an important combination of characteristics that is lacking among existing (scalable) multi-objective problems.
The performance of crushing equipment in mineral processing circuits is often critical to the generation of final product. A multi-objective evolutionary algorithm has been developed that allows the crusher internal geometry to be created and evaluated against multiple performance objectives. The multiple-objective approach is particularly important in mineral processing, as the optimum performance of single machines is often a trade-off between competing process drivers. A case study is presented that demonstrates the application of the technique to the design of cone crusher liners. New crusher liner profiles resulting from the application of the evolutionary algorithm suggest that significant improvements in the generation of lump product can be obtained. The extension of the approach to wider process plant design is discussed in terms of the objectives and issues to be addressed.
Most message passing parallel programs employ logical process topologies with regular characteristics to support their computation. Since process topologies define the relationship between processes, they present an excellent opportunity for debugging. The primary benefit is that process behaviours can be correlated, allowing expected behaviour to be abstracted and identified, and undesirable behaviour reported. However, topology support is inadequate in most message passing parallel programming environments, including the popular Message Passing Interface (MPI) and the Parallel Virtual Machine (PVM). Programmers are forced to implement topology support themselves, increasing the possibility of introducing errors.This paper proposes a trace- and topology-based approach to parallel program debugging, driven by four distinct types of specifications. Trace specifications allow trace data from a variety of sources and message passing libraries to be interpreted in an abstract manner, and topology specifications address the lack of explicit topology knowledge, whilst also facilitating the construction of user-consistent views of the debugging activity. Loop specifications express topology-consistent patterns of expected trace events, allowing conformance testing of associated trace data, and error specifications specify undesirable event interactions, including mismatched message sizes and mismatched communication pairs. Both loop and error specifications are simplified by having knowledge of the actual topologies being debugged.The proposed debugging framework enables a wealth of potential debugging views and techniques. Copyright © 2004 John Wiley & Sons, Ltd.
Evolutionary algorithms have been applied with great success to the difficult field of multiobjective optimisation. Nevertheless, the need for improvements in this field is still strong. We present a new evolutionary algorithm, ESP (the Evolution Strategy with Probabilistic mutation). ESP extends traditional evolution strategies in two principal ways: it applies mutation probabilistically in a GA-like fashion, and it uses a new hyper-volume based, parameterless, scaling independent measure for resolving ties during the selection process. ESP outperforms the state-of-the-art algorithms on a suite of benchmark multiobjective test functions using a range of popular metrics.
Most parallel programs use regular topologies to support their computation. Since they define the relationship between processes, process topologies present an excellent opportunity for debugging. The primary benefit is that patterns of expected behaviour can be abstracted and identified, and unexpected behaviour reported. However, topology support is inadequate in may environments, including the popular Message Passing Interface (MPI). Programmers typically implement topology support themselves, increasing the possibility of introducing errors. Moreover, debugger support that exploit topological information is lacking. We have undertaken to develop a debugger that exploits topological information. This paper presents DEPICT (DEbugger of Parallel but Inconsistent Communication Traces), a (preliminary) topology-based debugger for MPI. Currently, DEPICT presents high-level visualisations of parallel program communication behaviour, where logically similar processes are clearly indicated in a manner that allows the programmer insight into overall program behaviour. To assist in understanding unexpected behaviour, DEPICT allows programmers to investigate the observed semantic differences between processes. In addition to its current facilities, DEPICT's implementation details and underlying algorithms are also described
Trace files have long been used to assist correctness debugging and performance debugging of parallel programs. With the advent of implementations of the Message Passing Interface (MPI) standard, parallel and distributed computing has become more common, and thus the need for quality debugging tools has increased. It is important that trace file formats be extensible, flexible, and architecturally independent, the latter particularly if analysis is performed on a different platform to that which generated the trace. In this paper we propose a set of requirements for MPI-based trace libraries, and present a preliminary trace library, tracempi. An important contribution is that this trace format uses the Extensible Markup Language (XML), and XML Schema. By doing so, it is architecturally independent, well defined, and easily extended.
Most parallel programs use regular topologies to support their computation. Since they define the relationship between processes, process topologies present an excellent opportunity for debugging. The primary benefit is that patterns of expected behaviour can be abstracted and identified, and unexpected behaviour reported. However, topology support is inadequate in many environments, including the popular Message Passing Interface (MPI). Programmers typically implement topology support themselves, increasing the possibility of introducing errors. Moreover, debugger support that exploits topological information is lacking. We have undertaken to develop a debugger that exploits topological information. This paper presents DEPICT (DEbugger of Parallel but Inconsistent Communication Traces), a (preliminary) topology-based debugger for MPI. Currently, DEPICT presents high-level visualisations of parallel program communication behaviour, where logically similar processes are clearly indicated in a manner that allows the programmer insight into overall program behaviour. To assist in understanding unexpected behaviour, DEPICT allows programmers to investigate the observed semantic differences between processes.
Many parallel programs employ regular topological structures to support their computation. This topological information is exploitable in the debugging process. Communications not normally part of a topology ones that are either missing or unexpected, are immediately recognisable. Furthermore, animations used to assist the debugging may be enhanced by arranging representations of the executing tasks with reference to the program's topology. However direct topology support is lacking in many environments, including workstation clusters, where popular language extensions such as the Parallel Virtual Machine (PVM) and the Message Passing Interface (MPI) are common. Programmers are required to implement topology support themselves. Moreover debugger support that exploits topological information is lacking; without explicit knowledge, determining a program's topology is difficult. This paper presents a methodology to identify program topologies using only standard trace facilities. This methodology uses the concept of distance between graphs. To demonstrate the feasibility of the approach, several generic algorithms are implemented, and results on five different types of topologies reported.