hcsampler.cpp

来自「该算法是张青复与周爱民的基于RM-MEDA算法的程序」· C++ 代码 · 共 31 行

CPP
31
字号
// HCSampler.cpp

#include <algorithm>
#include "HCSampler.h"
#include "Random.h"

namespace az
{

namespace alg
{
	void LHC(std::vector< std::vector<double> >& rand, std::vector<double>& low, std::vector<double>& upp)
	{
		unsigned int i,j;
		for(i=0; i<rand.size(); i++) 
		{
			for(j=0; j<rand[i].size(); j++) rand[i][j] = low[i] + (upp[i]-low[i])*(j+rnd::rand(0.0,1.0))/double(rand[i].size());
			std::random_shuffle(rand[i].begin(), rand[i].end());
		}
	}

	void Uniform(std::vector< std::vector<double> >& rand, std::vector<double>& low, std::vector<double>& upp)
	{
		unsigned int i,j;
		for(i=0; i<rand.size(); i++) for(j=0; j<rand[i].size(); j++) rand[i][j] = rnd::rand(low[i],upp[i]);
	}

} //namespace alg

} //namespace az

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?