import numpy as np
class HHO:
def __init__(self, search_agents, num_search_agents, max_bound, min_bound, alpha, scores):
self.search_agents = search_agents
self.num_search_agents = num_search_agents
self.max_bound = max_bound
self.min_bound = min_bound
self.alpha = alpha
self.scores = scores
def update(self):
# 排序搜索代理
sorted_agents = self.search_agents[np.argsort(self.scores)][::-1]
# 确定各个搜索代理的角色
best_agent = sorted_agents[0]
prey_agent = sorted_agents[1]
hunting_agents = sorted_agents[2:]
# 计算各个搜索代理的适应度值
best_fitness = self.scores[np.argmax(self.scores)]
prey_fitness = self.scores[np.argmin(self.scores)]
hunting_fitness = self.scores[2:]
# 更新各个搜索代理
for i in range(self.num_search_agents -
哈里斯鹰HHO优化算法Python代码
于 2023-03-18 15:44:48 首次发布