A software environment for performing parametric computer simulations in dependability engineering
In carrying out its work, the IRSN performs many computer simulations in order to investigate all the possible scenarios associated with a given situation. Running and analysing such a large number of simulations requires parametric modelling software incorporating a high degree of traceability, quality and ergonomics.
The Prométhée software environment was designed to meet this demand. The software includes an ergonomic graphical user interface to facilitate the control and operation of the computer codes via the network. Functions include:
- Remote execution of calculations on servers or clusters running the computer codes, regardless of their operating system or load manager.
- Setting the input parameters of the computer codes in order to limit the risks of error associated with this repetitive task.
- Dynamic distribution and parallel processing of calculations over all available computing resources.
- Archiving and traceability of all computations performed.
- Resistance to network faults.
In addition to these basic management functions, Prométhée includes a set of specific algorithms. These include uncertainty modelling and the optimisation of computational sequences for enhanced dependability. It is also possible to carry out the following operations:
- Sensitivity analysis of the simulation input parameters and ranking of these parameters according to their impact on the output from the computer code.
- Propagation of the uncertainties associated with each of the input parameters throughout the computation process.
- Identification of a specific safety configuration, such as a minimum or maximum value, by iterating the calculation points.
The inclusion of these algorithms provides a wider view of the macroscopic behaviour of the model, enabling the most appropriate computer codes to be run from a safety point of view.
Linking to the computer codes
Prométhée may easily and quickly be linked to a new computer code by means of a set of software links. The degree of linking may vary as required:
A basic level of integration may be achieved quickly (in around two man-days) without requiring any knowledge of a high level language.
A more advanced level of integration enables a more in-depth management of inputs and outputs to and from the code, together with real time monitoring of the progress of the simulations.
Integration using the [R] language
Prométhée makes use of a programming language that is widely used by the scientific community working with applied mathematics. See
As well as having been adopted by the research community, this language is also used by many regulatory organisations, including the US Food and Drug Administration (FDA), for clinical trials. It is therefore very easy to integrate algorithms developed and validated by the scientific community into Prométhée, which can then be applied to the computer codes linked to Prométhée.
The IRSN is participating actively in the development of some of these algorithms in the field of Computer Experiments, initially as part of its collaboration in the Dice consortium, and now as part of the Redice consortium.
Deployment of computational resources
Certain aspects of the Prométhée modelling environment may be compared with traditional intensive processing queue managers such as SGE, PBS and LSF, all of which can either be replaced by or run within Prométhée. However, the dynamic nature of the Prométhée load manager makes it also possible to manage heterogeneous and changing sets of computations.
In order to perform a given set of computations, Prométhée can bring together independent servers, clusters (via their own queue manager if necessary), work stations, and PCs running Windows, MacOS, Linux, Solaris, or other operating systems. Prométhée can even make use of virtual servers.
A Linux virtual server has been developed to run on a Windows PC in this way. Based on the open source coLinux project, the Prométhée grid can run simulations written for Linux completely transparently on these PCs. One example of a project that has adopted this ‘portability’ solution is the Cristal project in which it is used to execute the Apollo, Moret and Tripoli codes on a Windows PC with no access to any traditional Unix servers.
A new computational resource may be added to the Prométhée simply by executing a service describing the computer codes available to the user network addresses. Administrator rights are not required.
The Prométhée graphical interface then communicates via the network and issues computation instructions to the various available services in real time.
Prométhée is distributed free of charge.