Enhancing Accuracy and Efficiency in Calibration of Drinking Water Distribution Networks Through Evolutionary Artificial Neural Networks and Expert Systems
This repository, ESNEAT, contains the implementation of the automatic (re)calibration method ES-NEAT for the Drinking water distribution network of Fossolo. The approach is described in the scientific paper "Enhancing Accuracy and Efficiency in Calibration of Drinking Water Distribution Networks Through Evolutionary Artificial Neural Networks and Expert Systems". This project is targeted at researchers interested in model calibration, NEAT algorithms, and water resource management.
- Overview
- Features
- Installation
- Usage
- Input Data
- Results
- Citing This Work
- Contributing
- License
- Acknowledgments
- Contact Information
This project aims to enhance reproducibility and transparency in dwdn modeling by implementing ES-NEAT to automatically (re)calibrate model parameters, ensuring continuous model performance. The DWDN model and data used in this project are based on the Fossolo network.
- NEAT (NeuroEvolution of Augmenting Topologies): A genetic algorithm for evolving neural networks.
- Expert Systems: Used to guide the recalibration process.
- Calibration Methods: Ensuring model outputs align with real-world data.
- Automatic adjustment of DWDN parameters.
- Visualization of results comparing simulation outputs to real-world data.
- Model reproducibility with included NEAT seed files.
- Python implementation with minimal dependencies.
To run this project, you will need the following:
- Python 3.12
- Numpy 1.26.4
- Pandas 2.2.2
- NEAT 0.92
- WNTR 1.4.0
- EPANET 2.2 (required for additional DWDN modeling functionality)
- Clone this repository:
git clone https://github.com/your-repo-url/ESNEAT.git cd ESNEAT
You can run the code using:
- Spyder
- Jupyter Notebook
- Load the input data from the
input_Datafolder. - Execute the calibration script or notebook.
- View the generated results including RMSE, parameter adjustments, and visual plots.
No special environment configurations are required.
The repository includes the necessary input data located in the input_Data folder. The data is provided in:
- CSV files for tabular inputs.
- TXT files for additional configuration details.
The code generates the following outputs:
- Root Mean Square Error (RMSE) of effluent data compared to real-world measurements.
- Visual plots of flow and pressure data.
- Final adjusted model parameters.
- Time taken for the simulation.
- Updated NEAT seed file for future recalibrations.
Example results are detailed in the accompanying paper.
Citation information will be added here when available.
Contributions are welcome! If you'd like to contribute, please send your suggestions or improvements via email.
This project is licensed under the MIT License. Refer to the LICENSE file for more details on usage restrictions and permissions.
Acknowledgment details will be added in the future.
For questions or support, please refer to the contact information provided in the paper.