В данном проекте представлена простейшая реализация алгоритма PSO на языке python с визуализацией через matplotlib.
- python >= 2.7
- matplotlib
- numpy
- fire
В терминале в папке scripts:
python ParticleSwarmOptimization.py
Можно указать количество частиц и вывод текущего минимума:
python3 ParticleSwarmOptimization.py --num_particles=20 --verbose=True
Или проще:
python3 ParticleSwarmOptimization.py 20 True
Примечание. При запуске из-под linux могут потребоваться права доступа на выполнение файлов .py. Это делается командой:
chmod +x scripts/*.py
- Функция Растригина
- Сферическая функция
- Функция Экли
- Функция Матиаса
- Функция Розенброка
- files - файлы для визуализации в ReadMe.md
- scripts
- Particle.py - алгоритм PSO
- OptimizationFuncs.py - тестовые функции для оптимизации
- ParticleSwarmOptimization.py - запуск работы алгоритма с визуализацией
- Добавить комментарии к коду.
- Добавить выбор тестовой функции в терминале.
- Вынести параметры алгоритма в конфигурационный файл (например, yaml).
- Добавить формулы используемых функций.