基于多保真方法来估计方差和全局敏感度指数分析(Matlab代码实现)_基于方差的敏感性分析-程序员宅基地

技术标签: matlab  数学建模  物理应用/数据驱动  开发语言  

个人主页:研学社的博客 

欢迎来到本博客️️

博主优势:博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

座右铭:行百里者,半于九十。

本文目录如下:

目录

1 概述

2 运行结果

3 参考文献

4 Matlab代码实现


1 概述

本文实现了多保真方法来估计方差和全局敏感度指数。当模型具有不确定的输入时,模型输出也是不确定的。基于方差的全局敏感性分析通过将总方差除以由于每个输入和输入之间的相互作用而产生的方差百分比来量化每个不确定输入对输出的相对影响。

主要和总效应敏感性指数可以使用蒙特卡罗估计来估计。为了估计d输入的主效应敏感性指数和总效应敏感性指数,需要对每个蒙特卡罗样本进行(d+2)函数评估,以便在模型昂贵且d较大时,蒙特卡罗估计可能非常昂贵。我们提出了多保真估计器,它将使用昂贵模型计算的一些高保真样本与使用更便宜的代理模型计算的许多低保真样本相结合,以产生固定计算预算的方差估计低于单独使用高保真模型获得的方差估计,同时保持高保真估计的准确性。

2 运行结果

 

部分代码:

%% SETUP
clear
addpath('../mfgsa')
samples = load('samples.mat');  % load pre-computed samples for bootstrapping

d = 5;                          % dimension of uncertain input

% function definitions that bootstrap from precomputed function outputs
fcns{1} = @(Z) deal(samples.yA(Z,1), samples.yB(Z,1), squeeze(samples.yC(Z,1,:)));
fcns{2} = @(Z) deal(samples.yA(Z,2), samples.yB(Z,2), squeeze(samples.yC(Z,2,:)));

w   = [1.94; 6.2e-3];       % assign model weights/costs
vec = [2 2];                % says that functions are bootstrapping

budget      = 1000*60;       % minutes times seconds

%% COMPUTE MULTIFIDELITY GLOBAL SENSITIVITY ANALYSIS REPLICATES
n_reps = 100;    % number of replicates 
estim  = 'Saltelli'; % which estimator to use -- 'Owen' or 'Saltelli'

% allocate storage
avg   = zeros(n_reps,2);    vr    = zeros(n_reps,2);
mc_sm = zeros(n_reps,d);    mc_st = zeros(n_reps,d);
mf_sm = zeros(n_reps,d);    mf_st = zeros(n_reps,d);

for n = 1:n_reps
    % estimate model statistics using small pilot sample
    stats = estimate_statistics(fcns,10,vec);
    
    % call mfsobol.m with just the high-fidelity model to get Monte
    % Carlo estimate
    [sm,st,mu,sigsq] = mfsobol(fcns(1),d,w(1),stats,budget,vec(1),estim);
    avg(n,1) = mu; 
    vr(n,1) = sigsq;
    mc_sm(n,:) = sm;
    mc_st(n,:) = st;
    
    % call mfsobol.m with full array of functions to get multifidelity
    % estimates
    [sm,st,mu,sigsq] = mfsobol(fcns,d,w,stats,budget,vec,estim);
    avg(n,2) = mu; 
    vr(n,2) = sigsq;
    mf_sm(n,:) = sm;
    mf_st(n,:) = st;
end

3 参考文献

部分理论来源于网络,如有侵权请联系删除。

[1]Xuhui Meng and George Em Karniadakis. A composite neural network that learns from multi- fidelity data: Application to function approximation and inverse pde problems. Journal of Computational Physics, 2019.
[2]Mohammad Motamed. A multi-fi delity neural network surrogate sampling method for uncertainty quanti fication. 2019.

4 Matlab代码实现

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_46039719/article/details/128553692

智能推荐

Virtualbox源码分析11 CPU manager3:CPUID_uebx-程序员宅基地

