Dot Net Platform for Distributed Evolutionary Algorithms with Application in Hydroinformatics

Dot Net Platform for Distributed Evolutionary Algorithms with Application in Hydroinformatics

Boban Stojanović (Faculty of Science, University of Kragujevac, Serbia), Nikola Milivojević (“Jaroslav Černi” Institute for the Development of Water Resources, Serbia), Miloš Ivanović (Faculty of Science, University of Kragujevac, Serbia) and Dejan Divac (“Jaroslav Černi” Institute for the Development of Water Resources, Serbia)
DOI: 10.4018/978-1-4666-5784-7.ch015


Real-world problems often contain nonlinearities, relationships, and uncertainties that are too complex to be modeled analytically. In these scenarios, simulation-based optimization is a powerful tool to determine optimal system parameters. Evolutionary Algorithms (EAs) are robust and powerful techniques for optimization of complex systems that perfectly fit into this concept. Since evolutionary algorithms require a large number of time expensive evaluations of candidate solutions, the whole process of optimization can take huge CPU time. In this chapter, .NET platform for distributed evaluation using WCF (Windows Communication Foundation) Web services is presented in order to reduce computational time. This concept provides parallelization of evolutionary algorithms independently of geographic location and platform where evaluation is performed. Hydroinformatics is a typical representative of fields where complex systems with many uncertainties are studied. Application of the developed platform in hydroinformatics is also presented in this chapter.
Chapter Preview

There are several protocols and libraries which provide aid in the development of parallel systems, by hiding some of the network connection and transmission details. The most important are MPI and OpenMP. MPI, the Message Passing Interface, is the standard for development of parallel codes on the distributed memory systems, whereas OpenMP (Open Multi-Processing) is the standard in shared memory systems (Dagum & Menon, 1998; Message Passing Interface Forum, 2009). The parallelization and distribution functionality in evolutionary software packages is often built on top of libraries implementing MPI, like in Simdist (Hoverstad, 2010) and ParadisEO (Cahon, Melab, & Talbi, 2004).

Key Terms in this Chapter

Hydroinformatics: Is a branch of informatics which concentrates on the application of information and communications technologies in addressing the increasingly serious problems of the equitable and efficient use of water for many different purposes.

Distributed Evaluation: Parallel evaluation of individuals (solutions) in an evolutionary algorithm using distributed computing resources.

Calibration: Is the process of determination of model parameter values in order that calculated results fit measurements as good as possible under the same conditions.

Evolutionary Algorithms: In artificial intelligence, an evolutionary algorithm is a subset of evolutionary computation, a generic population-based metaheuristic optimization algorithm.

Hydrology: Is the study of the movement, distribution, and quality of water on Earth and other planets, including the hydrologic cycle, water resources and environmental watershed sustainability.

Water Resource Management: Is the activity of planning, developing, distributing and managing the optimum use of water resources.

Optimization: Is the selection of a best element from some set of available alternatives with regard to some criteria.

Complete Chapter List

Search this Book: