Insight: Multi-objective optimisation

Some features are not available in Source (public version).

Introduction

Insight is eWater’s multiple-objective optimisation and decision-support framework. This framework allows for more efficient evaluation of planning options than the traditional manual trial and error approach that is often used. In other words, the main aim of Insight is to optimise decision rules for multiple objectives. The framework allows optimisation across single or multiple scenarios. The optimisation tool enables a more thorough examination of potential planning scenarios and the resulting trade-offs between desired outcomes.

Insight allows you to define which parameters (called decision variables) must be considered in the optimisation framework. Decisions variables can be thought of as management levers that can be pulled to affect the outcome. For example, you may be unsure of what the operating rules for a new desalination plant should be used to meet the objective of minimising cost, or what the optimal operating rules are for transferring water between storages to meet supply security objectives and minimising environmental impacts. By creating decision variables for these operating rules, the optimiser will try hundreds or thousands of different operating rules based on these decision variables and determine how the rules perform against a set of specified objectives.

Results of an optimisation run can be used as follows:

  • Tradeoffs between competing objectives can be identified and a desirable balance between objectives can be discussed; or
  • Management options which achieve the desired outcomes can be identified.

Contents

Decision variables

The goal of optimsation is to acheive a set of defined objectives based on decision variables that act as management levers. For example, the amount of water to release for environmental flows, the level of demand, or the amount of water to order from alternative supplies.

When deciding on decision variables, it is important to consider:

  • What the key drivers are likely to be (relevance);
  • Which parameter in the model represents the decision variable;
  • The number of decision variables, and the consequence of multiple decision variables;
  • Real decisions and discrete decisions refer to real and discrete decision variables. Real decisions variables can be any real number between an upper and lower bound; discrete decision variables can only be specific. Both variables must be defined in the Source project, and their possible value specified in Insight.
  • What are realistic ranges? Are there any constraints on the likely acceptable range for the decision variables?

Constraints

These define the limits of an acceptable optimisation result. They allow you to specify a function such that Insight rejects the solution if the value is < 0.

For example, you can create a function to specify that the environmental impact of a system does not exceed a certain value, or that the power output does not drop below a specified number. If maximum daily generation must exceed 100MWh, first create a new function $Constraint_min_power = $min_power - 100. If $Constraint_min_power is then declared as a constraint, any solutions resulting in a daily generation of <100MWh would be rejected.

Objectives

Mathematically known as objective functions, these can contain multiple parts, such as measure of cost, a measure of environmental impact and a measure of social costs. Examples of objective functions might include: minimising the operating cost of the system, minimising environmental impacts, or minimising time spent in water restrictions. In Insight, objective funcitons must be expressed as minimisation problems. Maximisation problems can be optimised by expressing the objective function as a negative.

When choosing objectives, it is important to consider:

  • The number of objectives;
  • The independence of the objectives;
  • Sensitivity of those objective functions to decision variables;
  • The value of the objectives to stakeholders; and
  • The ability to use outputs from the model to calculate the required objective.

Working with Insight

Ensure that the following pre-requisites are met prior to installing Insight:

  • eWater Source must be installed prior to running Insight;
  • Microsoft .NET framework v4 (or higher); and
  • Microsoft C++ 2010 x86 redistributable package.

Additionally, at a minimum, Insight requires the following to run an optimisation:

  • A Source project file containing a single scenario with decision variables and objectives expressed as Source functions (see Note);
  • Access to the Source command line tool;
  • An Insight settings file (containing the Source project location, objectives and decision variables);
  • The number of generations; and
  • The population size of each generation.

Working with Insight is a three-step process:

  1. Configuring an Insight Optimisation Run - Load a project and/or configuration and configure optimisation settings. This can be done using either the user interface or the command line;
  2. Run the optimisation; and
  3. View and analyse the optimisation results - Results of on optimisation run can only be viewed using the Insight interface (due to the two and three-dimensional nature of results).


Note

Insight should usually be run using a Source project file containing a single scenario. It is possible to run Insight using a project file containing multiple scenarios. However, Insight will run just one scenario in the project file, the first scenario created by the user.

Launching Insight

Figure 1 shows how to launch Insight once Source has been installed:

  • Click on the Windows Start menu;
  • Choose All Programs;
  • Scroll down and click on the folder indicating the version of Source you have installed (In Figure 1, this is eWater Source 3.3.0.234); and
  • Choose Insight from the list of programs listed.
Figure 1. Launching Insight

The Insight user interface

Note: When you open Insight for the first time, it will automatically attempt to locate an installation of the Source command line tool (RiverSystem.CommandLine.exe).
Figure 2. Insight user interface


The Insight user interface (Figure 2) comprises of:

  • A top-level menu where you can perform high-level functions such as load configuration settings or open a set of results;
  • A toolbar, where you can add/remove components of the optimisation run or perform a run;
  • A tree menu structure on the left that lists the components required to complete an optimisation run - objectives etc; and
  • A panel on the right that provides details of the selected tree menu item.

Insight menus

The File menu items allow you to work with settings configuration and results as follows:

  • File » Load RiverSystem project directory - This is synonymous to clicking Browse. It loads the directory containing the Source project(s). In Source (public version), you can only load a single project at a time;
  • File » Load Configuration - Loads the settings file of a previously saved configuration;
  • File » Load Configuration and project - Allows you to add additional configuration parameters to a loaded settings file;
  • File » Save Configuration - Saves the current configuration settings;
  • File » Import results and File » Export results - allows you to import and export results of an optimisation run respectively; and
  • File » Exit - Quits Insight.

The Help menu contains a link to this documentation page.

Insight toolbar

Figure 3. Insight toolbar

Creates a new component of type as selected:

    • Objective;
    • Constraint;
    • Real decision;
    • Discrete decision; or
    • Tracked variable

Removes the selected item from the tree menu.

Expands all folders in the tree.

Collapses all folders in the tree

Performs an optimisation run for the loaded project. Synonymous to clicking Run in the main interface.