对LHS介绍的可以参考:https://blog.youkuaiyun.com/Together_CZ/article/details/90076271
下面是4种分布的matlab程序,包含正态分布,均匀分布, 对数正态分布,extreme type 1。
1.对正态(高斯)分布的变量进行拉丁超立方采样
参考:https://blog.youkuaiyun.com/chichuhe/article/details/89890720#commentsedit
原文还有均匀分布的LHS采样程序。
% 对正态(高斯)分布的变量进行拉丁超立方采样
% 效果不好,可以多运行几次
clc;clear;close all
%设置均值和方差,采样点数
Mu=[3.6e7;3.6e7]; %均值
Sigma=[3.6e6,3.6e6]; %方差
N = 30; % 样本点数目
D = size(Mu,1); % 维数
Covariance_Matrix = zeros(D,D);
for i = 1:D
Covariance_Matrix(i,i) = Sigma(i)^2;
end
UB = Mu + 3*Sigma;
LB = Mu - 3*Sigma; % 取值范围
X = lhsnorm(Mu, Covariance_Matrix, N);
% X = lhsnorm(Mu, Sigma, N);
figure(1)
plot(X(:,1),X(:,2),'*');grid on
title('正态分布的LHS采样')
2.对数正态分布的LHS采样
clc;close all; clearvars;
% 对数正态分布的参数设置
m=20;dist=[3,3];mu=[3.6e7,1.98e8];sigma=[3.6e6,9.9