BIGUQ performs Bayesian Information Gap Decision Theory (BIG-DT) analysis for Uncertainty Quantification, Experimental Design, and Decision Analysis. BIGUQ is a module of MADS.
import Mads
problemdir = Mads.getmadsdir()
md = Mads.loadmadsfile(joinpath(problemdir, "source_termination.mads"))
nsample = 1000
bigdtresults = Mads.dobigdt(md, nsample; maxHorizon=0.8, numlikelihoods=5)
Mads.plotrobustnesscurves(md, bigdtresults; filename=joinpath(problemdir, "source_termination-robustness-$nsample"))
Mads.plotrobustnesscurves(md, bigdtresults; filename=joinpath(problemdir, "source_termination-robustness-zoom-$nsample"), maxhoriz=0.4, maxprob=0.1)
MADS (Model Analysis & Decision Support) is an integrated open-source high-performance computational (HPC) framework in Julia. MADS can execute a wide range of data- and model-based analyses:
- Sensitivity Analysis
- Parameter Estimation
- Model Inversion and Calibration
- Uncertainty Quantification
- Model Selection and Model Averaging
- Model Reduction and Surrogate Modeling
- Machine Learning and Blind Source Separation
- Risk Assessment
- Decision Analysis and Support
MADS has been tested to perform HPC simulations of a wide range of multi-processor clusters and parallel environments (Moab, Slurm, etc.). MADS utilizes adaptive rules and techniques which allows the analyses to be performed with a minimum user input. The code provides a series of alternative algorithms to execute each type of data- and model-based analysis.
All the available MADS modules and functions are described at madsjulia.github.io
Pkg.add("Mads")
Julia uses git for package management.
To install Julia packages behind a firewall, add the following lines in the .gitconfig
file in your home directory:
[url "https://"]
insteadOf = git://
or execute:
git config --global url."https://".insteadOf git://
Set proxies:
export ftp_proxy=http://proxyout.<your_site>:8080
export rsync_proxy=http://proxyout.<your_site>:8080
export http_proxy=http://proxyout.<your_site>:8080
export https_proxy=http://proxyout.<your_site>:8080
export no_proxy=.<your_site>
For example, if you are doing this at LANL, you will need to execute the following lines in your bash command-line environment:
export ftp_proxy=http://proxyout.lanl.gov:8080
export rsync_proxy=http://proxyout.lanl.gov:8080
export http_proxy=http://proxyout.lanl.gov:8080
export https_proxy=http://proxyout.lanl.gov:8080
export no_proxy=.lanl.gov
In Julia REPL, do the following commands:
import Mads
To explore getting-started instructions, execute:
Mads.help()
There are various examples located in the examples
directory of the Mads
repository.
For example, execute
include(Mads.madsdir * "/../examples/contamination/contamination.jl")
to perform various example analyses related to groundwater contaminant transport, or execute
include(Mads.madsdir * "/../examples/bigdt/bigdt.jl")
to perform Bayesian Information Gap Decision Theory (BIG-DT) analysis.