Научная статья на тему 'Численное исследование ант-алгоритмов для многомерной задачи о рюкзаке'

Численное исследование ант-алгоритмов для многомерной задачи о рюкзаке Текст научной статьи по специальности «Общие и комплексные проблемы технических и прикладных наук и отраслей народного хозяйства»

CC BY
22
5
Поделиться

Аннотация научной статьи по общим и комплексным проблемам технических и прикладных наук и отраслей народного хозяйства, автор научной работы — Дегтерев Д.А., Сапунов С.Л.

Представлены результаты численных исследований ант-алгоритмов. Даны рекомендации по выбору параметров алгоритмов.

NUMERICAL INVESTIGATION OF ANT-ALGORITHMS FOR MANY-DIMENSIONAL KNAPSACK PROBLEM

The ant-algorithms numerical investigations results are presented. Recommendations on the algorithms parameters choice are given.

Текст научной работы на тему «Численное исследование ант-алгоритмов для многомерной задачи о рюкзаке»

ловиях развития информационно-коммуникационных технологий : материалы науч.-практ. конф. / под ред. В. Г. Домрачева, С. У. Увайсова ; Моск. ин-т электрон. машиностроения. М., 2007.

4. Кучерявый, Е. А. Управление трафиком и качество обслуживания в сети Интернет / Е. А. Кучерявый. СПб. : Наука и техника, 2004.

5. Шринивас, В. Качество обслуживания в сетях IP : пер. с англ. / В. Шринивас. М. : Вильямс, 2003.

6. Брайан, Х. Полный справочник по Cisco : пер. с англ. / Х. Брайан. М. : Вильямс, 2006.

7. Леммл, Т. CCIE: Cisco Certified Interwork Expert : учеб. руководство : пер. с англ. / Т. Леммл, Дж. Шварц. М. : Лори, 2002.

Рис. 4. Модель управления сетью на основе тензорного метода анализа

M. N. Petrov, D. Y. Ponomarev, K. E. Gaipov, V. V. Zolotuhin

POSSIBILITIES RESEARCH OF TENSOR ANALYSIS FOR TRAFFIC CONTROL

IN TCP/IP NETWORKS

TCP/IP traffic control is one of the most important tasks for providing given QoS level in modern communication. Tensor analyses present method for optimal distribution network recourses and more effective traffic control in TCP/IP networks.

УДК 519.8

Д. А. Дегтерев, С. Л. Сапунов

ЧИСЛЕННОЕ ИССЛЕДОВАНИЕ АНТ-АЛГОРИТМОВ ДЛЯ МНОГОМЕРНОЙ ЗАДАЧИ О РЮКЗАКЕ

Представлены результаты численных исследований ант-алгоритмов. Даны рекомендации по выбору параметров алгоритмов.

Многомерная задача о рюкзаке является ЫР-трудной задачей. Приближенные алгоритмы, в том числе и ант-алгоритмы, позволяют найти субоптимальные решения для нее за полиномиальное время. Сформулируем многомерную задачу о рюкзаке [1]:

п П

У(х) = X cjxj ® X аЛ < ^ , (1)

]=1 ]=1

х, е {0,1}, ] = 1, 2,..., п , г = 1, 2,..., т.

Предполагается, что с] > 0, 0 < ау < Ь1,

I = 1,2,...,п , г = 1,2,...,т.

Стратегия поиска оптимального решения с помощью ант-алгоритмов хорошо соотносится с решением

задачи о многомерном рюкзаке [2]. Можно показать, что задача нахождения туристом оптимального набора предметов и задача поиска кратчайшего пути колонией муравьев практически совпадают.

