SlideShare une entreprise Scribd logo
1  sur  1
Télécharger pour lire hors ligne
hydroPSO:                                                     A         Versatile Particle Swarm Optimisation                                                                                                                                                                 R          Package                                       for
                                                                                                                                                                                                                                                                                                                                                                                                                 Joint
                                                hydroPSO:                                                     A         Versatile Particle Swarm Optimisation                                                                                                                                                                 R          Package                                       for                     Research
                                                                                                                                                                                                                                                                                                                                                                                                                Centre

                                                                                                                        Calibration of Environmental Models
                                                                                                                         Calibration of Environmental Models                                                                                                                                                                                                                                                   EGU2012-10950
                                                                                                                                                                                                                                                                                                                                                                                                               Session: HS3.3
                                                                                                                                      Mauricio Zambrano-Bigiarini and Rodrigo Rojas
                                                                                                                                      Mauricio Zambrano-Bigiarini and Rodrigo Rojas                                                                                                                                                                                                                             Apr 25th, 2012



    1) Motivation                                                                                                                                                                                                         5) Fine-tuning Options                                                      6) hydroPSO Main Functions
    Parameter optimisation techniques are generally                                                                                                                                                                                             hydroPSO                                           Function                                                             Short Description
                                                                                                                                                                                                                         PSO Parameter                                    Value(s)
    implemented in customised pieces of (proprietary)                                                                                                                                                                                            Option
                                                                                                                                                                                                                                                                                                   lhoat()                                      Sensitivity analysis using LH-OAT (van Griensven et al.,2006)
    software, which have to be strongly modified to set up the                                                                                                                                                                                                linear, non-linear, adaptive
                                                                                                                                                                                                                                                  use.IW      inertia weight factor (aiwf),        hydromod()                                   Run the model code to be calibrated
    calibration of alternative environmental models.                                                                                                                                                                             ω               IW.type      global-local    best   ratio,
                                                                                                                                                                                                                                                              random
                                                                                                                                                                                                                                                                                                   hydroPSO()                                   Platform- and model-independent PSO calibration engine
    The latter deprives the user of the flexibility to easily reuse                                                                                                                                                              c1           c1,use.TVc1,    linear, non-linear, global-local     read_results()                               Reading hydroPSO() results. It is a wrapper to:
                                                                                                                                                                                                                                               TVc2.type      best ratio
    existing calibration codes without having to invest                                                                                                                                                                                                                                                read_particles()                         Reading ”Particles.txt” output file
                                                                                                                                                                                                                                 c2           c2,use.TVc2,
                                                                                                                                                                                                                                                              linear, non-linear
    considerable time and effort.                                                                                                                                                                                                              TVc2.type                                               read_velocities()                        Reading ”Velocities.txt” output file
                                                                                                                                                                                                                            Boundary                          absorbing, invisible,
                                                                                                                                                                                                                            condition
                                                                                                                                                                                                                                              boundary.wall
                                                                                                                                                                                                                                                              reflecting, damping
                                                                                                                                                                                                                                                                                                       read_out()                               Reading ”Model_output.txt” output file
                                                                                                                                                                                                                           Regrouping             use.RG      TRUE/FALSE                               read_convergence()    Reading ”ConvergenceMeasures.txt” output file
    2) Aim                                                                                                                                                                                                                Initial positions     Xini.type     random, lhs                              read_GofPerParticle() Reading ”Particles_GofPerIter.txt” output file
                                                                                                                                                                                                                          Initial velocites     Vini.type     random, lhs, zero
    To present and illustrate the application of hydroPSO, a                                                                                                                                                                                                                                       plot_results()                               Plotting hydroPSO()results. It is a wrapper to:
                                                                                                                                                                                                                             Updates           best.update    synchronous, asynchronous
    new global optimisation R package specifically designed                                                                                                                                                                 Maximum           use.TVlambda,                                            plot_particles()                         Plotting sampled parameters (histograms, dotty plots, ...)
                                                                                                                                                                                                                                                            linear, non-linear
    to calibrate complex real-world environmental models.                                                                                                                                                                    velocity         TVlambda.type
                                                                                                                                                                                                                                                                                                       plot_velocities()                        Plotting evolution of particle velocities
                                                                                                                                                                                                                                                              gbest, lbest, vonNeumann,
                                                                                                                                                                                                                             Topology           topology                                               plot_out()                               Plotting model outputs against observations
                                                                                                                                                                                                                                                              random
                                                                                                                                                                                                                           PSO variant            method      pso, fips, wfips, ipso                   plot_convergence()                       Plotting convergence measures (optimum and swarm radious)
    3) hydroPSO: Key Features                                                                                                                                                                                                                                                                          plot_GofPerParticle() Plotting the evolution of the goodness-of-fit per each particle
                                                                                                                                                                                                                                                                                                   verification()            Runs the model code with one or more parameter sets
        ●
            Model-independent                                                                                                                                                                                                                                                                      test_functions()                             Six n-dimensional benchmark functions included: Sphere,
        ●
            Multi-platform (GNU/Linux, Windows, Mac OS X)                                                                                                                                                                                                                                                                                       Rosenbrock, Rastrigin, Griewank, Ackley and Schaffer F6.
        ●
            State-of-the-art Particle Swarm Optimisation (PSO) as                                                                                                                                                                                                                                                                               Useful to test the PSO configuration performance for different
            calibration engine                                                                                                                                                                                                                                                                                                                  types of calibration problems.
        ●
            Minimal user intervention to interface the model code
            with the calibration engine
                                                                                                                                                                                                                       Fig 02. Dotty plots showing the model performance versus parameter
                                                                                                                                                                                                                       values, for three selected parameters (SWAT-2005 case study). Vertical
                                                                                                                                                                                                                                                                                                      7) Case Studies
        ●
            Easy plotting of results                                                                                                                                                                                    red line indicates the optimum parameter value.                                     Application Feature                      SWAT-2005                                   Modflow-2005
        ●
            Sensitivity analysis by using the Latin-Hypercube One-                                                                                                                                                                                                                                        Platform                          GNU/Linux                                  Windows 7
                                                                                                            Fig 01. Interactions among the main hydroPSO functions. User-defined files ParamRanges.txt  and
            factor-At-a-Time (LH-OAT, van Griensven et al., 2006)                                           ParamFiles.txt  defines which parameters are to be calibrated and where they have to be modified,                                                                                             Type of model                     Semi-distributed, surface                  Fully-distributed, groundwater
                                                                                                            respectively. R functions out.FUN() and gof.FUN() are used along with observations to read model outputs                                                                                                                        hydrology
        ●
            Calibration engine validated against the Standard PSO                                           and to assess model performance, respectively. Light-blue shaded boxes indicate some user intervention.
            2007 (SPSO 2007, Clerc 2011)                                                                                                                                                                                                                                                                  hydroPSO-model                    Basic, through available R                 Advanced, through user-defined
                                                                                                                                                                                                                                                                                                          interface                         functions                                  R functions
        ●
            Several fine-tuning options and PSO variants to tackle
                                                                                                                                                                                                                                                                                                          Executable model code   Single file (swat2005.out)                           Sequential batch file (*.bat)
            different kinds of optimisation problems                                                                                                                                                                   Fig 03. Evolution of parameter values along number of model
                                                                                                                                                                                                                                                                                                          Simulated model outputs Continuous-time, single-site                         Steady-state, multi-site
        ●
            Open-source code (GPL >=2)                                                                                                                                                                                 evaluations for three selected parameters (SWAT-2005 case study).
                                                                                                                                                                                                                                                                                                          Goodness-of-fit measure Pre-defined Nash-Sutcliffe                           User-defined Gaussian
        ●
            Binaries, user manual, and vignette (tutorial) are                                                                                                                                                                                                                                                                    efficiency                                           Likelihood
            available on http://www.rforge.net/hydroPSO/
                                                                                                                                                                                                                                                                                                          8) Concluding Remarks
    4) Particle Swarm Optimisation (PSO)                                                                                                                                                                                                                                                              ●
                                                                                                                                                                                                                                                                                                           hydroPSO provides an efficient and ready-to-use global optimisation engine for the
                                                                                                                                                                                                                                                                                                           calibration of different environmental models
    PSO (Kennedy and Eberhart, 1995) is a                                                                                                                                                                                                                                                             ●
                                                                                                                                                                                                                                                                                                           hydroPSO allows to carry out a typical modelling exercise: sensitivity analysis, model
    population-based            stochastic                                                                                                                                                                                                                                                                 calibration and assessment of results
    optimisation technique inspired by                                                                                                                                                                                                                                                                ●
                                                                                                                                                                                                                                                                                                           For specific problems, a customised PSO configuration will have a significant impact on the
    the social behaviour of bird flocking.                                                                                                                                                                                                                                                                 optimisation results
                                                                                                                                                                                                                                                                                                      ●
                                                                                                                                                                                                                                                                                                           Results in two case studies show that hydroPSO is effective and efficient in finding optimal
    Each individual of the population adjuts its flying trajectory                                                                                                                                                                                                                                         solutions compared to intensive MCMC-based techniques
    around the multi-dimensional search space according to its                                                                                                                                                                                                                                        ●
                                                                                                                                                                                                                                                                                                           hydroPSO shows an outstanding flexibility to tackle several types of optimisation problems
    own flying experience (local search) and that of                                                                                                                                                                                                                                                       commonly faced by the modelling community (see point 7)
    neighbouring particles (global search):                                                                                                                                                                                                                                                           ●
                                                                                                                                                                                                                                                                                                           Given the versatility added by the R environment and the large amount of packages
                                         local search             global search                                                                                                                                                                                                                            available, we believe hydroPSO can be applied to a wide class of environmental models
                                                                                                                                                                                                                                                                                                           requiring some form of parameter optimisation
        V i t  1 =  V i t  c1 U 1t  P 1 − X it   c2 U 2t  G − X i t 
                                                                                                                                                                                                                                                                                                      9) Ongoing research:
                                   X i t 1 = X i t  V i t 1                                                                                                                                                         Fig 04. Evolution of the global optimum (Gaussian likelihood) and the          ●
                                                                                                                                                                                                                                                                                                          Multi-core/parallel support, to alleviate the computational burden
                                                                                                                                                                                                                       normalised swarm radious (δnorm) along the iterations (Modflow-2005
                                                                 ω : inertia weigth
                                                                                                                                                                                                                                                                                                          Multi-objective implementation, to tackle a wider class of optimisation problems
                                                            ●
●   X i t : i-th particle position at iteration t                                                                                                                                                                      case study).                                                                   ●

                                                            ●    c1 : cognitive aceleration coefficient
                                                                                                                                                                                                                                                                      References:
        t
