Posted Sat, 22 Nov 2014 02:03:44 GMT by Sarah Alloisio Hydrogeologist
Hello All,

I would like to know whether FePest supports null space Monte Carlo analysis through the user interface, and if so, the parallelization of the MC analysis can also be set up within the FePest interface.

Many thanks!
Posted Wed, 26 Nov 2014 15:48:15 GMT by Carlos Andres Rivera Villarreyes Global Product Specialist - FEFLOW
Dear Sara,

Coincidentally, this was one of our topics last week in the FePEST Training course in Vancouver :-).

Indeed, you could carry out the task of Null Space Monte Carlo with FePEST. However, we need few steps in the command line still.
I could suggest the following workflow:

1) Set-up your project in FePEST and include all the slaves definitions already. Notice that PEST documentation recommends to avoid regularization settings for the Null Space Monte Carlo.

2) Go to Estimation - Open work folder in console window.

3) Run PEST utilities named [b]RANDPAR[/b] and [b]PNULPAR[/b]. They are very easy to use, you could take a look on the PEST documentation about this. The results from this utilities will be a set of parameter files (*.PAR). The total number of files depends on the number of realizations indicated. RANDPAR creates random parameter distributions and PNULPAR sub-divides the random realizations in calibration space and null space. So what you get here is a set of "almost calibrated" parameters.

4) Now the difficult task is to run each parameter realization. Since these PNULPAR-generated parameters are [i]"almost calibrated"[/i], you may need to one or two PEST iteration cycles.

5) Sometimes even a more simplified way, it would be to run one single model run per realization. If this is the case, FePEST can help you directly from the graphical interface to launch all the mode runs together with BeoPEST. This is only possible if you use the new PEST version 13.2, which contains a special /f-switch. This PEST version is not still distributed with PEST Utilities package from our website, but you could look on the pest homepage website.

If additional details are needed, I will try to post a most extensive description.

Cheers,
Carlos




Posted Fri, 16 Jan 2015 16:37:34 GMT by Justin Little
[quote author=Carlos Rivera link=topic=2305.msg5260#msg5260 date=1417016895]

4) Now the difficult task is to run each parameter realization. Since these PNULPAR-generated parameters are [i]"almost calibrated"[/i], you may need to one or two PEST iteration cycles.

5) Sometimes even a more simplified way, it would be to run one single model run per realization. If this is the case, FePEST can help you directly from the graphical interface to launch all the mode runs together with BeoPEST. This is only possible if you use the new PEST version 13.2, which contains a special /f-switch. This PEST version is not still distributed with PEST Utilities package from our website, but you could look on the pest homepage website.

If additional details are needed, I will try to post a most extensive description.

Cheers,
Carlos
[/quote]

Could you please expand on points number 4 and 5?  Aside from parallelization, how does one use the FePest interface to iteratively go through each realization, run the model with the randomly generated parameters, and save the results? 

Thank you.
Posted Mon, 19 Jan 2015 09:47:00 GMT by Carlos Andres Rivera Villarreyes Global Product Specialist - FEFLOW
[list]Hi,

Based on the number of singular values for a specific problem, PEST and its utilities are able to distinguish between solution parameters and null-space parameters. We use RANDPAR to create random realizations of parameter distributions based on some prior knowledge (i.e. PEST uncertainty file). However, it may be the case that RANDPAR-generated parameters are far away from a calibrated status. That is the reason to use PNULPAR utility, which gets close to a status of “quasi-calibrated” parameters. Since they are not “fully” calibrated yet, we need to optimize each realization. That means if you have for example 500 parameter distributions, after optimizing each set you will obtain 500 calibrated models.
If the total number of parameters is significant per each realization set (i.e.  pilot points).  You can take advantage of the SVD-Assist methodology in PEST. For this task, you need to run for each parameter realization the utility SVDAPREP, which prepares automatically all the files needed before SVD-Assist. Then launch a PEST run with SVD-Assist for each realization.

The second workflow is easier. Let’s say you believe that all parameter realizations are close enough to a “calibrated” stage, and then you may only want to take a single model run for each realization.  This task can be easily carried out by using the new version of PEST and BeoPEST (already available in PEST homepage) and the FePEST interface. The new PEST version contains a /f-switch to launch multiple parameter files (*.PAR) in parallel model. The workflow is the following:

[list]
[li]In FePEST version 6.2, you need to make sure that the new PEST/BeoPEST executables are defined in the interface (Tools -> Option menu), before creating any PEST input file.  [/li]
[li]Open the [color=red][b]run_pest.bat[/b][/color] created by FePEST and edit the end of the following line:
[i] "C:\Program Files\beopest\beopest64.exe" "MonteCarlo.pst" /H :4052 [b][color=red]/f < "pest.in"[/color][/b][/i][/li]
[li]Create the “pest.in” file as follows: root-name of *.PAR files, initial/final number of parameter realizations and output file.
[color=blue][i]Filename
1
500
500
ResultTable.rrf[/i][/color]
[/li]
[li]Go back to the FePEST interface and run PEST without creating again the files.[/li]
[/list]


[/list]
Posted Thu, 07 May 2015 11:34:05 GMT by Usman
Hi Carlos,

Can you please briefly explain the procedure to setup MC analysis in FEFPEST? Do we need to calibrate the model first. I am using pilot points with Tikhnov regularization for optimization. Then with optimizied parameters we need to setup MC or there is different work flow. Please write clearly because it would be interesting for many on this forum.

Kind regards
Posted Tue, 19 May 2015 12:31:02 GMT by Carlos Andres Rivera Villarreyes Global Product Specialist - FEFLOW
Dear Usman,

The Null Space Monte Carlo approach has several variants (conceptually), which may be complicated to explain full details here. For example you could make the analysis with an uncalibrated model (i.e. pre-calibration approach) or after the calibration is done (post-calibration approach). If you are interested in more background, you can get some insight on the philosophy from the now available PEST Book (http://www.pesthomepage.org/PEST-The_Book.php).
You can take PEST out of its box with some help of FePEST. In the next release FEFLOW 7.0, the methods are fully incorporated and straightforward.
For Instance, you could calibrate your model constrained by a Tikhonov regularization and quite-probably using any other device (e.g. such as SVD-Assist). On the basis of the calibrated model, generate parameters as explained below (or other post) using RANDPAR & PNULPAR and finally evaluate the predictive uncertainty from the results of all the realizations.

Regards,
Carlos

You must be signed in to post in this forum.