Для этого выполним некоторые преобразования. Построим сеть по следующим правилам [3]. По оси абсцисс будем последовательно откладывать номера предметов, по оси ординат - их вес. Из каждой точки (начиная с точки (0; 0)) выходят две дуги - горизонтальная (соответствующая альтернативе «не брать предмет») и наклонная (соответствующая альтернативе «взять предмет»), вертикальная проекция которой равна весу предмета. Длины наклонных дуг положим равными ценности предметов, длины горизонтальных дуг - нулю. Полученная сеть (конечная вершина явля-

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

Основу «социального» поведения муравьев составляет самоорганизация. Самоорганизация является результатом взаимодействия четырех компонентов: случайность, многократность, положительная обратная связь, отрицательная обратная связь.

Ант-алгоритмы основаны на имитации природных механизмов самоорганизации муравьев, использование которых иллюстрируется ниже на примере задачи о рюкзаке.

Многократность взаимодействия реализуется итерационным поиском оптимального набора предметов в рюкзаке одновременно несколькими муравьями. За одну итерацию алгоритма каждый муравей набирает полный рюкзак.

Для задачи о рюкзаке положительная обратная связь реализуется следующим стохастическим правилом: вероятность положить предмет муравьем в рюкзак пропорциональна количеству феромона на этом предмете. Применение такого вероятностного правила обеспечивает реализацию и другой составляющей самоорганизации - случайности. Количество откладываемого муравьем феромона на предмете пропорционально его важности. Чем важнее предмет, тем больше феромона будет отложено на нем, и тем больше муравьев будут использовать его при синтезе своего набора предметов.

Использование только положительной обратной связи приводит к преждевременной сходимости решений - к случаю, когда все муравьи выбирают одни и те же предметы. Для избегания этого используется отрицательная обратная связь - испарение феромона.

Для каждого муравья решение взять предмет зависит от трех составляющих: памяти муравья (tabu list), значимости и виртуального следа феромона.

Tabu list (память муравья) - это список взятых муравьем предметов, которые брать еще раз нельзя. Используя этот список, муравей гарантированно не возьмет один и тот же предмет дважды. В этот список должны быть включены те предметы, взяв которые мы нарушим одно из ограничений задачи.

Значимость (h j) - это локальная статическая информация, выражающая эвристическое желание муравья взять предмет. Данная мера зависит от некоторых характеристик предмета, таких как масса, объем, цена и является величиной постоянной для каждой конкретной задачи в отличие от tabu list и виртуального следа феромона.

Виртуальный след феромона на предмете j представляет подтвержденное муравьиным опытом желание взять предмет j. В отличие от значимости след феромона является более глобальной и динамичной информацией - она изменяется после каждой итерации алгоритма, отражая приобретенный муравьями

опыт. Количество виртуального феромона на предмете у на итерации t обозначим через т} (/).

Важную роль в муравьиных алгоритмах играет вероятностно-пропорциональное правило, определяющее вероятность для к -го муравья взять предмет ] на итерации V.

P,k (t) =

