Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Figure 1. Example Pareto Front diagram (after Blackmore et al, 2009)

...

Image Added

Insight operates at the spatial and temporal scales of Source models.  It runs Source models multiple times to search for optimal solutions.

...

Use this heading if the functionality is a plugin or requires any 3rd party software applications.

 

Structure & processes

...

Theory of NSGA-II

 

Details of the derivation of the Non-dominated Sorting Genetic Algorithm II (NSGA-II), including pseudo-code, are available in Deb et al (2002). NSGA-II is a variant of the well known Genetic Algorithm (GA) and the principles of the GA are discussed in text books (e.g. Loucks and van Beek, 2005).

 

Key features of NSGA-II are (abridged from Deb et al, 2002):

...

Definitions

Decision variablesThe management levers which can be pulled in order to achieve the required objectives. Each decision variable must be defined as a global expression, with an allowable range of values it can take.
Dominated solutionWhen comparing results from two Source runs (or group of runs), ‘A’ and ‘B’, Insight will treat ‘A’ as a “dominated solution” only if it is clearly inferior to ‘B’; that is, if ‘B’ performs better than ‘A’ on at least one of the statistics and there is no statistic where ‘A’ performs better than ‘B’.  In this case ‘B’ is a “non-dominated solution” and is a potential candidate for the Pareto front of optimal solutions (e.g. see Figure 1).
GenerationFor each generation the decision variables are subject to selection, crossover and mutation. The number of generations is specified by the modeller.
IndividualA solution obtained from a single run of Source with a given set of decision variable values (an individual is a group of runs when multiple scenarios are being investigated: one run for each scenario).
Non-dominated solutionSee definition of “dominated solution”.
Objective function

Mathematical expression of the objectives required to be achieved (e.g. minimising the operating cost of the system, maximising environmental benefits, or minimising time spent in water restrictions).  Objective Functions are set up as global expressions within Source.  

Note that only the value of the expression at the last time step is used for evaluating the objective function. Therefore, expressions should be defined in such a way that the value at the last time step of the simulation is the value that represents the required statistic for the entire simulation period.
PopulationThe number of possible feasible solutions to be derived by changing decision variable values (within their value constraints) in Insight and running Source.  The population size is specified by the modeller and is equal to the total number of individuals.

Insight Functionality

User requirements are summarised in Table 1. Interactions between Insight and Source are shown in Figure 2.

Table 1. User requirements

Item numberPrioirityShort description of task
11Allow optimisation over multiple scenarios
24Suitable output for multi-replicate runs
34A tool for analysing results from multi-replicate output
46Allow sub-models of Source with different time steps
55User-customisable water balance report
61Allow objective functions to be a range of statistics 
73Insight  to report the values of secondary objective functions
82Pass user-selected decision variables from Insight to Source
97Implement climate/component flexible restriction modelling
108Allow 2-way flow 
119Implement sub-networks
1210Link models with different time steps, e.g. Urban Developer
1311Enable switching between rules-based and NetLP
1412Recycling of n years of historical data

A single scenario in a Source model could represent a particular system configuration, inflow sequence, demand model, etc.  Insight can optimise the decision variable(s) (DVs) over multiple scenarios.  The DVs and objective functions are chosen by the modeller. 

Figure 2: Flowchart of interactions between Insight and Source for multi-scenario optimisation

Image Added

Key features are:

  1. The same set of DVs applies to all scenarios for each run of a batch of scenarios
  2. The values of the OF(s) are aggregated for each population member for all scenarios in a run of a batch of scenarios
  3. Statistics-based OFs are determined within Insight.

The functionality listed in Table 1 is all concerned with input and output data handling and how Insight and Source interact, and there is no new science involved. 

...

 Therefore, the functionality in Insight is not discussed further here and reference should be made to the Insight: Objective optimisation for information on how to use it.

Process

(Also refer to Figure 2)

1st generation

  1. Values of decision variables, randomly chosen by Insight from within their allowable value ranges (where these ranges are input by the modeller), are passed to Source (Step 3(a) in the section on Theory of NSGA-II). Insight provides one set of values for every “individual”, where the number of individuals is equal to the population size input by the modeller.
  2. Source is run for each individual (this is a group of runs for each individual when multiple scenarios are being investigated: one for each scenario).
  3. Values of objective functions and result variables needed for evaluating statistical objective functions are passed back from each run of Source to Insight.
  4. New values of decision variables are derived by selection, crossover and mutation to create the first offspring population (Step 3(b) in the section on Theory of NSGA-II).
  5. Source is run for each individual in this population (group of runs when multiple scenarios are being investigated).
  6. Values of objective functions and result variables needed for evaluating statistical objective functions are passed back from Source to Insight at the end of the run(s) for each individual.

Subsequent generations

For the i’th generation where 1 ≤ i  ng (and the total number of generations, ng, is input by the modeller):

  1. Insight processes decision variables and objective functions using the procedure described in the first two bullet points in Step 3(c) in the section on Theory of NSGA-II to create anew population ().  When comparing results from two Source runs (or group of runs), ‘A’ and ‘B’, Insight will treat ‘A’ as a “dominated solution” only if it is clearly inferior to ‘B’; that is, if ‘B’ performs better than ‘A’ on at least one of the statistics and there is no statistic where ‘A’ performs better than ‘B’.  In this case ‘B’ is a “non-dominated solution” and is a potential candidate for the Pareto front of optimal solutions (e.g. see Figure 1).