Skip to main content

Uncertainty Quantification

Uptimai Uncertainty Quantification builds the complete surrogate mathematical model of the solved problem. Unlike the preliminary analysis, it allows performing the full study of dependencies of output values on uncertain inputs, not only sensitivities to input variables. On the full model, it is possible to prepare the complete set of visualisations of these dependencies and walk in detail through all statistical characteristics of the model. It also allows statistics-based optimization, in which results are again delivered in the form of easily readable graphics, giving the user straightforward hints for increased performance in a range of e.g. operational and environmental conditions, or manufacturing tolerances. The Uncertainty Quantification method will call for outputs corresponding to specific combinations of input parameters, thus, it is intended to work in connection to engineering computational codes etc.

How to use the interface#

Figure 1 shows the initial screen of the Core Solver Setup GUI. The strip on the top of the window is common for all methods. From the left, at first, it informs the user about the setup file which is being processed. Then, there are three tabs of solver settings:

  • Input Files : Here the user selects the set of inputs to be used and sees the list of corresponding files
  • Cases/Outputs : The setup for the selected method and each solver run
  • General Setup : The user can define the names of model result files as well as computational resources reserved for the Uptimai Solver
Figure 1: Core solver setup - Input Files tab for UQ method

The control panel on top then continues with the About button with the menu dedicated to accessing the link to this document (Help), contacting Uptimai company to get the support (Company), and showing the information about the currently installed version of the program (Version). The Close button ends the preparation of the current setup (also with the option to discard the data), and the Save setup button stores all changes into the *.json file. Also, there are ? icons on the solver setting tabs showing quick reference to the corresponding entry field or feature.

Input Files#

The left section of the screen contains the general information about the Selected input. There is its name together with the Method to be used in the Uptimai Solver (in this case the Uncertainty Quantification) that was identified automatically from files of the selected input. The user can change the set of inputs (together with the method, eventually) from the list of Available items below.

When going through the list of available sets of inputs, the program shows their details in the right section of the GUI window. To choose a particular set of inputs as the currently selected one, double-clicking or confirmation with the Select this input button is required. When the reviewed input is the selected one, the aforementioned button is disabled and informs the user that This is the selected input.


Here the user defines solver options for all cases in the current setup. Cases are listed in the left section of the program window, as seen in Figure 2. It is possible as many cases as needed, the Uptimai Solver will process them in the order prescribed by the list. The position of each case in the list can be changed by ist mouse-dragging by its = symbol. Clicking the X icon of the item will remove the case from the list. Other cases can be added to the list via the + Add case below the list.

Figure 2: Core solver setup - Settings of Cases/Outputs for UQ method

Cases in the list have generic names based on the project output which should be solved in the model. Clicking a list item highlights it in the list and the corresponding individual settings are shown in the right section of the window. The corresponding case number can be seen also on top of the right section of the GUI to ensure users with on which case they work. The top of the right section also contains the entry field where the Output to run is set. In other words, it is the column of the result matrix to be evaluated by the Uptimai solver.

Number of outputs

The Uptimai solver checks automatically the total number of outputs in the matrix of results by counting the number of columns. Be sure you are not calling the output number out of the existing range of columns in the matrix of results!