●   V i : i-th particle velocity at iteration t
                                                            ●    c2 : social aceleration coefficient
●   P i : i-th particle best-known position
                                                             ● U 1 t, U 2 t: independent and uniformly      Fig 05. Gaussian likelihood response surface projected onto the parameter space (pseudo 3D-dotty                                                          ●
                                                                                                                                                                                                                                                                          Zambrano-Bigiarini, M., and R. Rojas (2012), hydroPSO: A model-independent particle swarm optimization software for calibration of environmental models,
●   G       : neighbourhood best-known position                                                             plots) for selected parameters. Panels show “behavioural” samples with L > 3.8x10-2. For a subset of                                                          Environmental Modelling & Software, submitted
                                                             distributed random vectors
                                                                                                            parameters (Modflow-2005 case study).                                                                                                                     ●
                                                                                                                                                                                                                                                                          Kennedy, J., and R. Eberhart (1995), Particle swarm optimization, in Proceedings IEEE International Conference on Neural Networks, 1995, vol. 4, pp. 1942–
                                                                                                                                                                                                                                                                          1948, doi: 10.1109/ICNN.1995.488968.
                                                                                                       Mauricio Zambrano-Bigiarini and Rodrigo Rojas
www.jrc.europa.eu
                                                                                                                                                                                                                                                                      ●
                                                                                                                                                                                                                                                                          Clerc, M., 2011. Standard particle swarm optimisation. http://clerc.maurice.free.fr/pso/SPSO_descriptions.pdf. [Online; last accessed Apr-2011].
                                                                                                       European Commission • Joint Research Centre • Institute for Environment and Sustainability                                                                     ●
                                                                                                                                                                                                                                                                          van Griensven, A., T. Meixner, S. Grunwald, T. Bishop, M. Diluzio, and R. Srinivasan (2006), A global sensitivity analysis tool for the parameters of multi-
                                                                                                                                                                                                                                                                          variable catchment models, Journal of Hydrology, 324 (1–4), 10–23, doi: 10.1016/j.jhydrol.2005.09.008.
                                                                                                       Tel. +39 0332 789588 • Email: mauricio.zambrano@jrc.ec.europa.eu

