DIMMA: A Design and Implementation Methodology for Metaheuristic Algorithms - A Perspective from Software Development

DIMMA: A Design and Implementation Methodology for Metaheuristic Algorithms - A Perspective from Software Development

Masoud Yaghini (Iran University of Science and Technology, Iran) and Mohammad Rahim Akhavan Kazemzadeh (Iran University of Science and Technology, Iran)
DOI: 10.4018/978-1-61350-456-7.ch306
OnDemand PDF Download:
$30.00
List Price: $37.50

Abstract

Metaheuristic algorithms will gain more and more popularity in the future as optimization problems are increasing in size and complexity. In order to record experiences and allow project to be replicated, a standard process as a methodology for designing and implementing metaheuristic algorithms is necessary. To the best of the authors’ knowledge, no methodology has been proposed in literature for this purpose. This paper presents a Design and Implementation Methodology for Metaheuristic Algorithms, named DIMMA. The proposed methodology consists of three main phases and each phase has several steps in which activities that must be carried out are clearly defined in this paper. In addition, design and implementation of tabu search metaheuristic for travelling salesman problem is done as a case study to illustrate applicability of DIMMA.
Chapter Preview
Top

2. Architecture Of Dimma

The architecture of DIMMA has been inspired from Rational Unified Process (RUP) which is a methodology for software engineering (Kroll & Krutchten, 2003). DIMMA has two dimensions including dynamic and discipline dimension (Figure 1). Dynamic dimension is the horizontal dimension, which includes phases of the methodology: initiation, blueprint, and construction. Discipline dimension is the vertical dimension that shows the disciplines, which logically group the steps, activities, and artifacts.

Figure 1.

Two dimensions of DIMMA and level of effort in each discipline during the phases

Complete Chapter List

Search this Book:
Reset