hydroPSO
hydroPSO is a global optimisation R package implementing a state-of-the-art version of the Particle Swarm Optimisation (PSO) algorithm (SPSO-2011 and SPSO-2007 capable), with a special focus on the calibration of environmental models.
hydroPSO is parallel-capable, to alleviate the computational burden of complex models.
hydroPSO is model-independent, allowing the user to easily interface any model code with the calibration engine (PSO), and includes a series of controlling options and PSO variants to fine-tune the performance of the optimisation engine. An advanced sensitivity analysis function together with user-friendly plotting summaries facilitate the interpretation and assessment of the calibration results.
Bugs / comments / questions / collaboration of any kind are very welcomed.
Articles using hydroPSO
Installation
Installing the latest stable version from CRAN:
install.packages("hydroPSO")
Alternatively, you can also try the under-development version from Github:
if (!require(devtools)) install.packages("devtools")
library(devtools)
install_github("hzambran/hydroPSO")
Reporting bugs, requesting new features
If you find an error in some function, or want to report a typo in the documentation, or to request a new feature (and wish it be implemented :) you can do it here
Citation
citation("hydroPSO")
To cite hydroPSO in publications use:
Zambrano-Bigiarini, M. and Rojas, R. (2013). A model-independent Particle Swarm Optimisation software for model calibration, Environmental Modelling & Software, 43, 5-25, doi:10.1016/j.envsoft.2013.01.004.
Zambrano-Bigiarini, M. and Rojas, R. (2018). hydroPSO: Particle Swarm Optimisation, with Focus on Environmental Models. R package version 0.4-1. URL https://cran.r-project.org/package=hydroPSO. DOI:10.5281/zenodo.1287350.
BibTeX entries for LaTeX users are
@Article{Zambrano-BigiariniRojas2013-hydroPSO_article, title = {A model-independent Particle Swarm Optimisation software for model calibration}, journal = {Environmental Modelling \& Software}, author = {Zambrano-Bigiarini, M. and Rojas, R.}, volume = {43}, pages = {5-25}, year = {2013}, doi = {10.1016/j.envsoft.2013.01.004}, url = {https://doi.org/10.1016/j.envsoft.2013.01.004}, }
@Manual{Zambrano-BigiariniRojas-hydroPSO_pkg, title = {hydroPSO: Particle Swarm Optimisation, with Focus on Environmental Models}, author = {Mauricio Zambrano-Bigiarini and Rodrigo Rojas}, year = {2018}, note = {R package version 0.4-0. doi:10.5281/zenodo.1287350}, url = {https://CRAN.R-project.org/package=hydroPSO},
Vignettes
1) Here you can find a vignette showing how to use hydroPSO
to calibrate parameters of the GR4J hydrological model, which belongs to the airGR family of models.
2) Here you can find a vignette showing how to use hydroPSO
to calibrate parameters of TUWmodel.
3) Here you can find a vignette showing how to use hydroPSO
to calibrate parameters of SWAT-2005 and MODFLOW-2005.A similar approach can be used to calibrate SWAT-2012 or other models that need to be run from the system console.
-
The file MF2005.zip, with all the necessary files to run the MODFLOW-2005 examples in the vignette, contains 3 Windows binary files:
mf2005.exe
,preproc.exe
andzonbud_hydroPSO.exe
. These binary files are distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. In no event shall the authors be liable for any CLAIM, DAMAGES or other LIABILITY, whether in an action of contract, tort or otherwise, arising from, out of or in connection with the software or the use or other dealings in the software. -
The file SWAT2005.zip , with all the necessary files to run the SWAT-2005 examples in the vignette, contains 1 Windows binary file:
swat2005.exe
and 1 UNIX binary file:swat2005.out
. Those binary files are distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. In no event shall the authors be liable for any CLAIM, DAMAGES or other LIABILITY, whether in an action of contract, tort or otherwise, arising from, out of or in connection with the software or the use or other dealings in the software.
Related Material
-
hydroPSO: A Versatile Particle Swarm Optimisation R Package for Calibration of Environmental Models (EGU-2012) abstract, poster.
-
R: a statistical environment for hydrological analysis (EGU-2010) abstract, poster.