Описание тега particle-swarm
В информатике оптимизация роя частиц (PSO) - это вычислительный метод, который оптимизирует проблему, итеративно пытаясь улучшить возможное решение с учетом заданного показателя качества.
В информатике оптимизация роя частиц (PSO) - это вычислительный метод, который оптимизирует проблему, итеративно пытаясь улучшить возможное решение с учетом заданного показателя качества.
Алгоритм:
Initialize all agents;
while (not maximum iterations nor minimum error )
{
foreach(agent in agents)
{
Calculate function value at agent position;
If (value < best_value_in_history)
best_value_in_history= value;
}
current_best_value= calculate best value of all current agents positions;
foreach(agent in agents)
{
agent current_velocity =
w * current_velocity +
p * random_double() * (current_best_value.position - current_position) +
g * random_double * (best_value_in_history.position - current_position);
update_agent_position(current_velocity);
}
}
где w,p, g выбираются практикующим специалистом и контролируют поведение и эффективность метода PSO.
Сторонние реализации:
- RRSI - это проект C# для моделирования оптимизации роя частиц при взаимодействии роботов.
- SwarmOps C# и коды ANSI C для нескольких методов оптимизации, включая несколько лучших в мире вариантов PSO.
- Платформа PSO на основе Java является частью проекта с открытым исходным кодом CIlib (Computational Intelligence Library).
- Аплет визуализации PSO, случайно сгенерированный рой из 12 частиц, пытается найти "глобальный максимум" на ландшафте.