Watch a walk-through of Reframe, a tool designed to support the collaborative design and implementation of risk and decision analyses including the quantitative treatment of uncertainty and sensitivity.
The prototype Reframe system demonstrated in this screencast was developed under FLOODsite task 20, building on work funded by the UK Engineering and Physical Sciences Research Council. It is designed to address two major types of difficulty which have been encountered by members of the task 20 team and their colleagues during the collaborative development and implementation of uncertainty, risk and decision analysis tools for flood risk management.
- Coupling numerous independently developed software codes into a correct implementation of the complex sequences of computations that constitute a flood risk analysis. Software coupling currently involves much error prone, ad-hoc work. Links are often achieved by manual intervention, further increasing the risk of error and severely limiting the number of runs possible.
- Communication about the content and meaning of these computations. The resulting analyses are generally complex, and an analysis often has features unique to a particular combination of decision and location. It is extremely difficult to document methods and implementations well enough that they can be fully understood. It is likewise difficult to keep documentation up to date as an implementation evolves.
Reframe is built around a new metamodel, a formal account of the various artefacts – reference frames, data sets, models, computations – involved in computational decision support for flood risk management (Harvey, Peppé and Hall, 2008). This metamodel does not (and cannot) itself solve the problems mentioned, but the clarity and rigour afforded by the metamodel is an essential foundation for software intended to do so.
The metamodel is designed to help people conceptualise and structure the complex multi-dimensional analyses which increasingly form the basis of support of decision making flood risk management, to communicate about these with other people, and to encode them for manipulation by computer (Harvey, Peppé and Hall, 2008). Here “manipulation by computer” includes execution of the analysis, as it would if Reframe were simply another programming language. The Reframe metamodel is designed to enable a much wider range of manipulations, however, many of which have to do not with “number crunching” but with communication between (human) participants in an analysis process.
These two aspects — number crunching and the human communication — are represented in the current Reframe prototype, which has two main parts.
- A compiler for a programming language that allows computations to be defined in terms of the Reframe metamodel. It is capable of compiling an idealised but realistic flood risk analysis.
- A web-browser based viewer for computations defined in this language. This sets out an analysis as a collection of hyperlinked web pages through which the user can browse, for example exploring the process by which some final results were created. Embedded in these pages where appropriate are diagrammatic presentations of parts of the analysis. All of this is automatically generated.
Using existing codes
We recognise that major components of flood risk analyses will continue to be implemented in languages already familiar to developers (C, Fortran, Java, Python, Matlab and R, …). Reframe is designed to allow such components to be used as is, as long as they can be used in batch mode. In the prototype, all visualisation (currently limited to simple graphs) is implemented in this way, using gnuplot and the Google Chart API. Reframe itself is intended to be used as an integration tool.
Reframe targets a different level of integration from the OpenMI standard and libraries. OpenMI is specific to time-step coupling of simulation models. The Reframe metamodel does not assume data is passed between components in files, but it is consistent with this coarse–grained approach to integration and does not support time–step integration. This is a reflection of the difficulties encountered in assembling risk analyses, which tend to rely on the coarse—grained integration of existing components at the level of system simulation.
Status and availability
Work under FLOODsite has taken the conceptual developments made in earlier projects and built a prototype software system. Considerable additional work will be needed to convert this into a robust tool ready for use by end users. Since it may already be of interest to software developers it is available at the Reframe web site under the GNU Affero Public Licence, a Free Software licence designed for server software.
This work will be carried forward in Phase 2 of the UK Flood Risk Management Research Consortium. Here our focus will not be on developing the full possibilities of Reframe as a general tool, but on building a web based tool with a specific focus on supporting the process of scenario design and “optioneering”. This will be implemented using Reframe technology, which will be further developed as necessary.
Likely developments include:
- Improvements in basic functionality and robustness.
- Additional examples and test cases.
- Extended data visualisation functionality.
Developing the viewer demonstrated in the screencast linked above into an interactive user interface is a longer term project, as is utilising the formal structure of the Reframe metamodel to provide services such as:
- Logically checking the compatibility of different modelling components, and conversely
- Automatically suggesting appropriate transformations where incompatibilities exist.
- Ensuring that regression models are not used outside their calibration ranges.
- Propagation and combination of metadata encoding high level information about model scale, complexity and credibility.
Hamish Harvey, Roger Peppé and Jim Hall (2008) Reframe: a software system supporting flood risk analysis. Intl. J. River Basin Management 6(2) pp. 163—174