Grid-enabled Adaptive Cyberinfrastructure for Threat Management |
Background
- EPANET is an extended period hydraulic and water-quality simulation code developed at EPA.
- We use the EPANET code to solve the contamination source characterization problem.
Coarse Grain Parallelization of Water Quality Simulation Code(EPANET)
- Developed a wrapper around the original EPANET that could take several sources and simulate them successively within one run.
- This amortizes the startup costs(i.e., setup time when starting the program) as we pack more computation per run.
- The wrapper is then parallelized using MPI. This version is referred to as 'pepanet'.
- Within
the MPI program, the total trial sources are divided among all the
processes. Each process then simulates the assigned group of sources
successively.
- The root process collects all the fitness functions from all the member processes and writes it to an output file.
Optimization Methods Using Evolutionary Computing Techniques and Concepts from Graph Theory.
- In EPANET, the water distribution
network is represented as a connected graph. But the node numbering is
not entirely amenable for using optimization methods like Genetic
algorithms(GA) effectively.
- Hence node reordering using the Cuthill McKee algorithm is performed to create a equivalent suitable representation.
- An optimization method that implements genetic algorithms(GA) has been developed.
- The GA implementation uses real encoding for the parameters and simulated binary crossover(SBX) operator for crossover.
Workflow Encompassing Interactions Between the Optimization Methods and Parallelized Water Quality Simulation Code.
- Glue code has been developed to facilitate interaction between the optimization methods and the parallelized EPANET(pepanet).
- The
wrapper(pepanet) is designed keeping in mind various optimization
method implementations. This has been tested with diverse optimization
method implementaions in Java, C and Matlab.
Framework for Deployment on Large Scale Distributed Systems like Teragrid and SURAgrid.
- Preliminary work has been done in
this area. Shell scripts and other glue code is developed to deploy the
current framework in Teragrid.
- This included configuration of passwordless ssh etc. too for ensuring seamless file based communication.
Performance Analysis and Optimization.
- During the initial development of
parallel EPANET(pepanet), a random search method was implemented to
solve the source identification problem.
- This
random search implementation is then parallelized using MPI. Extensive
benchmarking has been performed to study scalabilty issues and compare
the serial and parallel versions.
- Extensive performance analysis is done for the Teragrid deployment scenario.
Miscellaneous
- A visualization tool is developed to monitor progress of the overall application and provide better understanding of the search patterns of the optimization method.
|