Научная статья на тему 'Применение генетических алгоритмов для группировки объектов'

Применение генетических алгоритмов для группировки объектов Текст научной статьи по специальности «Математика»

CC BY
114
40
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук

Аннотация научной статьи по математике, автор научной работы — Пономарев А. В.

В работе рассматривается применение генетических алгоритмов к решению одной из частных задач группировки – оптимальной группировки объектов относительно множества потенциальных центров при заданной стоимости образования групп. Строится модель задачи, допускающая применение генетического алгоритма, предлагается несколько вариантов генетических алгоритмов, отличающихся стратеги­ями селекции и генетическими операторами. Эффективность предложенных вариантов сравнивается на тестовых наборах данных.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Применение генетических алгоритмов для группировки объектов»

ПРИМЕНЕНИЕ ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ ДЛЯ ГРУППИРОВКИ ОБЪЕКТОВ

© Пономарев А.В.*

Санкт-Петербургский государственный электротехнический университет,

г. Санкт-Петербург

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

Рассмотрим задачу оптимальной группировки объектов относительно заданного множества центров с заданной стоимостью образования групп. Данная задача имеет разнообразные практические применения; например, она возникает при попытке сгруппировать источники сырья относительно центров переработки (действующих или предполагаемых) с учетом затрат на транспортировку и организацию переработки [1].

Перейдем к формальной постановке. Пусть S - множество группируемых объектов, n = |S|, а C - множество объектов, которые могут являться центрами групп (потенциальных центров), m = |C|. Пусть также заданы два отображения: D: S х C ^ R, задающее эффект от присоединения элемента множества S к группе с центром в C, и P: C ^ R, задающее стоимость образования группы на основе потенциального центра из множества C (превращения потенциального центра группы в действительный).

Данную задачу можно записать в виде задачи математического программирования следующим образом. Введем бинарные переменные Хр, соответствующие факту вхождения Sj в группу с центром в Ср, и бинарные переменные ур, соответствующие факту образования группы с центром в Ср.

Тогда задача математического программирования, соответствующая поиску оптимальной группировки, записывается следующим образом:

n m m

Максимизировать z = XXxijD(si,c )-Xyp(cj) при ограничениях:

<=i j=i j=i

m

XXj < 1,i e {1,...,n} (1)

j=i

Xj < yj,i e {1,...,n}, j e {1,...,m} j j (2) Xj, yj e {0Д} ()

* Ассистент кафедры Автоматизированных систем обработки информации и управления.

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

Сформулированная задача является задачей линейного программирования с бинарными переменными и решается, как правило, применением различных модификаций метода ветвей и границ. Этот метод, обладая экспоненциальной сложностью, должен с осторожностью применяться к задачам большой размерности (так, решение задачи группировки универсальным решателем SCIP [2] при m = n = 200 на ЭВМ с процессором 2,2 ГГц на некоторых наборах данных превышало 10 минут). В то же время, в ряде приложений нет необходимости в нахождении непременно точного решения - в них могут найти применение приближенные методы решения задачи группировки, а именно стохастическая оптимизация с применением генетических алгоритмов (ГА).

При решении задачи с использованием ГА, необходимо:

1. определить способ представления решений задачи;

2. задать функцию приспособленности;

3. разработать (или выбрать) генетические операторы;

4. определить механизмы селекции и формирования очередной популяции;

5. создать начальную популяцию.

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

Прежде, чем выбрать схему представления, заметим одно свойство рассматриваемой задачи. Пусть Ca œ C - действительное множество центров групп. Можно показать, что оптимальное распределение объектов из множества S по этим группам может быть найдено жадным алгоритмом. А именно, нужно отсортировать в порядке убывания все D(st, cj) и, двигаясь от больших значений D к меньшим, присоединять s к группе с центром в Cj, если s, еще не входит ни в какую группу. Таким образом, решение подзадачи при заданном Ca находится относительно эффективно за O(mn) (с предварительной обработкой сложности O(mn-log(mn)), которую нужно произвести только один раз). Тогда в качестве элемента пространства решений для основной задачи можно рассматривать двоичные вектора длины m, компонент j которых соответствует тому, является ли центр j действительным в рассматриваемом решении.

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

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

рованные операторы для определенных задач. В данной работе исследуется применение к задаче группировки классических операторов кроссовера: одноточечного, двухточечного и однородного (uniform). Вероятность применения кроссовера к отобранной паре хромосом, обычно, выбирается около 0,7-0,8.

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

Два метода селекции получили наибольшее распространение [4, 5]:

- пропорциональный (метод «колеса рулетки»);

- турнирный (наиболее популярна разновидность с размером турнира, равном двум).

Таблица 1

Сравниваемые варианты ГА

Пропорциональный 2-турнир

Одноточечный ГА1 ГА2

Двухточечный ГАЗ ГА4

Однородный ГА5 ГА6

Для сравнения различных видов ГА предлагается использовать наборы с различной структурой оптимального решения. Так, было выделено три типа наборов:

