【MATLAB第109期】基于MATLAB的带置信区间的RSA区域敏感性分析方法,无目标函数

【MATLAB第108期】基于MATLAB的带置信区间的RSA区域敏感性分析方法,无目标函数

参考第64期文章【MATLAB第64期】【保姆级教程】基于MATLAB的SOBOL全局敏感性分析模型运用(含无目标函数,考虑代理模型)

创新点:

1、采用两种方法计算待置信区间的敏感性值

(1)通过对输出值设置阈值条件,绘制不同变量X与Y之间满足和不满足条件样本的累积分布函数(CDF),检查参数变化范围,并根据CDF之间的最大垂直距离绘制敏感度值。并使用自举法重复收敛分析以得出置信区间。

2、 将输入样本拆分为与输出等距范围相对应的"n组"数据集(Wagener等人于2001年首次提出),通过CDF之间最大垂直距离的统计量(最大值或中值)来评估不同数据集中X的CDF之间的距离,计算区域敏感度值。

1、建立代理模型

(1)数据设置:常用的案例数据 ,103*8 ,前7列代表输入变量, 最后1列代表因变量。

(2)数据变量上下限

X1-X7的最小值为:[137 0 0 160 4.4 708 650]

X1-X7的最大值为:[374 193 260 240 19 1049.90 902]

(3)代理模型选择:BP

2、数据抽样

matlab 复制代码
SampStrategy = 'lhs' ; % 拉丁超立方抽样
N = 400 ; % 样本数
Y = model_evaluation(myfun,X) ;

3、阈值设置

绘制输出样本(Y)与输入向量样本的一个分量(即X的一列)的关系,并对输出值设置阈值。

如阈值设置为20,如下图所示 :

X1-X7变量, 横坐标对应的是不同变量的数值范围,纵坐标代表Y的数值范围。

(1)绘制数据集X中满足给定阈值条件和不满足条件的CDF图


(2)通过平行坐标图检查行为参数化的范围

4a、绘制灵敏度指数(带阈值)

(1)参数CDF之间的最大垂直距离绘制

(2)并通过bootstrapping自举法评估鲁棒性,使用越来越多的样本重复计算,以评估收敛性,重复收敛分析以得出置信区间

4b、绘制灵敏度指数(分组法)

将数据集X中的样本拆分为与Y的'ngroup'等距值对应的'nggroups'子集。

然后,它通过CDF之间最大垂直距离的统计量(最大值或中值)来评估不同数据集中X的CDF之间的距离。

(1)将输入样本拆分为与输出等距范围相对应的"n组"数据集

(2)绘制参数CDF,自定义标签和图例:

5、代码获取

1.阅读首页置顶文章

2.关注CSDN

3.根据自动回复消息,私信回复"109期"以及相应指令,即可获取对应下载方式。

相关推荐
bubiyoushang8883 小时前
基于MATLAB的自然图像梯度分布重尾特性验证方案
开发语言·matlab
CappuccinoRose19 小时前
MATLAB学习文档(二十八)
开发语言·学习·算法·matlab
爱敲代码的loopy19 小时前
MATLAB函数全称解析:旋转翻转找数字
开发语言·matlab
chao18984419 小时前
基于BP神经网络的故障分类MATLAB实现
神经网络·matlab·分类
ytttr8731 天前
基于MATLAB实现晶体共晶凝固模拟
开发语言·算法·matlab
ThreeYear_s1 天前
【FPGA+DSP系列】——MATLAB simulink单相PWM全控整流电路基础版
开发语言·matlab·fpga开发
kaikaile19951 天前
基于高斯白噪声与瑞利衰落共同作用的OFDM系统仿真
开发语言·matlab
机器学习之心1 天前
MATLAB基于ELM和DE-NSGAIII的齿盘切削参数优化
matlab·齿盘切削参数优化
jghhh012 天前
基于幅度的和差测角程序
开发语言·matlab
yuan199972 天前
基于MATLAB的单目深度估计神经网络实现
开发语言·神经网络·matlab