A Framework for Performance Assessment of Parallel Bi-Directorial Heuristic Search (original) (raw)
Related papers
Parallelization of symmetry detection algorithms on a network of workstations
Microprocessors and Microsystems, 1997
Detection of spatial symmetry is useful in several computer vision applications. Due to the real-time nature of the applications, it is important that symmetry detection algorithms be computationally efficient. Sequential algorithms for finding various types of planar symmetries in images are CPU-intensive, prompting us to look for fast parallel implementations. In this paper, we propose parallel algorithms for symmetry detection, and report an implementation on a distributed computing environment consisting of a network of Sun workstations. Experiments revealed close-to-linear speedup on a number of test images which we considered.
New developments in symmetry breaking in search using computational group theory
Artificial Intelligence and Symbolic …, 2004
Symmetry-breaking in constraint satisfaction problems (CSPs) is a well-established area of AI research which has recently developed strong interactions with symbolic computation, in the form of computational group theory. GE-trees are a new conceptual abstraction, providing low-degree polynomial time methods for breaking value symmetries in CSPs. In this paper we analyse the structure of symmetry groups of CSPs, and implement several combinations of GE-trees and the classical SBDD method for breaking all symmetries. We prove the efficacy of our techniques, and present preliminary experimental evidence of their practical efficiency.
Symmetry breaking by metaheuristic search
2008
Abstract Several methods exist for breaking symmetry in constraint problems, but most potentially suffer from high memory requirements, high computational overhead, or both. We describe a new partial symmetry breaking method that can be applied to arbitrary variable/value symmetries. It models dominance detection as a nonstationary optimisation problem, and solves it by resource-bounded metaheuristic search in the symmetry group.
Identification and exploitation of symmetries in DSP algorithms
1999
In many algorithms, particularly those in the DSP domain, certain forms of symmetry can be observed. To efficiently implement such algorithms, it is often possible to exploit these symmetries. However, current hardware and software compilers show deficiencies, because they cannot identify them. In this paper we, we propose two techniques to automatically detect and utilize symmetry. Both techniques introduce sequence edges between operations such that the feasibility of the scheduling problem is preserved, while the symmetry is broken. In combination with existing techniques for constraint analysis, this enhances the quality of compilers considerably, as is shown by benchmark results.
Designing for Geometrical Symmetry Exploitation
Scientific Programming, 2006
Symmetry-exploiting software based on the generalized Fourier transform (GFT) is presented from a practical design point of view. The algorithms and data structures map closely to the relevant mathematical abstractions, which primarily are based upon representation theory for groups. Particular care has been taken in the design of the data layout of the performance-sensitive numerical data structures. The use of a vanilla strategy is advocated for the design of flexible mathematical software libraries: An efficient general-purpose routine should be supplied, to obtain a practical and useful system, while the possibility to extend the library and replace the default routine with a special-purpose – even more optimized – routine should be supported. Compared with a direct approach, the performance results show the superiority of the GFT-based approach for so-called dense equivariant systems. The GFT application is found to be well suited for parallelism.
Strategies for the Parallel Implementation of Metaheuristics
2003
Parallel implementations of metaheuristics appear quite naturally as an effective alternative to speed up the search for approximate solutions of combinatorial optimization problems. They not only allow solving larger problems or finding improved solutions with respect to their sequential counterparts, but they also lead to more robust algorithms. We review some trends in parallel computing and report recent results about linear speedups that can be obtained with parallel implementations using multiple independent processors. Parallel implementations of tabu search, GRASP, genetic algorithms, simulated annealing, and ant colonies are reviewed and discussed to illustrate the main strategies used in the parallelization of different metaheuristics and their hybrids. * 2. Current trends in parallel computing. In this section, we review some trends and fundamental issues in parallel computing, which interfere in the design and in the efficiency of parallel algorithms.
Parallel Methods for Constraint Solving and Combinatorial Optimization (NII Shonan Meeting 2012-5)
NII Shonan Meet. Rep., 2012
In the last decade, with the development of multi-core workstations, the availability of GPGPU-enhanced systems and the access to Grid platforms and supercomputers worldwide, Parallel Programming reached mainstream programming and appeared as a key issue in order to use in an efficient manner the computing power at hand. Search methods and combinatorial optimization techniques are not isolated from this phenomenon, as bigger computing power means the ability to attack more complex combinatorial problems. In the last years some experiments have been done to extend to parallel execution search methods such as Constraint Programming or SAT solving (Boolean satisfiability), and combinatorial optimization methods such as Local Search, Meta-heuristics and Brand & Bound. However these works have mostly been done for shared memory multi-core systems (i.e. with a few cores) or for small PC clusters (a few machines). The next challenge is to devise efficient techniques and algorithms for massively parallel computers with tens or hundreds of thousands of cores in the form of heterogeneous hybrid systems based on both multi-core processors and GPUs. We would like to provide a cross-community forum for researchers working on search methods (Constraint Solving, Artificial Intelligence, Logic Programming, SAT solving, etc.), combinatorial optimization methods (metaheuristics, local search, tabu search, evolutionary algorithms, ant colony optimization, particle swarm optimization, memetic algorithms, and other types of algorithms) and High Performance Computing (Grids, large PC clusters, massively parallel computers, GPGPUs) in order to tackle the challenge of efficient implementations on all kinds of parallel hardware: multi-core, GPU-based or heterogeneous massively parallel systems. This meeting is designed to be a forum for researchers willing to tackle those issues, in order to exchange ideas, theoretical frameworks, design of algorithms and methods, implementation issues, experimental results and further boost this growing area through cross-fertilization.
Parallel Computation, Co-operation, Tabu Search
Operations Research/Computer Science Interfaces Series, 2005
We present strategies to design parallel tabu search algorithms and survey developments and results in the area. In the second part of the paper, we focus on multi-search strategies. We discuss general design and implementation principles, point out a number of challenges and pitfalls, and identify trends and promising research directions.
Generic Programming Aspects of Symmetry Exploiting Numerical Software
2004
The use of the generalized Fourier transform as a means to diagonalize certain types of equivariant matrices, and thus speeding up the solution of numerical systems, is discussed. Such matrices may arise in various applications with geometrical symmetries, for example when the boundary element method is used to solve an electrostatic problem in the exterior of a symmetric object. The method is described in detail for an object with a triangular symmetry, and the feasibility of the method is confirmed by numerical experiments. The design of numerical software for this kind of applications is a challenge. It is argued that generic programming is very suitable in this context, mainly because it is type safe and promotes polymorphism capabilities in link time. A generic C++ design of important mathematical abstractions such as groups, vector spaces, and group algebras, is outlined, illustrating the potential provided by generative programming techniques. The integration of explicit support for various data layouts for efficiency tuning purposes is discussed.
Parallel processing for difficult combinatorial optimization problems
European Journal of Operational Research, 1996
In identifying the general algorithmic problems most frequently encountered in designing and analyzing parallel algorithms (compatibility with machine architecture, choice of suitable shared or distributed data structures, compromise between communication and processing, and load balancing), we present recent research which has been carded out into parallelization of exact search methods such as Branch and Bound. We cover the main problems encountered with such a parallelization and present some theoretical and practical achievements in this field. The parallelization of heuristic search methods is shown to raise the same kind of issues.