Skip to content

Glossary

Lindsay Bradford edited this page Oct 17, 2019 · 13 revisions

Being a scientific modeling tool, the CREM is full of terms that aren't used in common conversation. Below is a glossary of these terms:

  • Annealer: The CREM uses simulated annealing for its optimisation of catchment resilience solutions. Simulated annealing seeks optimal global solutions by avoiding local optima (getting stuck) through a mechanism of cooling over time. Initially, it accepts bad solutions, but as time progresses becomes gradually less likely to accept any bad solutions it finds as it explores the solution-space. Annealing doesn't guarantee a 'best' solution, but can reasonably be expected to find a near-best solution in a reasonable time-frame.
  • Annealing Observer: As a particular annealing run is executing, an observer may be configured to watch it, receiving updates on its progress as it goes. Configuration allows an observer to dictate a range of filters it apply to the annealing iteration events, and frequency of update. A typical use of an observer is to tie it to a Logger in order to observer/debug annealing runs.
  • Logger: A logger is a configurable output stream of information from a running CREM scenario. Configuration allows the scenario to dictate where to send particular types of information, and how to format that information. A logger could simply write text messages to the console, or a structured set of key CREM attributes, encoded in a structured format like JSON, for automated monitoring.
  • Multi-Objective Annealing: Multi-Objective Annealing sees an Annealer attempt to find an optimised solution to a number of objectives. It no longer tries to find a near-best solution to a single objective. Instead, it produces a set of solutions that capture tradeoffs between a number of objectives. This becomes especially important for objectives that might compete for limited resources, where a single objective might starve other objectives out. See also: single-objective Annealing.
  • Optimisation: In the CREM context, this is computational optimisation, seeking a 'near-best' solution to catchment resilience based on how the modeler was configured (see Annealer).
  • Job: A job is a concept that applies to a running CREM service. A job acts to wrap a scenario, and manage its lifecycle from receipt to completion.
  • Run: A run is a (potentially duplicate) complete annealing optimisation for a scenario. Several duplicates may be asked for as a mechanism to asses how well the annealer is converging to consistent solutions.
  • Scenario: A scenario is a particular, re-executable model of a catchment resilience optimisation. A scenario consists of a number of duplicate 'runs' of an optimisation. As a group, the runs in a scenario can be used to gauge how well a single scenario converges to a particular solution.
  • Single-Objective Annealing: Single-Objective Annealing is the type of simulated annealing that comes to mind when people familiar with the concept talk about simulated annealing. There is a single objective, and annealing attempts to find an optimised solution to achieve the objective. As the CREM also supports multi-objective annealing, we disambiguate by being very clear about the type of annealing we are engaging in. See also: multi-objective annealing.
Clone this wiki locally