Методы реализации основных операторов генетических алгоритмов в многоступенчатых сетях

Раздел VI. Вычислительные комплексы нового поколения и нейрокомпьютеры

УДК 681.3.062

Н.И. Витиска, С.В. Гудилов

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

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

Многоступенчатые сети; генетические алгоритмы; оператор кроссинговера; оператор мутации; MCRB; Benes; Dilated Benes.

N.I. Vitiska, S.V. Gudilov GENETIC ALGORITHMS FOR MULTISTAGE INTERCONNECTION NETWORKS OF METHOD BASIC OPERATORS STUDY

The task solution of effectiveness increase of realization of the basic operators of genetic operators is stated on a basis of existing hardwired. The arguments in favour of application of multistage networks are produced as an optimum decision in conditions of modern requirements to the decision task solution of complex character.

Multistage Interconnection Networks; genetic algorithms; crossover operator; mutation's operator; MCRB; Benes; Dilated Benes.

Введение. Автоматизация проектирования - это многоаспектная и многоуровневая научная задача [1]. Широкое применение генетических алгоритмов (ГА) становится все более актуальным в автоматизации проектирования. Существует несколько ключевых этапов реализации ГА, к одному из которых относятся выполнение операторов кроссинговера и мутации [2]. В настоящее время немаловажную роль играет возможность распараллеливания выполнения любых задач вычислительного характера на аппаратном уровне, что особенно актуально при выполнении повторяемых операций в процессе реализации большинства Г А.

В современных теоретических разработках имеется множество способов получения быстрого решения задач генетического синтеза на основе нейронных сетей и других инновационных предложений. С другой стороны, применение уже существующих высокопроизводительных вычислительных комплексов (суперкомпьютеров и мультикомпьютеров [3]) не дает эффективного решения задач дискретного программирования (класса NP-задач1) по причине высоких аппаратных

1 NP (от англ. non-deterministic polynomial) задачи - задачи, которые могут быть решены с помощью недетерминированной вычислительной машины (следующее состояние такой машины не всегда однозначно определяется предыдущими).

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

Настоящая работа показывает преимущества реализации выполнения генетических операторов в многоступенчатых сетях в условиях их параллельной обработки.

1. Виды многоступенчатых сетей. Самой эффективной схемой соединения процессоров с блоками памяти является координатная коммутация [3]. Недостатком координатного коммутатора является быстрорастущее количество коммутирующих элементов (КЭ), определяемое выражением n2, что неприемлемо для больших сетей. В целях сокращения числа КЭ разработаны многоступенчатые сети (Multistage Interconnection Networks), построенные на КЭ размером 2х2 (бэта-элементах, простых коммутаторах), изображенных на рис. 1, а также более сложных КЭ 4х4, 8х8 либо их комбинаций.

Рис. 1. КЭ 2х2 в состояниях «bar»

Принцип работы такого КЭ зависит от кода управления пакетом. Если соответствующее значение кода управления «0» - пакет пересылается на верхний вывод, если «1» - соответственно на нижний. Архитектура сети называется неблокирующей (non-blocking), если одновременно может выполняться коммутация пакетов при любой перестановке путей между входными и выходными портами. Многоступенчатые сети существуют в различных вариациях. Далее будут рассмотрены наиболее известные из них.

1.1. Banyan и Omega. В число наиболее распространенных многоступенчатых архитектур входят баньяноподобные коммутирующие сети Banyan [4] и Omega [3], содержащие по (n/2)log2 n элементов (рис. 2). Достоинством таких сетей является минимальное количество элементов, недостатком - блокируемость.

Рис. 2. Сети Banyan

1.2. Benes. Сеть Бенеша (Benes network) [5] является примером полного разложения координатного коммутатора до простейших переключателей 2х2, состоящую из (n/2)(2log2 n -1) элементов (рис. 3). Достоинством сети Бенеша является ее неблокируемость, недостатком - относительно большее число элементов и ступеней.

Рис. 3. Сеть Benes

1.3. Spanke-Benes. Сеть Spanke-Benes [5] - другой пример неблокирующей архитектуры. Spanke-Benes необходимо п(п -1) / 2 КЭ для сети размером п х п (рис. 4).

Рис. 4. Сеть Spanke-Benes

Недостатками Spanke-Benes являются большое количество элементов, невозможность выделения отдельных блоков и неодинаковый диаметр сети (от n / 2 до n).

1.4. MCRB. Одной из новых многоступенчатых архитектур является Multistage Chordal Ring Based network (MCRB) [6-7] (рис. 5).

a) 6)

Рис. 5. Сеть MCRB в топологическом а) - и многоступенчатом; б) - представлениях

В основе этой структуры лежит хордовое кольцо, которое повышает отказоустойчивость и упрощает возможности масштабирования [7]. Достоинством сети MCRB является упрощенная маршрутизация вследствие аппаратной избыточности, недостатком - большое количество элементов, равное n(log2 n +1).

1.5. Dilated Benes. Dilated Benes [8] - пример расширенной сети Бенеша (рис. 6), содержащей n(2log2 n +1) элементов.

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

Рис. 6. Сеть Dilated Benes

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

Таблица 1

Сравнение перечисленных многоступенчатых архитектур

№ п/п Наименование архитектуры Тип архитектуры Кол-во КЭ Диаметр сети

1 Banyan и Omega блокирующая n, -10g2 n log n

2 Benes неблокирующая n -(21og2 n -1) 1 n ÖQ (N

3 Spanke-Benes неблокирующая n r 14 2 -1) от n до 2 n

4 MCRB неблокирующая n(1og2 n + 1) 1og2 n + 1

5 Dilated Benes неблокирующая n(21og2 n + 1) 21og2 n +1

Т аблица 2

Числовые зависимости количества коммутирующих элементов от количества портов в перечисленных многоступенчатых сетях

№ п/п Архитектура Кол-во портов, n

16 32 64 128 256 512 1024

1 Banyan, Omega 32 80 192 448 1024 2304 5120

2 Benes 56 144 352 832 1920 4352 9728

3 Spanke-Benes 120 496 2016 8128 32640 130816 523776

4 MCRB 80 192 448 1024 2304 5120 11264

5 Di1ated Benes 144 352 832 1920 4352 9728 21504

2. Выбор многоступенчатой сети для реализации параллельного выполнения ГА в многоступенчатых сетях. Прежде всего, для реализации генетических операторов посредством многоступенчатых сетей необходимо определить те архитектурные параметры, которые нужно взять за основу на пути к реализации поставленной задачи.

1. Количество элементов. Рекомендуется использовать архитектурные решения с меньшим количеством элементов. Согласно данным (см. табл. 2), сеть Spanke-Benes содержит наибольшее количество элементов.

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

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

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

Из табл. 3 следует, что по сравнению с сетью Benes, сеть MCRB имеет на 20 % больше элементов, в 2 раза большую ширину, но при этом 1,7 раза меньшую длину. Но поскольку основным условием является параллельность выполнения ГА, необходимо в первую очередь учитывать длину сети. Сеть Dilated Benes обладает преимуществами MCRB, но содержит значительно большее количество элементов и ступеней. Следовательно, из всех перечисленных архитектур, для решения поставленной задачи наиболее подходит Multistage Chordal Ring Based network, как неблокирующая сеть с достаточной степенью параллельности и приемлемым количеством элементов.

Т аблица 3

Количественное сравнение сетей Benes, MCRB и Dilated Benes при n=256

Архитектура КЭ, шт. Ширина сети, портов Длина сети, ступеней

Benes 1920 128 15

MCRB 2304 256 9

Di1ated Benes 4352 256 17

3. Реализация операторов кроссинговера и мутации в многоступенчатых сетях. Наиболее часто применимыми операторами ГА являются различные виды операторов кроссинговера и мутации. Основная функция оператора кроссинговера (ОК) - создавать хромосомы потомков на основе различного скрещивания родителей. Оператор мутации (ОМ) необходим потому, что предотвращает потерю важного генетического материала. Обычно ОМ является одноточечным оператором, который случайно выбирает ген в хромосоме и случайным образом меняет его на рядом расположенный ген [2].

Поскольку в сети МСЯБ число КЭ в ступени равно числу портов - мы имеем возможность выделить каждому процессору свою отдельную линию для связи с памятью. В этом случае, для параллельной передачи пакетов (от 0 к 0, от 7 к 7 и т.д.) достаточно записать в поле адреса пакета коды управления, приведенные в табл. 4.

Т аблица 4

Зависимость значения поля адреса пакета от значения портов источника/получателя

№ порта Код управления

0 - 7 0000

8 - 11 1000

12 - 13 1100

14 1110

15 1111

Но, с точки зрения аппаратной логики строения сети ЫСЯБ, достаточно аппаратно проинвертировать часть КЭ сети и использовать 0000 в качестве адреса. В этом случае мы добьемся ситуации, когда по умолчанию все пакеты отправляются слева направо к КЭ с тем же порядковым номером в следующей ступени. К тому же, мы получаем возможность отказа от использования управляющего кода в поле адреса пакета, что, в свою очередь, ведет к исключению необходимости наличия самого поля адреса в пакете.

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

Рис. 7. Настройка сети ЫСКБ для режима параллельной передачи пакетов без

применения кода управления

В табл. 5 показаны условия инвертирования КЭ в зависимости от маршрута. Несмотря на более сложные траектории движения пакетов в направлении портов с меньшими адресами - общие закономерности перемещения пакетов в сети МСЯБ зависят исключительно от модуля значения смещения в двоичном представлении, а не от направления или сложности их траекторий.

И этой таблицы легко определить закономерность инвертирования КЭ 2х2, которое необходимо только в двух случаях (без учета знакового бита при бинарном кодировании значения 5):

1) Текущая ступень является старшей и значение бита соответствующего разряда в величине смещения равно «1».

2) Значение бита текущего разряда в величине смещения отличается от значения в предыдущем разряде.

Таблица 5

Условия инвертирования КЭ в сети МСЯВ для различных значений смещения адресации пакета

Величина смещения, 5 № ступени, к Примечание

БЕС БШ БЕС БШ 3 2 1 0

0 0 0000

1 0 0001 -15 1 0001 инв Подходит для ОМ

2 0 0010 -14 1 0010 инв инв

3 0 0011 -13 1 0011 инв

4 0 0100 -12 1 0100 инв инв

5 0 0101 -11 1 0101 инв инв инв

6 0 0110 -10 1 0110 инв инв

7 0 0111 -9 1 0111 инв

8 0 1000 -8 1 1000 инв инв Подходит для ОК

9 0 1001 -7 1 1001 инв инв инв

10 0 1010 -6 1 1010 инв инв инв инв

11 0 1011 -5 1 1011 инв инв инв

12 0 1100 -4 1 1100 инв инв

13 0 1101 -3 1 1101 инв инв инв

14 0 1110 -2 1 1110 инв инв

15 0 1111 -1 1 1111 инв Подходит для ОМ

В соответствии с данными таблицы (см. табл. 5), для реализации ОК (5 =8 и -8) достаточно подать внешнее управление лишь на две старшие ступени, а для реализации ОМ (5 =1 и -1) - на младшую и старшую ступени. Следовательно, посредством соединения КЭ между двумя старшими и младшими ступенями появляется возможность вообще отказаться от ступеней, которые не используются при выполнении ОК и ОМ, как показано на рис. 8.

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

ступеней

Здесь, 1-я точка кроссинговера находится между портами 1а и 2а первой хромосомы (соответственно 1Ь и 2Ь второй хромосомы). 2-я точка кроссинговера

находится между портами 4а и 5a (4b и 5b). В ОМ бит 3b хромосомы заменен находящимся рядом 4b. Из анализа рисунка (см. рис. 8) следует, что для ОМ, несмотря на относительно сложный маршрут для сети кольцевой архитектуры (от порта 4b на порт 3b) - траектории движения пакетов не пересекаются.

Т.о, после исключения ступеней с номерами от 1 до k-2, мы приходим четырехступенчатой сети всегда, независимо от ее размера с количеством элементов, определяющимся линейным выражением 4n. Назовем ее сокращенной MCRB (Truncated MCRB). При сравнении с сетью MCRB, выполняется неравенство 4n < n(log2 n +1) при любом значении n>8. Например, при n=256, получим 1024<<2304, а при n=1024 соответственно 4096<<11264. На рис. 9 изображен график, демонстрирующий, что полученная сеть содержит гораздо меньше элементов по сравнению со всеми вышеперечисленными сетями. Согласно графикам, при n>256 сокращенная MCRB по компактности превосходит даже баньяноподобные сети.

Рис. 9. Зависимости количества коммутирующих элементов от количества портов в перечисленных многоступенчатых сетях

Заключение. Посредством отказа от кода управления пакета и исключения неиспользуемых ступеней мы получили следующие преимущества.

1. Появилась возможность одновременной настройки всей сети вместо предварительной и потактовой настроек в каждой ступени маршрутизации.

2. Предложенная возможность исключения неиспользуемых КЭ позволяет значительно сократить размеры - сеть содержит не более 4-х ступеней (см. рис. 8).

3. При исключении неиспользуемых КЭ существенно сокращается количество элементов сети (для п=256 - в 2,25 раза, п=1024 - в 2,75 раза) - зависимость сложности сети от ее размера становится линейной (см. рис. 9).

Возможность выполнения операторов мутации и кроссинговера в многоступенчатых сетях позволит существенно сократить время на выполнение алгоритмов САПР в многопроцессорных ЭВМ данного типа.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Чернышев Ю.О., Венцов Н.Н. Исследование вариантов оптимизации информационного обеспечения САПР СБИС, в том числе и нанометровой геометрии, при помощи методов эволюционной и параметрической адаптации // Известия ЮФУ. Технические науки. Тематический выпуск «Интеллектуальные САПР». - 2008. - № 9 (86). - С. 60-64.

2. Курейчик В.В., Сороколетов П.В. Концептуальная модель представления решений в генетических алгоритмах // Известия ЮФУ. Технические науки. - 2008. - № 9 (86). - С. 7-12.

3. Танденбаум Э. Архитектура компьютера. Питер: 4-е издание.- 2003. - 698 с.

4. http://www.laynetworks.com/Banyan%20Switch.htm (дата обращения: 17.06.2008).

5. Rugsachart A. Time-Synchronized Optical Burst Switching. M.S. in Telecommunications,

University of Colorado, 2000. - P. 33-34. URL: http://etd.library.pitt.edu/ETD/available/etd-08152007-153520/unrestricted/RugsachartArtprechaAug07.pdf (дата обращения:

14.03.2008).

6. KechadiM.T. A study of a new processor-memory interconnection network for mutliprocessor systems // IEEE Journal of Parallel and Distributed Systems, 2002.

7. Aljundi A.C. Une Méthodologie Multi-Critères Pour l’Évaluation de Performance Appliquée aux Architectures de Réseaux d’interconnexion Multi-Étages. Laboratoire d’informatique Fondamentale de Lille, 2004. - P. 34, 60-63. URL: http://www2.lifl.fr/west/publi/ Al-ju04phd.pdf (дата обращения: 29.10.2008).

8. Eldin F., Suliman M. Design of Nonblocking High-Density Photonic. University Technology Malaysia, 2004. - P. 41-46. URL: http://eprints.utm.my/3978/1/FakherEldinMohamed Suli-manPED2004TTT.pdf (дата обращения: 14.03.2009).

Витиска Николай Иванович

Таганрогский государственный педагогический институт.

E-mail: prorector1@tgpi.ru.

347900, г. Таганрог, ул. Инициативная, 48.

Тел.: 88634605397.

Ректорат; 1-й проректор по учебной работе; профессор.

Vitiska Nikolay Ivanovich

Taganrog Pedagogical University.

E-mail: prorector1@tgpi.ru.

48, Initsiativnaya Street, Taganrog, 347900, Russia.

Phone: 88634605397.

Administration; 1st pro-rector on study; professor.

Гудилов Сергей Витальевич

Таганрогский государственный педагогический институт.

E-mail: gsv7819@mail.ru.

344101, г. Ростов-на-Дону, пр. Стачки, 5, кв.12.

Тел.: 89188919102.

Кафедра информатики; аспирант.

Gudilov Sergey Vitalyevich

Taganrog Pedagogical University.

E-mail: gsv7819@mail.ru.

5, ap. 12, Stahki Avenue, Rostov-on-Don, 344101, Russia.

Phone: 89188919102.

Department of Information Science; postgraduate student.