1. большое количество групп небольшого размера (тип А);

2. значительное (порядка корня из п) количество групп среднего размера (тип B);

3. небольшое количество крупных групп (тип С).

Было сгенерировано 6 тестовых наборов данных - по два из каждой группы. Характеристики тестовых наборов и соответствующих оптимальных решений приведены в табл. 2. Во всех наборах т = п и равно значению, указанному в поле «Размер» таблицы.

Таблица 2

Характеристики тестовых наборов данных

Набор Тип набора Размер Количество групп Средний размер группы Значение

1 Тип A 100 58 2,72 1219,76

2 Тип A 200 102 2,96 2426,96

3 Тип B 200 21 10,52 1777,74

4 Тип B 200 24 9,3 1809,64

5 Тип C 200 5 36,6 627,75

6 Тип C 200 4 45,75 672,55

Каждый вариант алгоритма из табл. 1 применяется к каждому из эталонных наборов данных по 10 раз. Значения по 10 прогонам усредняются и графики средних значений, получаемых с различными алгоритмами, сопоставляются по каждому набору данных. Вероятность кроссовера для

всех вариантов алгоритма принимается 0,7, вероятность мутации - 0,002. Во всех исследуемых вариантах применяется элитизм. В начальную популяцию включаются 2 «краевых» случая - хромосомы, состоящие из одних нулей и одних единиц, остальное содержимое начальной популяции заполняется случайно сгенерированными хромосомами. Размер популяции устанавливается равным 50.

Рис. 1. Результат работы исследуемых алгоритмов на наборе 2 (тип А)

Применение алгоритмов к эталонным наборам показало, что все исследуемые разновидности ГА достаточно быстро (за 150-200 поколений) приближаются к оптимальному значению. Причем, в наборах данных типов А и В, некоторые разновидности за это количество поколений находили именно оптимальное решение.

Время анализа 400 поколений на наборах данных размера 200 у всех вариантов лежит в диапазоне 16-20 с.

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

Стабильно невысокую сходимость показал классический алгоритм ГА1 - на всех тестовых наборах скорость роста максимального значения функции приспособленности популяции оказывалась одной из худших.

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

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

Поколенир

Рис. 2. Результат работы исследуемых алгоритмов на наборе 6 (тип С)

На наборах типа В наблюдается строгое разделение: алгоритмы, основанные на селекции с помощью 2-турниров (ГА2, ГА4, ГА6), демонстрируют более быструю сходимость и получение лучших (или не худших) окончательных значений, нежели алгоритмы, основанные на пропорциональном отборе.

На наборах типа С на первых поколениях также заметно лидерство алгоритмов, основанных на турнирной селекции, но после примерно 250 поколений все алгоритмы практически перестают улучшать значения, попадая в различные локальные оптимумы. При этом лучшие значения на 400-ой итерации дают, напротив, именно алгоритмы, основанные на пропорциональном отборе (ГА1, ГАЗ, ГА5).

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

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

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

Список литературы:

1. Мустафин Н., Пономарев А., Савосин С. Методы и алгоритмы группировки геологических объектов // Информационно-измерительные и управляющие системы. - 2009. - Т. 4. - С. 71-74.

2. Achterbeig T., Berthold T., Koch T., Wolter K. Constraint integer programming: a new approach to integrate CP and MIP // Proceedings of the 5th international conference on Integration of AI and OR techniques in constraint programming for combinatorial optimization problems. Springer-Verlag. - 2008. - Р. 6-20.

3. Емельянов В.В., Курейчик В.В., Курейчик В.М. Теория и практика эволюционного моделирования. - М.: Физматлит, 2003.

4. Goldberg D.E., Deb K. A comparative analysis of selection schemes used in genetic algorithms // Foundations of Genetic Algorithms. Morgan Kaufmann. -1991. - P. 69-93.

5. Рутковская Д., Пилиньский М., Рутковский Л. Нейронные сети, генетические алгоритмы и нечеткие системы. - 2-е изд. изд. - М.: Горячая линия-Телеком, 2008. - С. 452.

ОПРЕДЕЛЕНИЕ ПРЕДЕЛЬНЫХ ОБЖАТИЙ ПРИ ОБКАТКЕ ВЫПУКЛЫХ ДНИЩ

© Попова О.В.*, Середа В.Г.*

Донбасская государственная машиностроительная академия, Украина, г. Краматорск

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

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

Согласно этой схемы обкатки, при взаимодействии вращающейся заготовки 1 с инструментом 2 происходит постепенное деформирование ее конца до заданной формы. Таким методом изготовляют баллоны, ресиверы и другие детали, имеющие выпуклые днища. Достоинством процесса являет-

* Аспирант кафедры «Машины и технологии обработки металлов давлением».

* Доцент кафедры «Машины и технологии обработки металлов давлением», кандидат технических наук, доцент.

i Надоели баннеры? Вы всегда можете отключить рекламу.