NANA
| Public 成员函数 | Protected 成员函数 | Protected 属性 | 所有成员列表
NANA::GA::Popultation类 参考

struct  CResult
 记录结果和序号 更多...
 

Public 成员函数

 Popultation (int groupNumber, int mutate)
 
void run (int iterNum)
 迭代多少次 更多...
 

Protected 成员函数

void choose ()
 天择(从种群中选择优秀的个体,认为是存活下来的个体) 更多...
 
void update ()
 更新到下一代 更多...
 

Protected 属性

int m_groupNumber
 种群数量 更多...
 
int m_mutate
 百分之 更多...
 
std::vector< GeneFloat > m_members
 成员 更多...
 
std::vector< GeneFloat > m_oldmembers
 
std::vector< CResultm_result
 上一代的成员 更多...
 
std::list< int > m_lives
 活下来的个体 更多...
 

详细描述

在文件 population.h22 行定义.

构造及析构函数说明

◆ Popultation()

NANA::GA::Popultation::Popultation ( int  groupNumber,
int  mutate 
)

初始化过程,生成不同的基因

在文件 population.cpp22 行定义.

成员函数说明

◆ choose()

void NANA::GA::Popultation::choose ( )
protected

天择(从种群中选择优秀的个体,认为是存活下来的个体)

得分最佳者为国王,其生存不受影响

<前百分之10的个体为贵族,贵族拥有百分之90的存活率

摇筛子,摇出点数为[0-89]则认为存活

摇筛子,摇出点数为[0-69]则认为存活

<作为平民的个体有百分之50的存活率

摇筛子,摇出点数为[0-49]则认为存活

在文件 population.cpp66 行定义.

这是这个函数的调用关系图:

◆ run()

void NANA::GA::Popultation::run ( int  iterNum)

迭代多少次

参数
iterNum

物竞,个体凭借自己的力量获取资源,排名越靠前的个体月去的资源越多

打印当前最优秀的个体

天择

更新到下一代

在文件 population.cpp40 行定义.

函数调用图:

◆ update()

void NANA::GA::Popultation::update ( )
protected

更新到下一代

补充群落的数量

允许外部个体进来

为了保证优秀基因,剩余空间给前remainingSpace的个体

在文件 population.cpp103 行定义.

这是这个函数的调用关系图:

类成员变量说明

◆ m_groupNumber

int NANA::GA::Popultation::m_groupNumber
protected

种群数量

在文件 population.h55 行定义.

◆ m_lives

std::list<int> NANA::GA::Popultation::m_lives
protected

活下来的个体

在文件 population.h60 行定义.

◆ m_members

std::vector<GeneFloat> NANA::GA::Popultation::m_members
protected

成员

在文件 population.h57 行定义.

◆ m_mutate

int NANA::GA::Popultation::m_mutate
protected

百分之

在文件 population.h56 行定义.

◆ m_oldmembers

std::vector<GeneFloat> NANA::GA::Popultation::m_oldmembers
protected

在文件 population.h58 行定义.

◆ m_result

std::vector<CResult> NANA::GA::Popultation::m_result
protected

上一代的成员

结果

在文件 population.h59 行定义.


该类的文档由以下文件生成: