SEAN

Principle author: Ondřej Slowik
Co-authors: David Lehký, Drahomír Novák, Lukáš Novák
Institute of Structural Mechanics, Faculty of Civil Engineering, Brno University of Technology, Czech Republic
e-mail: slowik.o(zavinac)fce.vutbr.cz


Basic information

SEAN (SEnsitivity ANalysis) is a software for performing sensitivity analysis, which is a crucial step in computational modeling and assessment. Through sensitivity analysis we gain essential insights into the behavior of computational models, their structure and their response to changes in model inputs. SEAN utilizes FReET [1] software as the simulation processor and significantly extends possibilities of model definition and subsequent sensitivity analysis in a user-friendly way. The environment was developed in C++ using Qt framework [2].

Three types of sensitivity analysis methods were implemented in SEAN software:

  1. Spearman's nonparametric rank-order correlation method;
  2. sensitivity analysis in terms of coefficient of variation and
  3. perturbation method.

Spearman's nonparametric rank-order correlation method is based on the assumption that the random variable which influences the response variable most considerably (either in a positive or negative sense) will have a higher correlation coefficient than the other variables. Nonparametric correlation is more robust than linear correlation and more resistant to defects in data. It is also independent of probability distribution.

When using sensitivity analysis method in terms of coefficient of variation the ratio between the partial coefficient of variation of resistance and the coefficient of variation of a selected basic variable is calculated for a case in which the selected random variable is the only one treated as random in the simulation process.

The perturbation method produces sensitivity analysis results based on the assessment of the effect of input perturbation in each input on the model output. The proper adjustment of the values of each explicative variable while keeping all the others unchanged allows the effect of the output variables corresponding to each perturbation in the input variable to be recorded. The result of sensitivity analysis is yielded by ranking the effect on model output induced by the same manner of perturbation in every input variable. The input variable whose perturbation influences the output most possesses the highest sensitivity or importance.

A detailed description of all three methods can be found in user's manual [3] and in journal papers [4-5].

Workflow

Program SEAN is based on visual scripting GUI concept and is composed of Chart scene, blocks, ports and connections, see Fig. 1. The Chart scene allows to move around, zoom and place Blocks encapsulating given methods.

The Block is the base graphic proxy widget for a single method definition with various information and child widgets accommodated within the body. They allow displaying dialogues with detailed information about methods parameters and their settings. Based on its purpose, Block hold positions and numbers of input and output Ports corresponding to required input and output data information.

The Ports are responsible for data transfer from the outer signal into Block and encapsulated methods and for sending the information out of Block in a proper format. Input Ports allows connecting only one connection in order to prevent mixing of data. All input Ports need to have plugged connection in order to run analysis (no unplugged inputs are allowed). Output Ports allows sending data to an unlimited number of connections. Ports also define its graphical interpretation (and behaviour) within Chart scene. Block and its Ports form Node of a given method/methodology.

The Connection forms the link between input and output Ports. It defines the direction of data flow during analysis. The connection also holds information of its graphical representation and behaviour within Chart scene.

SEAN 1

Fig. 1: The basic components of the SEAN graphical environment

Within the Chart scene user defines the scripts to be executed by connecting output and input ports of the blocks. The methods encapsulated within the Blocks are controlled via dialogues holding inner settings of the Blocks. Each Block has input ports on the left side and output ports on the right side. Outputs might be connected to multiple inputs, while each input might be connected to only one output. The mutual conncetion defines datastreams during the analysis.

Graphical User Interface

1) Main window

GUI of SEAN is based on standard QMainWindow class in order to ensure basic dialog functionality necessary for possible further implementation of SEAN within another software solution. The main body of applications GUI is depicted in Fig. 2. The main window contains the main Graph widget with the Chart scene. The new Block can be added to the Chart scene by selecting one of the available blocks. Buttons Start Analysis and Reset Analysis are used to start the analysis of created scripts and reset data in case of script modifications after analysis.

SEAN 2

Fig. 2: Main program window and the menu for the Block insertion

2) Sensitivity analysis block

At least one Sensitivity Analysis block needs to be present within the Chart scene. It is a basic interface between FReET simulation processor and analysed model. Its main purpose is to define the stochastic model and setup basic parameters of the sensitivity analysis method. Fig. 3. top shows the sensitivity block after insertion into the scene. The block contains the button Setup source data which invokes dialogue with the inner setting of stochastic model and combo-box for selection of the sensitivity analysis method, see Fig. 3 bottom.

SEAN 3a

SEAN 3b

Fig. 3: Sensitivity analysis block (top) with selection of the sensitivity method (bottom)

When the desired sensitivity analysis method is selected, the new sheet is added next to Graph sheet widget containing the chart scene. This sheet is named according to corresponding sensitivity analysis method and includes the results of the performed analysis. See Fig. 4 showing the table of results for CoV sensitivity analysis.

SEAN 4

Fig. 4: Table with the results of CoV-based sensitivity analysis

2) Solver block

Solver block represents a function from mathematical point of view. Two types of solver block are available in SEAN: (1) Expression evaluator and (2) DLL evaluator.

Expression evaluator allows user to prescribe mathematical expression to be applied to set of input parameters. Current version utilizes muparser 2.2.5. This powerful library enables to parse typed mathematical expression. User is not required to define variables before usage within expression. Utilized implementation analyzes expression and directly identify input variables and generate proper set of Ports. Implemented solution also allows to use complete set binary operators including logical ones and ternary if-then-else type operator can also be utilized as constant emitter which does not require input parameters. Fig. 5 shows the inner dialogue for setting of the Expression evaluator.

SEAN 5

Fig. 5: The inner control dialogue of Expression evaluator

Dynamic-link library evaluator represents another type of implemented solver. It allows the user to load generally defined problem represented by dynamic-link library functions. The prescribed structure of utilized DLLs corresponds to the definition recommended for libraries utilized within FReET software. Any function/routine mapping values based on the vector of input parameters might be implemented within the DLL. Fig. 6 shows the inner dialogue of DLL Evaluator.

SEAN 6

Fig. 6: The inner control dialogue of DLL Evaluator

A more detailed description of the whole procedure can be found in SEAN user's manual [3].

Application

SEAN software will be primarily used within the ongoing research project (TAČR). It is designed to be used as an independent software but it will also be combined together with other software tools developed within the project providing complex software system for advanced reliability and lifetime assessment of large concrete infrastructure.

Acknowledgment

SEAN software was developed with the financial support provided by Technology Agency of the Czech Republic under the project Delta No. TF06000016.

References

[1] Novák, D., Vořechovský, M., Teplý, B. FReET: Software for the statistical and reliability analysis of engineering problems and FReET-D: Degradation module. Advances in Engineering Software, 2014, URL www.freet.cz.
[2] The-Qt-Company: Qt. URL www.qt.io.
[3] Slowik, O, Lehký, D., Novák, D., Novák, L. SEAN Program Documentation – Theory and user's guide. Institute of Structural Mechanics, Faculty of Civil Engineering, Brno University of Technology, 2020
[4] Lehký, D., Pan, L.X., Novák, D., Cao, M.S., Šomodíková, M., Slowik, O. A comparison of sensitivity analyses for selected prestressed concrete structures. Structural Concrete, 20, 2019, 38–51.
[5] Pan, L.X., Novák, L., Lehký, D., Novák, D., Cao, M.S. Neural network ensemble-based sensitivity analysis in structural engineering: Comparison of selected methods and the influence of statistical correlation. Computers and Structures, 242, 2021, 106376.

Availability

For information on how to obtain the SEAN software, please contact the author.