Introduction and Background

This application analyses OPTAIN optimisation outputs and shall support decision making. While all solutions provided by the SWAT+ / COMOLA workflow are pareto-optimal (none of the objectives can be improved without losses in other objectives), choosing among a large number of solutions can be daunting.


To reduce complexity while minimising information loss, this application provides two ways to filter/reduce the pareto front:

  1. A clustering algorithm based on a Principal Component Analysis (PCA) and kmeans/kmedoids. The user can modify the clustering process, alter the number of tested clusters and the way outliers are handled or how much correlation is accepted across the considered variables. Finally, those optima representative for different clusters can be plotted and the measure implementation they recommend can be compared.

  2. An Analytical Hierarchy Process that can be run as standalone method as well as as additional feature on top of the clustered pareto front.


The application is structured the following way:

The second tab Visualising the Pareto Front provides an overview over the optimisation results. The user can gain insights into the relationships between the objectives and the pareto front by selecting and plotting preferred objective ranges.

The third tab Data Preparation is needed to produce the data required for the subsequent analyses. Several files need to be provided so the variables considered in the clustering can be calculated.

The fourth tab Configure Clustering allows to perform the clustering with default settings or to jump to the optional tabs for manual clustering.

  • The tab Clustering Part 1 - Correlation Analysis can only be accessed if manual clustering is chosen in the Configure Clustering tab. It allows to assess and alter variables considered in the subsequent clustering.
  • The tab Clustering Part 2 - PCA & kmeans/kmedoids provides the possibility to adapt, modify and finally perform the clustering process.

The Cluster Analysis tab lets the user plot the optima remaining after the clustering. Each of these optima is representative for one cluster.

The tab AHP - Analytical Hierarchy Process allows to determine priorities across the pareto front in a different way through assigning weights across the optima. It is possible to combine the clustering results with the AHP.



To ensure compatibility with algorithms (e.g. CoMOLA) designed for maximisation, some projects used negative numbers. Please note that, unless an objective uses mixed signs, this app omits the minus sign of these values. The interpretation however remains unchanged.

Data Preparation

This tab requires you to provide the optimisation outputs. Please refer to the Readme for examples of their structure. You can provide a limited set of outputs to only analyse the Pareto front in the next tab.

Alternatively, you can upload more data and prepare the variables for the subsequent correlation and cluster analysis by clicking Check Files and (if all files have been found) Run Prep. Please be aware that the preparation might take up to 15 minutes.

For being able to plot and analyse the Pareto front, please provide pareto_fitness.txt as well as the objective names. If you would like to plot the status quo, sq_fitness.txt is also required:

pareto_fitness.txt

sq_fitness.txt (optional)

The objective names should align with the first four columns of the pareto_fitness.txt file:
*Please note, you can only change these names later if you perform a Hard Reset below.

If you want you can supply the objectives' units, you can change them anytime:




If you also want to run the subsequent correlation and cluster analysis, please provide the following files. Their names have to align with what is given here:

1. pareto_genomes.txt
2. hru.con
3. measure_location.csv
4. rout_unit.con
5. shapefile called "hru" with four components (.shp .dbf .prj and .shx)

Run Preparation Script when ready (depending on the size of the shapefiles this can take up to 10 minutes)



Please select those measures that are small and require a buffer to enhance their visibility in maps.


For some applications it makes sense to obscure the catchment location. Please click here if you would like to anonymise your catchment.


Range of objective values given in pareto_fitness.txt:



Visualising the Optimisation Output

This tab plots the pareto front in a few different ways and lets you explore the effects of different objective ranges. You can select specific points/optima on the pareto front by clicking on them, then you can plot and download the map of the respective NSWRM plan. You can also select optima in the line plot and analyse their location in the objective space.

Pareto Plot

Loading...


Number of distinct measures used in selection compared to full front
*please note that these numbers refer to the implementation/use of the total number of measures available in the catchment. They therefore differ from the selection made in the sliders which considers individual optima's implementation of measures.

Range (slider selection)

Optimum (selected in Pareto plot)





Selected Objective Ranges (scaled)
Selected Objective Ranges (absolute)
*the percentage values signify the difference between the full range and the current max and min selection.
Optimum (selected in line plot)
Maximum Objective Ranges (absolute)
*objectives optimised across negative and positive ranges are shown with signs. All other objectives are given without signs.
Parallel Axis plot

                  
Scatter Plot

Configure Cluster Settings

Would you like to limit the objective ranges prior to clustering?


Would you like to alter the correlation and cluster settings or run with default settings?
Loading...

Clustering Part 1 - Correlation Analysis

A correlation analysis is needed as correlation among variables can skew cluster results. Therefore, please click Run Correlation Analysis. Based on the levels of correlation you can select those variables you would like to exclude from the subsequent clustering. Select them and then click Confirm Selection. You can come back to this tab to change the selection of variables later. It is also possible to run the clustering across all variables and select no variables to exclude in this tab, however please always click Confirm Selection.

Correlation Analysis
Most correlated variables

Clustering Part 2 - PCA & kmeans/kmedoids

This tab requires you to decide on the cluster settings. After selecting how the objectives shall be plotted, deciding on the axis titles and confirming the number of PCAs tested, the clustering can be run with default settings. Selecting Yes under either 2. or 3. allows to change those default settings and test a variable number of clusters and outlier considerations.

The cluster outputs open in separate tabs and can be saved as images.

Refine PCA Settings here and click Confirm Choice, Confirm Axis Labels and Confirm Number of PCs tested, then click Run Principal Component Analysis on the left
1. Please select how the objectives should be plotted
2. Please specify the number of principal components that shall be tested
3. Shall outliers be analysed and potentially removed?

3.1 Please specify the number of standard deviations that shall be tested:

3.2 Please specify how many extreme variables within a datapoint shall be tested:

3.3 Please select a limit for the number of extreme solutions allowed in the final clustering:

4. Shall several number of clusters be tested?

Please specify how many clusters to iterate through:

Python Background Processes

                  

Analysing the remaining optima

This tab allows you to analyse the cluster outputs and plot and compare the measure implementation across the pareto solutions selected in the clustering. The table shows those optima selected as representative for the different clusters. The plot on the right aligns with the one produced during the clustering. It shows the location of the optima selected in the table. Please be aware that plotting the measure allocation takes around 20 seconds.

Optima Representative for Clusters
Select among plots.
Loading...









Analytical Hierarchy Process

This tab allows you to run a different approach (AHP) to selecting pareto optima that best match your preferences. AHP is a decision making tool that helps you prioritise different objectives by comparing them in pairs. If you want you can limit the objective ranges and number of measures under 1.

Under 2. you can compare objectives two at a time and decide which objective is more important and by how much. ParetoPick-R will assign weights to each objective based on your inputs and check its consistency. The respective best choice is plotted below and you can decide whether it should be selected from the whole pareto front or from the subset of cluster results.

2. Assign weights


Selected Weights
Manual Assignment of Weights

Best Option under selected weighting
Manual Selection/Refinement of best Option
The starting point is the currently selected best optimum



Number of measures in AHP optimum / slider selection / whole front



Loading...