[t j (t) ]a[hj

Z[* j (t) ]a[h j

^ если j e Jk,

je Jk

(2)

0, если j £ Jk,

где a и b - два регулируемых параметра, задающих веса следа феромона и значимости при выборе маршрута.

После того, как каждый муравей набрал свой рюкзак, происходит изменение следа феромона на предметах. Способ изменения следа феромона зависит от модели муравьиного алгоритма [4].

Ant-density - в этой модели количество феромона, оставляемого муравьем на предмете, является постоянной величиной:

если j е Tk (t),

At j, k (t) =

0, если j i Tk (t).

(3)

Ant-cycle - в этой модели количество феромона, оставляемого муравьем на предмете, зависит от общей ценности f(Tk(t)) этого набора предметов:

fq • f (Tk (t)), если j е Tk (t),

Dt j,k (t) = i0 £ T (t) (4)

j' [0, если j £ Tk (t), где Tk (t) - набор предметов у муравья k на итерации t; f (Tk (t)) - ценность этого набора; q - регулируемый параметр.

Для исследования всего пространства решений необходимо обеспечить испарение феромона - уменьшение во времени количества отложенного на предыдущих итерациях феромона [5]. Обозначим коэффициент испарения феромона через p е [0,1]. Тогда правило обновления феромона примет вид

t j (t +1) = (1 - p)t j (t) + Дт j (t),

K

где Dtj (t) = ^ Dtj k (t); K - количество муравьев в

k=1

колонии.

В начале работы алгоритма оптимизации количество феромона принимается равным небольшому положительному числу t0. Количество муравьев в колонии остается постоянным на протяжении выполнения алгоритма. Многочисленная колония приводит к быстрому усилению субоптимальных решений, а когда муравьев мало, возникает опасность потери коопера-тивности поведения через ограниченное взаимодействие и быстрое испарение феромона. Число муравьев можно назначить равным произведению числа предметов и числа ограничений.

Последовательность шагов ант-алгоритма выглядит следующим образом:

1. Инициализация параметров алгоритма муравьиных колоний: a, b, p и q, m, t0, N - число итераций алгоритма.

2. Задание следа феромона t0 на предметах, расчет значимости предметов hj.

3. Выбор каждым муравьем колонии набора предметов по вероятностно-пропорциональному правилу (2).

Муравей набирает предметы, пока его tabu list не будет включать список всех предметов. Как только все муравьи колонии набрали свои рюкзаки, вычисляем ценность и переходим к шагу 4.

4. Обновление следа феромона на предметах по заранее выбранной схеме: ant-density или ant-cycle. Испарение феромона.

5. Поиск лучшего решения fmax на итерации, сравнение с наилучшим f: если fmax > f, то f = fmax и переход к шагу 3.

6. Конец: полученное значение f является решением задачи.

Численные исследования ант-алгоритмов проводились на тестовых примерах. В первом примере число переменных было 10, число ограничений - 3. Посмотрим, как результат зависит от параметров алгоритма. Пусть число муравьев К = 15, число итераций N = 10, тип алгоритма определения следа феромона - Ant-density,

число запусков алгоритма (прогонов) равно 100. Общее число наборов предметов равно 150 (из 1 024).

Анализ табл. 1 показывает, что значения параметров a и b значительно влияют на результат, причем значение параметра a существеннее. Наилучшее значение при фиксированных остальных: a = 0,5, b = 0,5, хотя b может быть и немного больше, результат от этого практически не изменится.

Величина q незначительно в данном случае влияет на результат (табл. 2). Более значительно влияет параметр p. Для данной задачи оптимальное значение р = 0,3. Алгоритм также находит результат на второй, третьей итерации. Как видно, жадный a = 0 стохастический алгоритм на малой размерности также дает удовлетворительный результат 99 % из ста прогонов.

По совокупности данных (табл. 3) можно сделать вывод о том, что число элитных муравьев можно для задачи выбирать произвольным, например е = 3. Судя по времени и итерации, на которой найдено оптимальное решение, лучше выбрать начальный объем феромона t0 = 2.

Изменим в тип алгоритма на Ant-cycle и посмотрим на результаты решения задачи при прочих равных условиях (табл. 4-6).

Зависимость работы алгоритма от a и Р

Таблица 1

№ п/п Сочетание параметров Процент верного решения Время выполнения всех прогонов, с Средний номер (вещ.) итерации с лучшим решением

a Р q p t0 e

1 1 1 0,1 0,3 0,1 3 93 2 1,68

2 2 1 0,1 0,3 0,1 3 65 2 1,22

3 1 2 0,1 0,3 0,1 3 88 2 1,37

4 2 2 0,1 0,3 0,1 3 71 2 1,68

5 0,5 0,5 0,1 0,3 0,1 3 100 2 2,02

6 0,1 0,1 0,1 0,3 0,1 3 93 2 3,29

7 0,5 1 0,1 0,3 0,1 3 100 3 1,75

8 0,5 2 0,1 0,3 0,1 3 99 3 1,66

9 0,5 3 0,1 0,3 0,1 3 95 2 1,57

10 0,5 4 0,1 0,3 0,1 3 93 2 2,05

11 1 0,5 0,1 0,3 0,1 3 89 2 2,16

12 2 0,5 0,1 0,3 0,1 3 48 3 1,29

Зависимость работы алгоритма от q и p

Таблица 2

№ п/п Сочетание параметров Процент верного решения Время выполнения всех прогонов, с Средний номер (вещ.) итерации с лучшим решением

a Р q p t0 e

1 0 0,5 0,1 0,3 0,1 3 99 2 2,16

2 0,5 0,5 0,1 0,3 0,1 3 100 3 2,07

3 0,5 0,5 0,5 0,3 0,1 3 100 2 2,14

4 0,5 0,5 1 0,3 0,1 3 100 2 2,26

5 0,5 0,5 5 0,3 0,1 3 98 2 2,35

6 0,5 0,5 0,1 0 0,1 3 99 2 2,43

7 0,5 0,5 0,1 0,5 0,1 3 99 3 2,25

8 0,5 0,5 0,1 1 0,1 3 89 2 1,93

Таблица 3

Зависимость работы алгоритма от начального количества феромона т0 и количества муравьев е

№ п/п Сочетание параметров Процент верного решения Время выполнения всех прогонов, с Средний номер (вещ.) итерации с лучшим решением

a Р q p t0 e

1 0,5 0,5 0,1 0,3 0,1 3 100 3 2,07

2 0,5 0,5 0,1 0,3 0,1 5 100 2 2,1

3 0,5 0,5 0,1 0,3 0,1 9 100 2 2,29

4 0,5 0,5 0,1 0,3 0,1 1 100 3 2,75

5 0,5 0,5 0,1 0,3 0 5 100 3 2,71

6 0,5 0,5 0,1 0,3 0,5 5 100 3 2,09

7 0,5 0,5 0,1 0,3 2 5 100 2 2

8 0,5 0,5 0,1 0,3 5 5 100 3 2,26

Таблица 4

Зависимость работы алгоритма от a и Р

№ п/п Сочетание параметров Процент верного Время выполнения всех Средний номер (вещ.) итера-

a Р q p t0 e решения прогонов, с ции с лучшим решением

1 1 1 0,1 0,3 0,1 3 97 3 1,83

2 2 1 0,1 0,3 0,1 3 76 3 1,41

3 1 2 0,1 0,3 0,1 3 93 2 1,35

4 2 2 0,1 0,3 0,1 3 75 2 1,06

5 0,5 0,5 0,1 0,3 0,1 3 100 3 2,21

6 0,1 0,1 0,1 0,3 0,1 3 97 2 3,6

7 0,5 1 0,1 0,3 0,1 3 99 2 1,76

8 0,5 2 0,1 0,3 0,1 3 99 2 1,49

9 0,5 3 0,1 0,3 0,1 3 97 2 1,65

10 0,5 4 0,1 0,3 0,1 3 84 2 1,93

11 1 0,5 0,1 0,3 0,1 3 97 2 2,08

12 2 0,5 0,1 0,3 0,1 3 79 3 1,55

Таблица 5

Зависимость работы алгоритма от q и p

№ п/п Сочетание параметров Процент вер- Время выполнения всех Средний номер (вещ.) итера-

a Р q p t0 e ного решения прогонов, с ции с лучшим решением

1 0,5 0,5 0,1 0,3 0,1 3 99 2 2,22

2 0,5 0,5 0,5 0,3 0,1 3 98 2 2,14

3 0,5 0,5 1 0,3 0,1 3 99 3 2,34

4 0,5 0,5 5 0,3 0,1 3 96 3 2,69

5 0,5 0,5 0,1 0 0,1 3 99 3 2,48

6 0,5 0,5 0,1 0,5 0,1 3 97 2 2,18

7 0,5 0,5 0,1 1 0,1 3 94 2 1,82

Таблица 6

Зависимость работы алгоритма от начального количества феромона т0 и количества муравьев е

№ п/п Сочетание параметров Процент вер- Время выполнения Средний номер (вещ.) итерации

a Р q p t0 e ного решения всех прогонов, с с лучшим решением

1 0,5 0,5 0,1 0,3 0,1 3 100 3 2,53

2 0,5 0,5 0,1 0,3 0,1 5 100 3 2,29

3 0,5 0,5 0,1 0,3 0,1 9 100 3 2,11

4 0,5 0,5 0,1 0,3 0,1 1 100 3 2,23

5 0,5 0,5 0,1 0,3 0 5 99 2 2,71

6 0,5 0,5 0,1 0,3 0,5 5 100 3 2,18

7 0,5 0,5 0,1 0,3 2 5 100 2 2,19

8 0,5 0,5 0,1 0,3 5 5 100 3 1,98

В среднем алгоритм типа Ant-Cycle сработал несколько лучше алгоритма с типом Ant-Density. Закономерности между параметрами a, Р и результатами алгоритма остались прежними: a = 0,5, Р = 0,5.

Алгоритм сработал в среднем на уровне алгоритма Ant-density. Оптимальные параметры также приблизительно совпадают q = 0,1, p = 0,3.

Алгоритм типа Ant-cycle в целом сработал на уровне Ant-density. Результаты отличаются по значению параметров: e = 9, t0 = 5.

Анализ аналогичных результатов для тестовых задач с 20 переменными и тремя ограничениями и 24 переменными и 6 ограничениями показал значительное влияние параметров a и Р на результат,

лучшие значения для обеих задач: a = 1, Р = 2. Величины q и p незначительно в данном случае влияют на результат. Число элитных муравьев для задач можно выбирать произвольным, например e = 5, начальный объем феромона лучше выбрать небольшим х0 = 0,1. Результаты алгоритма типа Ant-cycle несколько лучше результатов алгоритма Ant-density, что касается выводов по параметрам, то они остаются без изменений.

Для задачи с 20 переменными число муравьев K = 20, число итераций N = 10, тип алгоритма определения следа феромона - Ant-density, число запусков алгоритма (прогонов) - 100. Общее число наборов предметов - 200 (из 1 048 576). Время выполнения всех прогонов - 4-5 с.

Для задачи с 24 переменными и шестью ограничениями число муравьев K = 30, число итераций N = 10, тип алгоритма определения следа феромона - Ant-density, число запусков алгоритма (прогонов) - 100. Общее число наборов предметов - 300 (из 16 777 216, что составляет всего 0,001 788 %).

Ант-алгоритмы тестировались также на задачах с 42 переменными и двумя ограничениями - точное решение найдено за 18 с, с 39 переменными и 5 ограничениями - точное решение найдено за 291 с и на задаче с 50 переменными и пятью ограничениями -точное решение найдено за 68 037 с.

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

Относительно типа модели вычисления следа феромона на взятых предметах можно сказать, что обе модели: и Ant-density, и Ant-Cycle, - показали хоро-

шие результаты. Однако при правильном подборе коэффициентов вторая модель, как правило, показывает лучшие результаты.

Выбор параметров a и Р существенно влияет на результат работы алгоритмов. Чаще всего для боль-шеразмерных задач оптимальными являются значения a = 1, Р = 2. Остальные параметры не так значительно влияют на результат, однако их влияние на сходимость алгоритма также существенно. Главное, выбирать их значения в разумных пределах. Рекомендуемые значения для параметров алгоритмов следующие: q = 1, p = 0,3, х0 = 0,1 ,e = 5.

Библиографический список

1. Сигал, И. Х. Введение в прикладное дискретное программирование: модели и вычислительные алгоритмы : учеб. пособие / И. Х. Сигал, А. П. Иванова. М. : ФИЗМАТЛИТ, 2002. 240 с.

2. Fidanova, S. Evolutionary Algorithm for Multidimensional Knapsack Problem / S. Fidanova // PPSNVII-Workshop. 2002. P. 118-124.

3. Бурков, В. Н. Прикладные задачи теории графов / В. Н. Бурков, И. А. Горгидзе, С. Е. Ловецкий // Тбилиси : Мецниереба, 1974. 234 с.

4. Dorigo, M. The Ant System: An Autocatalytic Optimizing Process : Technical Report No. 91-016 / M. Dorigo, V. Maniezzo, A. Colorni ; Politecnico di Milano. Italy, 1991. 103 p.

5. Bonavear, E. Swarm Intelligence: from Natural to Artificial Systems / E. Bonavear, M. Dorigo // Oxford University Press. Oxford, 1999. 307 p.

D. A. Degterev, S. L. Sapunov

NUMERICAL INVESTIGATION OF ANT-ALGORITHMS FOR MANY-DIMENSIONAL

KNAPSACK PROBLEM

The ant-algorithms numerical investigations results are presented. Recommendations on the algorithms parameters choice are given.

УДК 519.872.5, 621.391

Е. А. Графеев, М. Н. Петров

ЭЛЕКТРОННАЯ СИСТЕМА УПРАВЛЕНИЯ МНОГОАДРЕСНЫМ ДОСТУПОМ НА ОСНОВЕ БИОМЕТРИЧЕСКИХ ДАННЫХ ДЛЯ ЗАЩИТЫ ИНФОРМАЦИИ В СОВРЕМЕННЫХ БАЗАХ ДАННЫХ

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

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

В 2006 г. одним из авторов статьи был получен патент России на электронную систему многоадресного доступа (Пат. 2274896 Российская Федерация. Электронная система управления многоадресным доступом. Заявл. 20.04.06 зарегистрированная международная заявка РСТ/ЯИ 2005/000646 от 15.12.05). В основу