Skip to content

个体(Individual)类

个体类是优化算法中的基本单位,用于表示一个解及其相关信息。

主要属性

属性名类型说明
Xnumpy.ndarray决策变量向量
Fnumpy.ndarray目标值向量
Gnumpy.ndarray约束值向量
feasiblebool是否可行
rankintNSGA-II等算法的排序等级
crowding_distancefloat拥挤距离

核心方法

1. 复制方法

  • copy(): 创建个体的深拷贝
    • 返回: Individual 实例,包含所有属性的深拷贝
  • result_copy(): 创建个体的结果拷贝
    • 返回: Individual 实例,只复制必要的属性(X, F, G, feasible, rank, crowding_distance)

使用示例

python
# 创建个体
X = np.random.random(10)  # 10维决策变量
ind = Individual(X)

# 复制个体
ind_copy = ind.copy()  # 深拷贝
ind_result = ind.result_copy()  # 结果拷贝

提示

  • 个体类主要用于存储单个解的信息
  • 支持深拷贝和结果拷贝两种复制方式
  • 结果拷贝只复制必要的属性,适用于保存优化结果