The stormwater_PFL-RBC_tool
predictive fuzzy logic and rule-based control (PFL-RBC) approach for practitioners to address the real-time continuous operation of stormwater storage systems in urban areas. This approach enables more practical incorporation with accessible predictive information (i.e., the total rainfall depth forecast) and more time-efficient training process for adapting a new environment. Our codes also provide a framework for compare the performances of PFL-RBC with other control models (e.g., the static RBC and the optimization based MPC)
The main modules were coded in MATLAB, as listed below:
-
Qtarget_FLC.m
to train a fuzzy logic controller in the PFL-RBC. -
Main.m
to implement an RTC model (e.g., the PFL-RBC approach) in a single storage tank case. -
control_model_wet.m
to generate a control strategy during wet period. -
control_model_dry.m
to generate a control strategy during dry period. -
TVGM_URBAN.p
to simulate the total inflow from upstream. -
SWMM.p
to simulate the dynamics of controlled storage systems.
Noted that:
-
the fuzzy logic controller was simulated using the
fuzzy logic designer
in MATLAB. -
the stepwise process of control decision-making and execution were coded in the framework of
MatSWMM
(developed by Riano-Briceno et al. in 2016), which alows the SWMM model to be paused at each control time step to extract the sataes and adjustthe set points of the orifice and pumps. -
the total inflow can also be simulated using the
SWMM
if the required modeling data is available.
- the SWMM.inp file of the demonstration case
- the forecasted and monitored rainfall data
-
download the
MATLAB
software (version not lower than R2021a is suggested). -
download the
stormwater_PFL-RBC_tool
and open it at the MATLAB. -
prepare a demonstration case for control simulation (refer to the
Requried Data
) -
run the
Qtarget_FLC.m
to get a trained FLC controller (i.e.,target flow.fis
) . -
change the parameters in the
Main.m
according to your case. -
run the
Main.m
and output the simulation results.