91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 4.95KB
    文件類型: .cpp
    金幣: 1
    下載: 0 次
    發布日期: 2021-03-27
  • 語言: C/C++
  • 標簽: c??

資源簡介


實現的是基本差分進化算法,輸入種群大小,進化代數,交叉因子,縮放因子,就可輸出結果

資源截圖

代碼片段和文件信息

/*DE_test
?*對相應的Matlab程序進行測試
?*/

#include?
#include?
#include?
using?namespace?std;

//產生隨機數,隨機數為(0.0,1.0)
double?Rand_Double(void)
{
return?static_cast(rand())?/?static_cast(RAND_MAX);
}

//測試函數Hansen
//參數個數為2??維數為2
double?Hansen(double?*p_pars)
{
return?(?cos(1.0)?+?2.0*cos(p_pars[0]+2.0)?+?3.0*cos(2.0*p_pars[0]+3.0)?
+?4.0*cos(3.0*p_pars[0]+4.0)?+?5.0*cos(4.0*p_pars[0]+5.0)?)
*?(?cos(2.0*p_pars[1]+1.0)?+?2.0*cos(3.0*p_pars[1]+2.0)?+?
3.0*cos(4.0*p_pars[1]+3.0)?+?4.0*cos(5.0*p_pars[1]+4.0)?+?5.0*cos(6.0*p_pars[1]+5.0)?);
}

class?CFunction
{
public:
void?*m_p_fun;//指向測試函數的指針
int?m_pars_num;//參數個數?空間維數
double?m_min;//下限
double?m_max;//上限
bool?m_pos;//求解最小值還是最大值,如果是最小值則m_pos為false,如果是最大值則m_pos為true
public:
CFunction(void?*p_funint?pars_numdouble?mindouble?maxbool?pos)
:m_p_fun(p_fun)m_pars_num(pars_num)m_min(min)m_max(max)m_pos(pos)
{
}

virtual?double?Compute(double?*p_pars)?=?0;

評論

共有 條評論