文章浏览阅读1.5k次。这一章里,介绍模拟CPUID和CPU寄存器访问11.1 GuestOS CpuId/MSR初始化cpumR3InitCpuIdAndMsrs在CpumInit()函数里调用int cpumR3InitCpuIdAndMsrs(PVM pVM, PCCPUMMSRS pHostMsrs){ // 读取配置 CPUMCPUIDCONFIG Config; cpumR3CpuIdR..._uebx

Centos7 yum 阿里源报错Failed connect to mirrors.aliyuncs.com:80; 拒绝连接_yum centos 阿里云源 失败-程序员宅基地

文章浏览阅读802次。原因是由于非阿里云ECS用户无法解析主机“mirrors.cloud.aliyuncs.com”链接:https://www.jianshu.com/p/5a419d835194。只需将CentOS-Base里包含aliyuncs.com的行删除即可。商业转载请联系作者获得授权,非商业转载请注明出处。_yum centos 阿里云源 失败

GBT51259-2017腈纶设备工程安装与质量验收规范-程序员宅基地

文章浏览阅读190次。1、压力管道的现场制作安装应符合国家现行标准《压力管道规范 工业管道 第4部分:制作与安装》GB/T 20801.4 和《压力管道安全技术监察规程--工业管道》TSG DOO01的有关规定;绝热工程安装和质量验收应符合现行国家标准《工业设备及管道绝热工程施工规范》GB 50126 和《工业设备及管道绝热工程施工质量验收规范》GB 50185 的有关规定。现场设备管道的安装与验收应符合现行国家标准《工业金属管道工程施工规范》GB 50235 和《工业金属管道工程施工质量验收规范》GB 50184的有关规定。

查验身份证号(C语言)_c语言身份证前六位检验代码-程序员宅基地

文章浏览阅读240次。【代码】查验身份证号(C语言)_c语言身份证前六位检验代码

C++ vector 初始化使用笔记_初始化vector数组-程序员宅基地

文章浏览阅读637次。vector 初始化_初始化vector数组

JAVA多线程详解(超详细)-程序员宅基地

文章浏览阅读1w次,点赞12次,收藏51次。程序:开发写的代码称之为程序。程序就是一堆代码,一组数据和指令集,是一个静态的概念。进程(Process):将程序运行起来,我们称之为进程。进程是执行程序的一次执行过程,它是动态的概念。进程存在生命周期,也就是说程序随着程序的终止而销毁。进程之间是通过TCP/IP端口实现交互的。线程(Thread):线程是进程中的实际运作的单位,是进程的一条流水线,是程序的实际执行者,是最小的执行单位。通常在一个进程中可以包含若干个线程,当然一个进程中至少有一个线程。线程是CPU调度和执行的最小单位。注意。_java多线程

随便推点

关于重装系统后开始菜单栏anaconda3文件夹消失问题的解决办法_开始菜单没有anaconda3-程序员宅基地

文章浏览阅读2.6k次。关于重装系统后开始菜单栏anaconda3文件夹消失问题的解决办法问题描述:初次安装成功,各项功能都可正常使用。重装系统后想要使用anaconda prompt安装扩展包,却发现连anaconda文件夹都没有。解决过程:查看了其他人的解决办法,大致有以下几种:1.python .\Lib\_nsis.py mkmenus2.conda update menuinstconda install -f console_shortcut ipython ipython-notebook ipython-_开始菜单没有anaconda3

signature=82fc81989e4b7cdba7f16c3353e0437e,英语翻译=E5=B0=8A=E6=95= =AC=E7=9A=84=E7=A5=9D=E5=85=88=E7=94...-程序员宅基地

文章浏览阅读708次。=E3=80=80=E3=80=80=E6=89=BF=E8=92=99=E8=B4=B5==E5=85=AC=E5=8F=B8=E5=AF=B9=E6=9C=AC=E4=BA=BA=E7=9A=84=E4=BF=A1=E4=BB=BB=E4==B8=8E=E9=82=80=E8=AF=B7=EF=BC=8C=E8=B0=A8=E8=A1=A8=E4=B8=87=E5=88=86=E6=84==9..._8b=e9=9d

解决IDEA的Range [0, 3) out of bounds for length 2错误-程序员宅基地

文章浏览阅读1.4k次。idea显示Range [0, 3) out of bounds for length 2_range [0, 3) out of bounds for length 2

555定时器-程序员宅基地

文章浏览阅读431次。定时器是一种多用途的数字-模拟混合集成电路,可极方便的构成施密特触发器、单稳态触发器和多谐振荡器,其简化原理图及引脚定义如下所示3个绿色电阻,电阻值为5K;2个黄色和粉色比较器;1个紫色SR触发器;1个蓝色放电三极管引脚定义PINNAMEI/O1GNDGround2TRIGITRIG _555定时器

下列哪一个是c语言中不合法的变量,C语言程序设计(山东联盟)-程序员宅基地

文章浏览阅读2.1k次。第一章 单元测试1、问题:01110011:流程图中用下列哪一个图形符号表示判断?()选项:A:矩形框B:菱形框C:平行四边形框D:圆形框答案: 【菱形框】2、问题:01110021:流程图中用下列哪种图形符号表示事情处理过程的开始?(选项:A:圆括号矩形B:矩形C:箭头D:圆圈答案: 【圆括号矩形】3、问题:01110031:流程图中用于描述输出的是下列哪一个图形符号?选项:A:矩形框B:菱形框..._c语言不合法的变量

Linux下部署Mysql_linux 部署mysql-程序员宅基地

文章浏览阅读441次。目录概述环境说明准备内容部署步骤(部分步骤可忽略)概述本文介绍在Linux下部署Mysql的详细步骤,以供参考。环境说明OS Version:CentOS Linux release 8.1.1911 (此为发行版本)Linux下查看系统版本命令查看系统发行版本:cat /etc/redhat-release查看系统内核版本:uname -a准备内容Linux文件命令行工具Xshell 4下载地址链接:https://pan.baidu.com/s/1yBHjFQeD5IxOl_linux 部署mysql

推荐文章

热门文章

相关标签