Contenu connexe

Dernier

1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
QucHHunhnh
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
heathfieldcps1
 
Gardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch LetterGardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch Letter
MateoGardella
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
PECB
 

Dernier (20)

1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Gardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch LetterGardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch Letter
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
fourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingfourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writing
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdf
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
 

En vedette

Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 

En vedette (20)

Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 

hydroPSO: A Versatile Particle Swarm Optimisation R Package for Calibration of Environmental Models (EGU 2012)

  • 1. hydroPSO: A Versatile Particle Swarm Optimisation R Package for Joint hydroPSO: A Versatile Particle Swarm Optimisation R Package for Research Centre Calibration of Environmental Models Calibration of Environmental Models EGU2012-10950 Session: HS3.3 Mauricio Zambrano-Bigiarini and Rodrigo Rojas Mauricio Zambrano-Bigiarini and Rodrigo Rojas Apr 25th, 2012 1) Motivation 5) Fine-tuning Options 6) hydroPSO Main Functions Parameter optimisation techniques are generally hydroPSO Function Short Description PSO Parameter Value(s) implemented in customised pieces of (proprietary) Option lhoat() Sensitivity analysis using LH-OAT (van Griensven et al.,2006) software, which have to be strongly modified to set up the linear, non-linear, adaptive use.IW inertia weight factor (aiwf), hydromod() Run the model code to be calibrated calibration of alternative environmental models. ω IW.type global-local best ratio, random hydroPSO() Platform- and model-independent PSO calibration engine The latter deprives the user of the flexibility to easily reuse c1 c1,use.TVc1, linear, non-linear, global-local read_results() Reading hydroPSO() results. It is a wrapper to: TVc2.type best ratio existing calibration codes without having to invest     read_particles() Reading ”Particles.txt” output file c2 c2,use.TVc2, linear, non-linear considerable time and effort. TVc2.type     read_velocities() Reading ”Velocities.txt” output file Boundary absorbing, invisible, condition boundary.wall reflecting, damping     read_out() Reading ”Model_output.txt” output file Regrouping use.RG TRUE/FALSE     read_convergence() Reading ”ConvergenceMeasures.txt” output file 2) Aim Initial positions Xini.type random, lhs     read_GofPerParticle() Reading ”Particles_GofPerIter.txt” output file Initial velocites Vini.type random, lhs, zero To present and illustrate the application of hydroPSO, a plot_results() Plotting hydroPSO()results. It is a wrapper to: Updates best.update synchronous, asynchronous new global optimisation R package specifically designed Maximum use.TVlambda,     plot_particles() Plotting sampled parameters (histograms, dotty plots, ...) linear, non-linear to calibrate complex real-world environmental models. velocity TVlambda.type     plot_velocities() Plotting evolution of particle velocities gbest, lbest, vonNeumann, Topology topology     plot_out() Plotting model outputs against observations random PSO variant method pso, fips, wfips, ipso     plot_convergence() Plotting convergence measures (optimum and swarm radious) 3) hydroPSO: Key Features     plot_GofPerParticle() Plotting the evolution of the goodness-of-fit per each particle verification() Runs the model code with one or more parameter sets ● Model-independent test_functions() Six n-dimensional benchmark functions included: Sphere, ● Multi-platform (GNU/Linux, Windows, Mac OS X) Rosenbrock, Rastrigin, Griewank, Ackley and Schaffer F6. ● State-of-the-art Particle Swarm Optimisation (PSO) as Useful to test the PSO configuration performance for different calibration engine types of calibration problems. ● Minimal user intervention to interface the model code with the calibration engine Fig 02. Dotty plots showing the model performance versus parameter values, for three selected parameters (SWAT-2005 case study). Vertical 7) Case Studies ● Easy plotting of results red line indicates the optimum parameter value. Application Feature SWAT-2005 Modflow-2005 ● Sensitivity analysis by using the Latin-Hypercube One- Platform GNU/Linux Windows 7 Fig 01. Interactions among the main hydroPSO functions. User-defined files ParamRanges.txt  and factor-At-a-Time (LH-OAT, van Griensven et al., 2006) ParamFiles.txt  defines which parameters are to be calibrated and where they have to be modified, Type of model Semi-distributed, surface Fully-distributed, groundwater respectively. R functions out.FUN() and gof.FUN() are used along with observations to read model outputs hydrology ● Calibration engine validated against the Standard PSO and to assess model performance, respectively. Light-blue shaded boxes indicate some user intervention. 2007 (SPSO 2007, Clerc 2011) hydroPSO-model Basic, through available R Advanced, through user-defined interface functions R functions ● Several fine-tuning options and PSO variants to tackle Executable model code Single file (swat2005.out) Sequential batch file (*.bat) different kinds of optimisation problems Fig 03. Evolution of parameter values along number of model Simulated model outputs Continuous-time, single-site Steady-state, multi-site ● Open-source code (GPL >=2) evaluations for three selected parameters (SWAT-2005 case study). Goodness-of-fit measure Pre-defined Nash-Sutcliffe User-defined Gaussian ● Binaries, user manual, and vignette (tutorial) are efficiency Likelihood available on http://www.rforge.net/hydroPSO/ 8) Concluding Remarks 4) Particle Swarm Optimisation (PSO) ● hydroPSO provides an efficient and ready-to-use global optimisation engine for the calibration of different environmental models PSO (Kennedy and Eberhart, 1995) is a ● hydroPSO allows to carry out a typical modelling exercise: sensitivity analysis, model population-based stochastic calibration and assessment of results optimisation technique inspired by ● For specific problems, a customised PSO configuration will have a significant impact on the the social behaviour of bird flocking. optimisation results ● Results in two case studies show that hydroPSO is effective and efficient in finding optimal Each individual of the population adjuts its flying trajectory solutions compared to intensive MCMC-based techniques around the multi-dimensional search space according to its ● hydroPSO shows an outstanding flexibility to tackle several types of optimisation problems own flying experience (local search) and that of commonly faced by the modelling community (see point 7) neighbouring particles (global search): ● Given the versatility added by the R environment and the large amount of packages local search global search available, we believe hydroPSO can be applied to a wide class of environmental models requiring some form of parameter optimisation V i t  1 =  V i t  c1 U 1t  P 1 − X it   c2 U 2t  G − X i t  9) Ongoing research: X i t 1 = X i t  V i t 1 Fig 04. Evolution of the global optimum (Gaussian likelihood) and the ● Multi-core/parallel support, to alleviate the computational burden normalised swarm radious (δnorm) along the iterations (Modflow-2005 ω : inertia weigth Multi-objective implementation, to tackle a wider class of optimisation problems ● ● X i t : i-th particle position at iteration t case study). ● ● c1 : cognitive aceleration coefficient References: t ● V i : i-th particle velocity at iteration t ● c2 : social aceleration coefficient ● P i : i-th particle best-known position ● U 1 t, U 2 t: independent and uniformly Fig 05. Gaussian likelihood response surface projected onto the parameter space (pseudo 3D-dotty ● Zambrano-Bigiarini, M., and R. Rojas (2012), hydroPSO: A model-independent particle swarm optimization software for calibration of environmental models, ● G : neighbourhood best-known position plots) for selected parameters. Panels show “behavioural” samples with L > 3.8x10-2. For a subset of Environmental Modelling & Software, submitted distributed random vectors parameters (Modflow-2005 case study). ● Kennedy, J., and R. Eberhart (1995), Particle swarm optimization, in Proceedings IEEE International Conference on Neural Networks, 1995, vol. 4, pp. 1942– 1948, doi: 10.1109/ICNN.1995.488968. Mauricio Zambrano-Bigiarini and Rodrigo Rojas www.jrc.europa.eu ● Clerc, M., 2011. Standard particle swarm optimisation. http://clerc.maurice.free.fr/pso/SPSO_descriptions.pdf. [Online; last accessed Apr-2011]. European Commission • Joint Research Centre • Institute for Environment and Sustainability ● van Griensven, A., T. Meixner, S. Grunwald, T. Bishop, M. Diluzio, and R. Srinivasan (2006), A global sensitivity analysis tool for the parameters of multi- variable catchment models, Journal of Hydrology, 324 (1–4), 10–23, doi: 10.1016/j.jhydrol.2005.09.008. Tel. +39 0332 789588 • Email: mauricio.zambrano@jrc.ec.europa.eu