Skip to content

DBPFinder simulation tool: Strategic placement of sensors for DBPs detection in water distribution systems

Notifications You must be signed in to change notification settings

superworld-cyens/DBPFinder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 

Repository files navigation

💧 DBPFinder: Sensor Placement Optimization for Disinfection Byproducts in Water Distribution Networks

DBPFinder is an interactive decision-support tool designed to aid water utilities and researchers in identifying optimal sensor locations for monitoring Disinfection Byproducts (DBPs), such as Trihalomethanes (THMs) and Haloacetic Acids (HAAs). It leverages environmental parameters, hydraulic simulations (via EPANET), and customizable risk models to support placement strategies under various performance objectives.

Multi-objective optimization: Supports placement based on:

- Time of detection
- Normalized Concentration Score
- Regulatory Event Occurance
- Contract-based Risk Weighting

Flexible DBP modeling:

- Use built-in standard formation equations for trihalomethanes and haloacetic acids
- Define your own custom formation equations

Visualization:

- View sensor placements over the network
- Node-specific score bars depending on selected performance objectives

Support for any water distribution network .inp file:

- Integration with the WNTR library for hydraulic and quality simulation

Data-driven configuration:

- Load Excel or CSV files with environmental conditions

📖Manual

You can find the manual of the software here: https://superworld.cyens.org.cy/projects/dbp_finder/DBPFinder_Documentation_v1.pdf.

Examples Folder

The "Examples" folder contains 3 different files to showcase what is required for the software to run the simulations correctly. It contains a file for the water distribution network, a sample of environmental data and how the excel file should be constructed as well as a contracts text file to tackle the performance objective of minmizing the mass consumption.

📝Changelog

- v1.0 -> Release of DBPFinder.
- v1.0.1 -> Bug fixes related to the "contracts" performance objective.
- v1.0.2 -> Several bug fixes related to the performance objectives & new environmental data example.

📦Requirements

- Python 3.7+
Required packages:
-streamlit
-wntr
-matplotlib
-pandas
-numpy
-networkx
-openpyxl
Install them via:

pip install -r requirements.txt

Quick Start:

git clone https://github.com/superworld-cyens/DBPFinder.git
streamlit run DBPFinder.py

About

DBPFinder simulation tool: Strategic placement of sensors for DBPs detection in water distribution systems

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages