УДК 681.3+681.5
ГЕНЕТИЧЕСКИЙ ПОДХОД К РЕШЕНИЮ ЗАДАЧИ РАСПРЕДЕЛЕНИЯ ПОСТУПАЮЩИХ ДЛЯ ОБРАБОТКИ СООБЩЕНИЙ В СЕТЯХ БЕСПРОВОДНОГО АБОНЕНТСКОГО ДОСТУПА
© 2009 г. В.Г. Кобак*, В.И. Калюка **
*Донской государственный технический *Donskoy State Technical University,
университет (г. Ростов-на-Дону) Rostov-on-Don
**Высшее военное командное училище связи, **Higher Military School Connection,
г. Новочеркасск Novocherkassk
Данная работа посвящена одной из многочисленных проблем сетей абонентского доступа, а именно проблеме распределения между доступными устройствами поступающих для обработки в абонентские системы сообщений. Данная задача сводится к минимаксной задаче теории расписаний. В работе показано, что наиболее перспективным подходом, является генетический алгоритм. В этом случае полученные решения близки к оптимальным, но не имеют экспоненциального времени решения, что практически подтверждают полученные в работе результаты.
Ключевые слова: минимаксная задача теории расписаний; генетический алгоритм; списочные расписания; точные алгоритмы; параметры генетического алгоритма; метод ветвей и границ.
This work is dedicated to one of the many challenges of subscriber access networks, namely the problem of distribution between the devices available for processing in mobile communications systems. This problem is reduced to a minimax problem of the theory of scheduling. It is shown that the most promising approach is the genetic algorithm. In this case the solutions obtained are close to optimal, but do not have the exponential time solutions, which is practically confirmed the results obtained in the work.
Key words: minimax problem of the theory of scheduling; genetic algoritm; scheduled timetable; the exact algorithms; the parameters of genetic algorithm; the method of branches and borders.
Во всем мире продолжает наращиваться транс- зуют различные методы построения оптимальных
портная составляющая телекоммуникационных сис- расписаний параллельных вычислительных процес-
тем связи, при этом почти не учитываются проблемы сов, разработанные в основном для весьма простых
сетей доступа, а именно сетей беспроводного або- математических моделей параллельных программ и
нентского доступа (СБАД). Однако в [1] достаточно многопроцессорных систем.
обоснованно представлены современные сети доступа Среди них выделяется детерминированная мои показано место СБАД в структуре сетей связи сле- дель, в которой непрерывный поток независимых дующего поколения. Одной из проблем, требующей заданий S = {s1, s2,..., sm} поступает в некоторый
своего разрешения, является проблема распределения момент времени на выполнение на набор идентичных между доступными устройствами поступающих для
Г 1 г г приборов (процессоров) P = {P, P2,..., P„}. Каждое
обработки в абонентские системы сообщения. г г г г i i 2 n>
Распределение поступающих сообщений произво- задание s е S характергоуется дтатетисютъю вы-
дится на участке между оборудованием СБАД и обо- полнения ti ( ti > 0 и ti - целое число) на любом из
рудованием, расположенным в помещении абонента, в приборов
соответствии с адресными признаками, заложенными Следует построить расписание минимальной длив заголовке передаваемых сообщений. В качестве ны, обеспечивающее наименьшее время окончания оборудования абонента в большинстве случаев высту- выполнения потока заданий, с учетом того, что все пает мобильный терминал доступа (Ml^x а оборудо- задания должны быть обслужены и приборы могут вания СБАД - оборудование узла доступа к ресурсам выполнять одновременно только одно задание без телекоммуникационной сети гаази базовые станции возможности организации прерывания выполнения доступа (БСД). Все оборудование обладает набором заданий. Задача составления оптимального расписа-функциональных характеристик, оказывающих суще- ния сводится к разбиению множества S на п непересе-ственное влияние на обработку сообщений [2]. кающихся подмножеств Sj (j = 1,2, ..., п), а в качестве Для решения задачи распределения сообщений в показателя эффективности расписания выступает СБАД необходимо определить загрузку комплекса и в минимаксный критерий: зависимости от загрузки выбрать оптимальное количество МТД и БСД. Для решения этой задачи исполь- T = Jj^T ^ min (1)
где Tj = £ ti общее время загрузки Pj прибора, при
teSj
условиях:
S, n S, = 0, к, I = 1,..., п, к ФI; ¿S, = S .
1=1 1
К настоящему времени известно большое число простых приближенных методов решения минимаксной задачи, среди которых наибольшее распространение получили эвристические алгоритмы, приводящие к построению списочных расписаний. Списочные расписания очень просты в построении и реализации, а также дают вполне удовлетворительное по точности решение (оценки верхней границы отклонения приближенного решения от точного для задач планирования работ приведены в работе [3]). В том случае, когда необходимо получить оптимальное в смысле (1) расписание, применяют точные алгоритмы. К ним относятся следующие алгоритмы, реализованные на основе метода ветвей и границ (МВГ): алгоритм Романовского [4] и алгоритм Алексеева [5]. Рассмотрим более подробно алгоритм Романовского.
Алгоритм Романовского используется только для систем с идентичными приборами и состоит в следующем. Предположим, что известны границы решения Тниж < Т < Тверх. Выбирается некоторое число z е (Тниж, Тверх) и рассматривается z-задача, состоящая в определении такого разбиения, что max Tj < z .
1< j <n
z -задача решается МВГ с односторонним обходом дерева вариантов. При этом условно считается, что п приборов имеют вместимость z и, следовательно, после распределения в приборах должно оставаться
m
свободное место slack = z х п - £ ti. Задания последо-
i=1
вательно укладывают в приборы, заполняя их один за другим, стремясь, каждый раз поместить в прибор самое большое из оставшихся заданий. Остающееся в приборе свободное место будет вычитаться из остатка свободного места slack и этот остаток должен в течение всего вычислительного процесса оставаться неотрицательным. Если slack станет отрицательным, необходимо вернуться и отменить последнее из назначений. Таким образом, если г-задача будет решена, уточняется значение верхней границы Тверх = z , в противном случае - нижней Тнтк = z +1. Далее итерационный процесс можно продолжить.
Следует отметить, что время, затрачиваемое на нахождение оптимального решения этим алгоритмом, существенно зависит как от размерности задачи п х т, так и от структуры вектора ||t||, и так как задача (1) NP-полная [3], то решение задач большой размерности в общем случае практически невозможно.
Генетические алгоритмы - это очень популярные в настоящее время способы решения задач оптимизации, относящиеся к классу направленного случайного поиска. В их основе лежит использование эволюционных принципов для поиска оптимального решения.
Генетический алгоритм является общим алгоритмом решения любой оптимизационной задачи, и при его применении к конкретной необходимо выбрать механизм кодирования параметров задачи в гены особи, определить оптимизационную функцию F , определить набор и вероятность операторов генетического алгоритма и выбрать условие останова. Особенное внимание надо уделять методу кодирования: при некорректном создании преобразовании в задачах теории расписаний могут возникнуть следующие проблемы:
1. В результате преобразования может получиться решение, которое не является корректным по условиям задачи, например работа должна быть назначена на не существующий прибор.
2. Хранение генов в виде слишком большого количества байт приведет к существенному замедлению выполнения оператором генетического алгоритма и к суммарному росту времени счета алгоритма.
Общая схема работы классического генетического алгоритма может быть представлена в следующем виде [6]:
Ш.1 Формирование начального поколения.
Ш.2 Отбор и применение операторов генетического алгоритма для нового поколения.
Ш.3 Проверка условия останова. Если не выполняется, то перейти к Ш.2.
Ш.4 Лучшая особь за все поколения выбирается как найденное решение.
Схема работы генетического алгоритма довольно проста и легко реализуется на современном аппаратно-программном обеспечении. Рассмотрим пример решения по предложенному алгоритму. Решение будем искать для задачи п = 3 , т = 7 с исходным вектором работ £ = [5 10 15 7 4 22 5], параметрами ЭГА Мс1гг = 10, Рсго^ = 0,90, РтШс1гг = 0,05, РтШЬи = = 0,1. Лимит останова N Ит = 50, ЫеП( = 1, где Ысгг -число особей, Рсго^ - вероятность оператора кроссовера, Ртисг1Г - вероятность оператора мутации особи, Ртит - вероятность мутации бита гена, N Ит - условие останова по количеству одинаковых поколений, N гШ - число элитных особей.
Сформируем случайным образом начальное поколение особей (табл. 1.).
Лучшей особью для поколения № 1 является особь а6 с расписанием:
р 4 22 - ¿(р) = 26 R = р2 15 7 - /2(р2) = 22 Рз 5 10 5 /3( рз) = 20
Проведем применение шага Ш.2 ЭГА и сформируем новое поколение № 2 (табл. 2.).
Всего процесс решения состоял из 87 поколений, приведем только последние поколение, для которого выполнилось условие останова алгоритма. Завершающее № 87 поколение представлено в табл. 3.
Таблица 1
Представление поколения № 1
"chr 2 FW F К) F (a2) F Ы F (a„) F (a5) F (a6) F (a7) F Ю F (a,) F (a10)
378 48 41 32 42 37 26 26 37 37 31
Представление поколения № 2
Таблица 2
"chr 2 F(a1) F (a1) F (a2) F Ю F (a4) F (a5) F (a6) F (a7) F ю F (a,) F (a10)
361 26 31 37 27 51 30 41 44 37 37
Представление завершающего поколения № 87 Таблица 3
"chr 2 F(a1) F (a1) F (a2) F (a3) F (a4) F (a5) F (a6) F (a7) F (a8) F (a,) F (a10)
263 24 24 27 24 24 24 44 24 24 24
В результате работы алгоритма из последнего поколения может быть выбрана лучшая особь. Минимальное значение критерия соответствует нескольким особям, в качестве решения можно выбрать любую, например а1. Особь а! представляет собой следующие решение:
pi 22 - -R = p2 15 4 5 p3 5 10 7
fi( pi) = 22 f2( Р2) = 24 f3( Рз) = 22
В процесс решения фиксируется приспособленность лучшей особи и суммарная приспособленность. Процесс изменения данных характеристик представлен на рис. 1. Где непосредственно видно, что, начиная с тридцать седьмого поколения, находится оптимальное распределение, и оно повторяется до восемьдесят седьмого поколения, так как лимит останова у
нас задан пятидесяти. В то же время значение суммарной приспособленности практически остается постоянным во время решения задачи и не связанным с оптимальным распределением.
Таким образом, задача эффективно решена с помощью генетического алгоритма.
Алгоритм Романовского, также как и любой алгоритм класса МВГ, в худшем случае требует полного перебора вариантов, что приводит к невозможности заранее предсказать необходимые временные затраты для какой-либо конкретной задачи.
Эволюционные алгоритмы в отличие от точных алгоритмов не требуют полного перебора, в худшем случае их временные затраты зависят от качества эвристики, положенной в основу работы алгоритма, а также напрямую определяется ограничениями на количество итераций при поиске решения (или общем времени счета).
н §
к &
>у
о
Процесс решения
400 350 300 250 200 150 100 50 0
г 27 26 25 24 23
0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 № поколения
Суммарная
■ Лучшая особь
н
3 В
Рис. 1. Процесс решения
л
m
20 15 10 5 0
Время получения решения
17 117 217 317 417 Число работ
Чем больше пространство поиска, тем труднее генетическому алгоритму найти оптимальное решение. Рост времени (рис. 2) сходимости ЭГА алгоритма при том же увеличении размерности (рис. 3) уже не имеет экспоненциальной зависимости.
Таким образом, генетический подход позволяет производить практически оптимальное распределение сообщений поступающих для обработки на БСД и МТД в СБАД.
Литература
100 98 96 94 92
Рис. 2. Рост размерности - Время
Точность решения
17 117 217 317 417
Число работ
Рис. 3. Рост размерности - Точность Поступила в редакцию
1. Концептуальные положения по построению мультисер-висных сетей на ВСС России. СПб., 2001.
2. Калюка В.И., Говейнович П.А., Хабланова Т.С. Методология оптимизации функциональных характеристик сетей беспроводного абонентского доступа военного назначения // Материалы межвуз. науч.-техн. конф. : в 2 ч. Ч. 1. / Новочерк. высш. военное командное уч-ще связи. Новочеркасск, 2007.
3. Коффман Э.Г. Теория расписания и вычислительные машины. М., 1987.
4. Романовский И.В. Алгоритмы решения экстремальных
задач. М., 1977.
5. Алексеев О.Г. Комплексное применение методов дискрет-
ной оптимизации. М., 1987.
6. Кобак В.Г., Будиловский Д.М. Генетический подход к решению минимаксной задачи в однородных системах обработки информации // ММТТ-19: сб. тр. Воронеж, 2006. Т. 2.
27 апреля 2009 г.
Кобак Валерий Григорьевич - канд. техн. наук, доцент, кафедра «Программное обеспечение вычислительной техники и автоматизированных систем», Донской государственный технический университет. Тел. моб. 8 918-580-21-89.
Калюка Владимир Иванович - канд. техн. наук, доцент, кафедра «Автоматизированные системы управления войсками и связи», Высшее военное командное училище связи. Тел. моб. 8 918-580-21-89.
Kobak Valeriy Grigorievich - Candidate of Technical Sciences, assistant professor, department «Software of Computer engineering and computer-aided system», Donskoy State Technical University. Ph. mob. 8 918-580-21-89.
Kalyuka Vladimir Ivanovich - Candidate of Technical Sciences, assistant professor, department «Computer-aided system by troops and conntction», Higher Military School Connection, Novocherkassk. Ph. mob. 8 928-767-02-86.