Upload
kirill-netreba
View
963
Download
6
Embed Size (px)
DESCRIPTION
A new population-based search algorithm called the Bees Algorithm (BA) is presented. The algorithm mimics the food foraging behaviour of swarms of honey bees. In its basic version, the algorithm performs a kind of neighbourhood search combined with random search and can be used for both combinatorial optimisation and functional optimisation.
Citation preview
13/04/2023 1Нетреба Кирилл,
СПбГПУ
Алгоритм пчёл
Нетреба Кириллкафедра «Теоретические основыэлектротехники», ГОУ СПбГПУ
Оригинальный Инструмент для Сложных Задач Оптимизации
13/04/2023 2
План доклада
1. Введение
2. Пчёлы в природе
3. Реализация алгоритма
4. Сравнение с другими алгоритмами
5. Заключение
Нетреба Кирилл, СПбГПУ
Алгоритм пчёл
13/04/2023 3Нетреба Кирилл,
СПбГПУ
Алгоритм пчёлВведение
Многие многокритериальные задачи оптимизации - NP-сложные:f(x, y, z, a, b, g, h, m, n, s, r, sto-o-p!!!... x1, y1, z1…
Требуют БОЛЬШИХ вычислительных ресурсов
а может SOAs?! ☺
?time
13/04/2023 4
Оптимизация на основе интеллекта роя
Нетреба Кирилл, СПбГПУ
Алгоритм пчёл
SOAs Swarm-based Optimization Algorithms имитируют методы, используемые в природе
SOAs методы прямого поиска
популяция решений единственное решение
К SOAs относятся:
Genetic Algorithm (GA)Ant Colony Optimization (ACO) algorithm
Particle Swarm Optimization(PSO) algorithm
Введение
13/04/2023 5
Пчёлы в природе
Нетреба Кирилл, СПбГПУ
Алгоритм пчёл
1 кг мёда = 2–4 млн. цветков = 120–150 тыс. нош по 20–30 мг каждая
13/04/2023 6Нетреба Кирилл,
СПбГПУ
Алгоритм пчёл
направление расстояние количество
10км
scout
Пчёлы в природеСкауты летают в
случайных направлениях
много нектара много пчёл
13/04/2023 7
Реализация алгоритма
Нетреба Кирилл, СПбГПУ
Алгоритм пчёл
Если при объяснении вашей программы слушатель начинает кивать головой, его пора будить.
13/04/2023 8
Реализация
Нетреба Кирилл, СПбГПУ
Алгоритм пчёл
1) пчелы-разведчики: s2) лучших участков: n3) выбранных участков: m4) пчел на лучших участках: N5) пчел на выбранных участках: M6) размер окрестности: d
ПАРАМЕТРЫ
Инициализировать s случайных решений
Посчитать фитнес-функцию
Выбрать n “лучших” и m “выбранных” участков
Сохранить лучшее решение
СХЕМА
1
2
Две пчёлы попали на один и тот же участок:
1) две пчелы нашли два разных пересекающихся участка, и оба этих участка отмечаются как лучшие или выбранные
2) это один участок, центр которого находится в точке, которая соответствует пчеле с большим значением целевой функции.
12
13/04/2023 9
Реализация
Нетреба Кирилл, СПбГПУ
Алгоритм пчёл
1) пчелы-разведчики: s2) лучших участков: n3) выбранных участков: m4) пчел на лучших участках: N5) пчел на выбранных участках: M6) размер окрестности: d
ПАРАМЕТРЫ
Инициализировать s случайных решений
Посчитать фитнес-функцию
Выбрать n “лучших” и m “выбранных” участков
Инициализация N решений для каждого ni-го участка
Инициализация M решений для каждого mi-го участка
Инициализировать s случайных решений
Сохранить лучшее решение
СХЕМА
d
d
xopt
1
2xopt
Область, в которую может быть послана пчела
постоянна
уменьшается по мере увеличения номера итерации
13/04/2023 10
Реализация
Нетреба Кирилл, СПбГПУ
Алгоритм пчёл
1) пчелы-разведчики: 2) лучших участков: 3) выбранных участков: 4) пчел на лучших участках: 5) пчел на выбранных участках: 6) размер окрестности:
ПАРАМЕТРЫ ПРИМЕР
f (0,0) = 0
2 2( , ) ( )f x y x y f(15, 18) = -549f(-30, -15) = -1125f(22, -31) = -1445f(18, 40) = -1924f(-25, 47) = -2834f(60, 86) = -10996f(-91, -99) = -18082f(17, -136) = -18785f(-152, -1) = -22501f(-222, 157) = -73933
Окрестность для первой точки:[15 - 10 = 5; 15 + 10 = 25] для первой координаты[18 - 10 = 8; 18 + 10 = 28] для второй координаты
И для второй точки: [-30 - 10 = -40; -30 + 10 = -20] для первой координаты[-15 - 10 = -25; -15 + 10 = -5] для второй координаты
10
35
2
10
2
13/04/2023 11
Реализация
Нетреба Кирилл, СПбГПУ
Алгоритм пчёл
1) пчелы-разведчики: 2) лучших участков: 3) выбранных участков: 4) пчел на лучших участках: 5) пчел на выбранных участках: 6) размер окрестности:
ПАРАМЕТРЫ ПРИМЕР
f (0,0) = 0
2 2( , ) ( )f x y x y f(15, 18) = -549f(-30, -15) = -1125f(22, -31) = -1445f(18, 40) = -1924f(-25, 47) = -2834f(60, 86) = -10996f(-91, -99) = -18082f(17, -136) = -18785f(-152, -1) = -22501f(-222, 157) = -73933
10
35
2
10
2
На первом лучшем участке имеем: f(15, 18) = -549f(7, 12) = -193f(10, 10) = -100f(16, 24) = -832f(18, 24) = -900
13/04/2023 12
Реализация
Нетреба Кирилл, СПбГПУ
Алгоритм пчёлПРИМЕР 2
21
1
( ,..., )
n
n ii
f x x x
- лучшие решения
- выбранные решения
- пчелы-разведчики
(гиперсфера)
13/04/2023 13
Реализация
Нетреба Кирилл, СПбГПУ
Алгоритм пчёлПРИМЕР 3 - НАДЁЖНОСТЬ
6
1
( ) sin( )i ii
f x x x
(Inverted Schwefel's function)
-500 ≤ xi ≤ 500
f (xmax) ≈ 2513.9
xmax = (420.9, 420.9)
Количество посчитанных функционалов
Обратная функция Швефеля
Фит
несс
Параметры алгоритма:s = 500 (разведчиков)n = 5 (лучших участков)m = 10 (выбранных участков)N = 50 (пчёл на лучший участок)M = 30 (пчёл на выбранный участок)d = 20 (размер окрестности)2D Schwefel’s function
13/04/2023 14
Сравнение с другими алгоритмами
Нетреба Кирилл, СПбГПУ
Алгоритм пчёл
Алгоритм пчёл был применён для 8 тестовых функция и результат сравнён с решениями других алгоритмов.
13/04/2023 15Нетреба Кирилл,
СПбГПУ
Алгоритм пчёлТаблица 1. Тестируемые функции
No Название ф-и Интервал Функция Глобальный оптимум
Сравнение
13/04/2023 16
Сравнение
Нетреба Кирилл, СПбГПУ
Алгоритм пчёл
No
SIMPSA NE SIMPSA GA ANTS Bee Algorithm
успех%
ср.колич оценок
успех%
ср.колич оценок
успех%
ср.колич оценок
успех%
ср.колич оценок
успех%
ср.колич оценок
1 **** **** **** **** 100 10160 100 6000 100 868
2 **** **** **** **** 100 5662 100 5330 100 999
3 **** **** **** **** 100 7325 100 1936 100 1657
4 **** **** **** **** 100 2844 100 1688 100 526
5a 100 10780 100 4508 100 10212 100 6842 100 631
5b 100 12500 100 5007 **** **** 100 7505 100 2306
6 99 21177 94 3053 **** **** 100 8471 100 28529
7 **** **** **** **** 100 15468 100 22050 100 7113
8 **** **** **** **** 100 200000 100 50000 100 1847
Таблица 2. Результаты
**** Нет данных
13/04/2023 17
Заключение
Нетреба Кирилл, СПбГПУ
Алгоритм пчёл
• Алгоритм робастный, дает 100% результат не застревает в локальных оптимумах превосходит другие алгоритмы
• Недостаток алгоритма - количество настраиваемых параметров
• Дальнейшую работы следует направить на сокращение количества параметров алгоритма и ассимиляцию наиболее удачных механизмов
13/04/2023 18
СПАСИБО ЗА ВНИМАНИЕ!
Нетреба Кирилл, СПбГПУ
Алгоритм пчёл