In the Method options below is the list of Setup entry fields, drop-down menus, or switches that are available for the Uncertainty Quantification method. Each entry field Value has to comply with the prescribed Allowed range. Options to be set are:

  • Global residual : This number represents the relative residual, which is set for the mean value of the variance of results. The algorithm iterates until the residual is achieved for both observed values, i.e.: the mean value and the variance.

  • Test scheme for higher order interactions : The scheme for higher order interactions tests the selected increment with few samples. The increment functions with no influence are deselected from the final model and the number of samples is reduced.

    To reduce the number of function calls it is suggested to keep this option on.

  • Prediction residual scheme : The selection of important increment functions is driven by the prediction residual scheme. Currently, there are two schemes implemented. The Percent scheme measures the percentual influence of the selected increment function against all increment functions. The Distance scheme takes individual input distributions into account and measures the statistical influence of the neglected increment functions, i.e. what is the statistical effect of neglected increment functions on the overall result.

    The Percent scheme is more suited for problems where users want an accurate model over the whole stochastic domain. However, for large-dimensional spaces (15+), the Percent scheme is very conservative and leads to a large number of required samples. The Distance scheme is coupled with the input distribution types. Thus, it is more suitable for real-world problems.

    It is suggested to use the Distance scheme by default.

  • Sampling scheme for prediction algorithm : Positioning the number of test samples for the prediction scheme (the scheme that selects important increment functions) that affects robustness and efficiency. Currently, three schemes are implemented. The first scheme takes two positions on the boundaries of the stochastic domain, the second scheme takes only one position on the boundary of the stochastic domain and the third scheme takes three positions on the boundaries of the stochastic domain.

    The first scheme was found to be the most robust vs. efficient. It works well for all the problems including problems with limited randomness, e.g. simulations with explicit FEM codes, DSMC simulations, etc. The second scheme is used when the problem is simple, with null randomness (pure deterministic solution) and one wants to limit the number of expensive computation calls. The third scheme is very robust since it uses three positions to test the influence of each increment function. This scheme should be used if a large portion of randomness is expected in the external code or measurements.

    It is suggested to use the prediction scheme 1 by default.

  • Regions of minimum/maximum : Enable Regions of minimum/maximum to be computed. This process takes place at the end of each Uptimai Solver run. With this option off, the Regions of minimum/maximum feature is not available for the postprocess.

  • Maximum increment order : The maximum increment order sets the maximum allowed order of increment functions in the model, higher order increments will be disqualified from the computation. One can use this option to force the Uptimai Solver code to stop at a prescribed order and make the convergence process faster. E.g. users do not need to see interactions of inputs, thus, they set the maximum increment order to 1. However, the post-process convergence check is disabled if the maximum order is reached.

    It is suggested to let the code select the maximum order and therefore set the maximum increment order to 0.

  • Progress iterative store file : Enables storing the current progress of the learning algorithm, which can be restored in case of an unexpected collapse of the code. Loading the progress from a file may significantly decrease the overall wall-clock time of the repeated learning process.

    The existing progress iterative file has to be deleted when the settings of the learning process are changed. Uptimai Solver will not proceed from the progress iterative file which is incompatible with the current setup!

General Setup#

The management of project results files and computer resources reserved for the Uptimai Solver is defined in the General setup tab.

Figure 3: Core solver setup - General setup of the Core Solver

In the Pipeline section on the left can the user adjust the names of files where all results received from the solver run are stored. Iterative store file name sets the prefix for the *.itr file which holds data values of all samples already collected from a third-party software. The default basename is set as <project_name>. Store file name sets the naming convention for the final resulting file produced by the Uptimai Solver. This *.upst contains the set of statistical results suitable for analysis in the Uptimai Postprocessor. The default basename is proposed as the <project_name> followed by the <setup-file_name>, the number of the output being solved, and the number of the currently processed case. For reference, see the default name of the result file of the project shown in Figure 3, where the second output was solved as the first case according to the solver setup:


The name of the *.upsi file with the surrogate model suitable for processing through the separate Interpolant tool is composed in the same way. The main goal of the proposed convention is to give a hint to the user on how to match the project files with particular settings of the Uptimai Solver just from the look into the file explorer.

The Core Solver section on the right of the window is about the number of CPU cores used by the Uptimai Solver when working. The Multiprocessing switch allows more than one core to be used in the first place. In such cases, the Use cores drop-down menu is enabled where the user can specify the number of cores dedicated to the Uptimai Solver. Besides arbitrary setting the Custom number of cores to be used in a separate entry field, there are two other options in the menu. All allows the solver to use all cores present in the system, while the All-1 option leaves one additional core free for other tasks. The suggested approach is to choose All-1 by default.

The Save setup button at the bottom of the GUI window saves the current setup directly under the existing name into the project directory. The button Save setup as ... opens the file dialogue allowing the user to change the file name and the path of the setup file.