Does EFDC have a package that can type Matlab code (Ex: Genetic algorithm) to calculate the global optimization of parameters or other package can type optimization software?I am looking forward to your answer. Thank you very much!
There isn’t any specific package or software that we publish to do that sort of thing, however, I can tell you that several users have developed code to achieve something similar to what you are talking about.Generally, those people have written code in MATLAB or some other software to modify specific parts of the model input files and then used their code to modify batch scripts to run the model through a specified number of runs automatically. It’s not terribly difficult to do, but there are some important caveats to consider.Specifically, because 3D models like the ones you can build with EFDC are relatively expensive computationally, you need to be judicious about your methodology for doing parameter optimization. While there are many options out there, most approaches will require a far larger number of simulations than is really feasible with a model like EFDC.
So how can I find the global optimization of parameters if there is no package?
Everyone that I am aware of has written their own code to automatically manipulate the model input files and generate new simulations to do parameter optimization. As I said in my previous message there are many options available for algorithms, but the key is knowing which parameters you want to vary and where those settings reside in the model input files.Which parameters or what module are you trying to optimize?
I want to optimize the parameters of the hydrodynamics and water quality module.
Given the number of parameters in the water quality module alone, you will need to narrow down the list of parameters you think will be important. With a model like EFDC+, the number of runs you will be able to perform in a reasonable period of time is relatively small, so the fewer parameters, the better.I recommend looking at the following paper to get you started: Campolongo, Francesca, Jessica Cariboni, and Andrea Saltelli. “An effective screening design for sensitivity analysis of large models.” Environmental modelling & software 22, no. 10 (2007): 1509-1518.The interactions between the hydrodynamic and water quality modules will be mostly related to the density and stratification of the water body since the primary feedback to the temperature and hydrodynamics module from the water quality module will impact the attenuation of shortwave radiation.Unfortunately, these are not cut and dry things, so you will need to think through this a bit to decide what you really want to be looking at in your sensitivity analysis. Certainly, if you consider all the parameters in both the hydrodynamic and water quality modules of the code, you would be looking at potentially many thousands of runs which would take an inordinate amount of time.
I already have a list of several parameters that need to be adjusted. So I only can use sensitivity analysis and trial and error to adjust the parameters step by step? Or can I use the Optimization Approach like Genetic algorithm (GA) to find the best solution for the parameters of EFDC