Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Игнатьев.Использование алгоритма муравьиных кол...doc
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
640 Кб
Скачать

4. Локальная оптимизация маршрутов

Для улучшения качества создаваемых маршрутов используются алгоритмы локального поиска. В данной работе мы рассмотрим применение алгоритма 2-точечной оптимизации (2-opt). В предлагаемом алгоритме каждая пара рядом стоящих точек в маршруте обменивается местами, в случае если значение целевой функции улучшается изменение применяется к решению. Процесс повторяется до тех пор, пока удаётся улучшать решение.

5. Распараллеливание алгоритма муравьиных колоний

При анализе последовательного алгоритма муравьиных колоний можно выделить следующие этапы решения задачи:

A) начальная подготовка, включающая в себя загрузку и начальную инициализацию данных,

B) последовательное построение и улучшение созданных маршрутов, непосредственно сам вычислительный этап,

C) обработка и вывод полученных результатов.

Наибольшую сложность в вычислительном плане составляет этап B, время выполнения остальных этапов относительно невелико, особенно при возрастании размерности задачи. В свою очередь этап B можно разбить на следующие подэтапы: построение маршрута и его последующее улучшение для каждого муравья, затем обновление следа феромона. Построение и улучшение маршрутов для каждого муравья производится абсолютно независимо от остальных муравьев, при обновлении феромона происходит редактирование общей структуры данных. В итоге можно предложить следующую схему распараллеливания для общей памяти: потоки независимо друг от друга строят и улучшают по 1 маршруту для каждого муравья, затем они синхронизируются с помощью барьера и главный поток, на основе полученных результатов производит обновление феромона.

6. Вычислительный эксперимент

Для вычислительного эксперимента были отобраны три задачи, описанные в работе [1]. В качестве тестовой системы использовалась рабочая станция с 4-ядерным процессором Intel Core 2 Quad 9550 2.83 ГГц и 4 Гб оперативной памяти.

В ходе численного эксперимента было отслежено влияние значений параметров α и β на качество получаемого решения.

Для первых трех наборов тестов была выбрана задача с 50 клиентами E051-05e, значение лучшего известного решения которой равно 524.61.

В первом наборе тестов проверялось влияние параметра α (параметр значимости количества феромона при выборе следующего клиента). Значения параметра α менялось от 1 до 10, остальные параметры были зафиксированы: β = 1, p = 0.2, O = 524. Таб. 1 показывает, что увеличение параметра α приводит к существенному ухудшению решений.

α

1

3

5

7

9

L

585.7

774.5

1229.3

1113.9

1145.9

Таб. 1. Влияние параметра α на качество решения L.

Во втором наборе тестов проверялось влияние параметра β (параметр значимости расстояния при выборе следующего клиента). Значения параметра β менялось от 1 до 10, остальные параметры были зафиксированы: α = 1, p = 0.2, O = 524. Как легко можно заметить из Таб. 2 изменение значения β практически не влияет на решение, лучшее решения достигается при значениях параметра 3 и 5.

β

1

3

5

7

9

L

585.7

567.4

567.3

576.2

583.0

Таб. 2. Влияние параметра β на качество решения L.

На рис. 1 графически отображены результаты предыдущих наборов тестов.

Рис. 1. Влияние параметров α и β на качество решения.

В таб. 3 приведены некоторые результаты для различных комбинаций α и β:

α

β

L

2

3

569.1

2

4

603.3

2

5

606.8

2

8

579.0

2

10

568.8

2

12

582.7

3

5

603.0

3

10

564.7

3

12

605.9

3

15

605.9

Таб. 3. Влияние комбинаций параметров α и β на качество решения L.

В заключение приведем значения лучших решений, полученных для 3 тестовых задач:

Задача

Лучшее известное решение

Лучшее полученное решение

E051-05e

524.6

564.7

076-10e

835.3

956.5

E101-08eE

826.1

969.7

Таб. 4. Лучшие полученные решения.

При проведении вышеописанных наборов тестов на оставшихся двух примерах наблюдается аналогичное поведение: при увеличении параметра α решение задачи резко ухудшается, изменение β в свою очередь подобного эффекта не дает.

Для оценки масштабируемости реализованного алгоритма муравьиных колоний был проведен ряд запусков тестовых задач на 1 и 4 ядрах. Результаты приведены в таб. 5.

Задача

Время выполнения на 1 ядре, с.

Время выполнения на 4 ядрах, с.

Коэффициент масштабируемости (ускорение)

E051-05e

20

6

3.33

076-10e

70

18

3.88

E101-08eE

152

39

3.89

Таб. 5. Время выполнения на 1 и 4 ядрах.