Skip to the content.


Research software impact CRAN License monthly total Build Status dependencies

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

Year Journal Model(s) / Application Article
2013 EMS SWAT-2005, MODFLOW-2005 A model-independent Particle Swarm Optimisation software for model calibration
2013 IEEE Benchmark functions Standard Particle Swarm Optimisation 2011 at CEC-2013: A baseline for future PSO improvements
2013 JoH LISFLOOD Hydrological evaluation of satellite-based rainfall estimates over the Volta and Baro-Akobo Basin
2014 JCH MODFLOW2005-MT3DMS Particle Swarm Optimization for inverse modeling of solute transport in fractured gneiss aquifer
2014 JRSE SWAT SWAT model parameter calibration and uncertainty analysis using the hydroPSO R package in Nzoia Basin, Kenya
2014 GMD WALRUS The Wageningen Lowland Runoff Simulator (WALRUS): a lumped rainfall-runoff model for catchments with shallow groundwater
2014 HESS WALRUS The Wageningen Lowland Runoff Simulator (WALRUS): application to the Hupsel Brook catchment and the Cabauw polder
2014 HP Travel time distributions Consequences of mixing assumptions for time‐variable travel time distributions
2015 HP HBV A coupled hydrology-biogeochemistry model to simulate dissolved organic carbon exports from a permafrost‐influenced catchment
2015 HESS LISFLOOD Global warming increases the frequency of river floods in Europe
2015 HESS LISFLOOD A pan-African medium-range ensemble flood forecast system
2015 EE MARS-based Hybrid PSO-MARS-based model for forecasting a successful growth cycle of the Spirulina platensis from experimental data in open raceway ponds
2015 MJ Malaria transmission Predicting the impact of border control on malaria transmission: a simulated focal screen and treat campaign
2016 SC Stock Market Natural combination to trade in the stock market
2016 EMS SWAT-VSA Coupling the short-term global forecast system weather data with a variable source area hydrologic model
2016 JoH-RS LISFLOOD Assessing the role of uncertain precipitation estimates on the robustness of hydrological model parameters under highly variable climate conditions
2016 NHESS LISFLOOD Modelling the socio-economic impact of river floods in Europe
2017 EP WALRUS-paddy+PDP Hydrology and phosphorus transport simulation in a lowland polder by a coupled modeling system
2017 HP SWAT The value of remotely sensed surface soil moisture for model calibration using SWAT
2017 IS:CLS Genetics Reconstructing Genetic Regulatory Networks Using Two-Step Algorithms with the Differential Equation Models of Neural Networks
2017 Bioener. EPIC The greenhouse gas intensity and potential biofuel production capacity of maize stover harvest in the US Midwest
2017 Sustain. SWAT, GSWAT Development of an Evapotranspiration Data Assimilation Technique for Streamflow Estimates: A Case Study in a Semi-Arid Region
2017 CSR Clustering colors Clustering colors
2017 PLoS ONE Partitioning of color space Does optimal partitioning of color space account for universal color categorization?
2017 HESS Isotope analysis Pesticide fate on catchment scale: conceptual modelling of stream CSIA data
2017 HESS (in review) Dissolved organic carbon Hydrological control of dissolved organic carbon dynamics in a rehabilitated Sphagnum-dominated peatland: a water-table based modelling approach
2018 Antrop. WALRUS Hydrologic impacts of changing land use and climate in the Veneto lowlands of Italy
2018 JoH Soil moisture model (in R) Can next-generation soil data products improve soil moisture modelling at the continental scale? An assessment using a new microclimate package for the R programming environment
2018 AWM SWAT Assessing the impact of the MRBI program in a data limited Arkansas watershed using the SWAT model
2018 EMA Air quality Air Quality Modeling Using the PSO-SVM-Based Approach, MLP Neural Network, and M5 Model Tree in the Metropolitan Area of Oviedo (Northern Spain)


Installing the latest stable version from CRAN:


Alternatively, you can also try the under-development version from Github:

if (!require(devtools)) install.packages("devtools")

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



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 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 = {}, }

@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 = {},


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.

See Also


Give us your opinion !.