Поиск рациональных параметров стержневых металлоконструкций на основе адаптивной эволюционной модели

Расчет строительных конструкций

ПОИСК РАЦИОНАЛЬНЫХ ПАРАМЕТРОВ СТЕРЖНЕВЫХ МЕТАЛЛОКОНСТРУКЦИЙ НА ОСНОВЕ АДАПТИВНОЙ ЭВОЛЮЦИОННОЙ МОДЕЛИ

А.В. АЛЕКСЕИЦЕВ, канд. техн. наук, доцент, Н С. КУРЧЕНКО, аспирант

Брянская государственная инженерно-технологическая академия 241037, г. Брянск, ул. Брянского фронта, д.12, кв. 29. E-mail: aalexw@mail. ru

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

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

Проблеме оптимизации стержневых конструкций с применением генетических алгоритмов в отечественной и зарубежной литературе уделяется все большее внимание [1-5]. Однако применение таких алгоритмов для решения экстремальных задач с большим числом варьируемых параметров часто приводит к попаданию в локальные оптимумы или сопровождается низкой сходимостью алгоритма. Нередко в процессе поиска появляются «пустые» популяции, в которых отсутствуют особи, удовлетворяющие поставленным ограничениям. Многие авторы [4, 5] используют для решения данных проблем штрафные функции, которые допускают включение неработоспособных особей в популяции с учетом накладываемых на эти особи штрафов по критерию оптимизации. Однако такой подход требует анализа штрафных функций, которые могут подбираться индивидуально для каждого типа решаемых задач.

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

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

n

^ Ajlj ^ min ,

i=1

где Ai - площадь поперечного сечения профиля в i-м стержне; li - длина стержня; n - число стержней в конструкции. Оценку напряженного и деформированного состояния выполняем с использованием метода конечных элементов. Учитываем следующие ограничения:

1) условие равновесия стержневой конструкции, дискретизированной согласно методу конечных элементов:

[K]5j0 = Rjо , jo = 1...m0,

где [К] - матрица жесткости конечно-элементной модели несущей системы; 5, Rj0 - векторы перемещений и узловых сил-го нагружения; то - число вариантов нагружений;

2) условие прочности и устойчивости стержней в соответствии со СНиП II-3-81* «Стальные конструкции»;

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

4) общая устойчивость конструкции.

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

Рис. 1. Блок-схема алгоритма оптимизации

Формирование начальной популяции. Каждый вариант конструкции представим в виде особи, набор генов которой определяет ее варьируемые параметры. Значения параметров, допускаемых для выбора в процессе оптимизации, подбираются с учетом предварительного расчета конструкции. Особь X запишем в следующем виде:

х  a\\, аХ2,...,aij,...,an,Ng. ,i e [1,2...n], j e [1,2...Ngf ],

где ai,j - идентификатор, связанный со значением параметра (ген); n - число варьируемых параметров; i - номер параметра; j - номер значения параметра. Каждый варьируемый параметр представляем в виде Ngi кортежей, отсортированных по возрастанию:

Pi = {(агд,4), (аг-,2, A2), ..., (ai,j,Aj), ..., (a^,Лщг)},

где Aj - ANgi - значения варьируемых параметров; Ngi - число допустимых

значений i -го параметра.

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

a1,j, a2,j,..., an,j

V a1,j, a2,j,...,an,j

Xq+j : a1,Ngi, a2,Ngi,...,an,Ngi

Xn  " p a1,Ng^ -k, a2,Ngi -k,...,an,Ngi-k

В выражении (2) индекс k = Nр - q , индекс у для каждого параметра случайным образом выбирается на интервале [1; Ng^ ]. Расчеты показывают, что при условии > k целесообразно принимать параметр q < 0,3^ . Проиллюстрируем использование выражения (2). Пусть поколение состоит из 7 особей, каждая из которых содержит 8 варьируемых параметров, каждый параметр может принимать 10 различных значений, а величина q = 2 . Формула примет вид:

Xi : 2, 3, 7, 1, 6, 9, 10, 1

X2  4, 4, 5, 2, 8, 7, 9, 2

X 3  10, 10, 10, 10, 10, 10, 10, 10

X4 : 9, 9, 9, 9, 9, 9, 9, 9

X 5  8, 8, 8, 8, 8, 8, 8, 8

X 6  7, 7, 7, 7, 7, 7, 7, 7

X 7  6, 6, 6, 6, 6, 6, 6, 6

При такой схеме формирования начальной популяции в поколении будет присутствовать, по крайней мере, один вариант конструкции, удовлетворяющий поставленным ограничениям. Например, это особь Х3, для которой каждый из варьируемых параметров имеет максимальное значение, идентифицируемое номером 10. Описанный способ формирования начальной популяции в большинстве случаев решает проблему «пустых» популяций.

Формирование следующей популяции. Разобьем популяцию, состоящую из N особей на две части. Первая часть будет содержать К особей, вторая - К2 особей. Соотношение величин К и К2 зависит от чувствительности целевой

функции (1) к изменениям варьируемых параметров. Оптимизационные расчеты конкретных стержневых систем показывают, что для получения экономичной итерационной процедуры целесообразно при Nр > 20 принимать отношение КЩ = 0,6..0,8.

Для формирования особей первой части популяции в итерационном процессе применяются адаптивные генетические операторы. При этом в последующее поколение помещаются работоспособные особи предыдущего поколения с наилучшим критерием выживаемости, модифицированные этими операторами. Под критерием выживаемости понимается минимальное значение объема конструкции, вычисляемое по формуле (1). Неработоспособные особи заменяются вариантами из базы данных лучших вариантов объектов [6]. Вторая часть популяции формируется на основе этой базы. Из базы методом рулетки [6] выбираются К2 особей и копируются в текущую популяцию. Затем для каждой скопированной особи выполняется ряд преобразований:

1) случайным образом на интервале [1; k  п ] выбирается число р генов,

подвергающихся изменениям. Здесь k - задаваемое число, зависящее от п. Установлено, что при оптимизации конструкций с числом варьируемых параметров п е [5; 20] целесообразно принимать k е [0,1; 0,4]. Значение р округляется до целого;

2) случайно определяются локусы (номера) генов, в которых будут происходить изменения;

3) определяется интервал изменения[-т; т] для выбранных величин а* уу . Величина т - задаваемое целое число, т е [1; п -1];

4) для выбранных генов выполняются изменения параметров в соответствии с зависимостью:

а7,у =

а*,у + Х1, Х1 е [0;т], если у < т;

а*,у + X2, Х2 е [-т;т], если т < у < (п - т);

а*,у +Хз, Х3 е [0;т], если у > (п - т).

Здесь а* у - идентификатор (ген) 7-го параметра, которому соответствуету-е

значение после изменения; х - Х3 - случайно выбираемые из своих интервалов целые числа. Приведем пример использования зависимости (3). Рассмотрим особь Х1, состоящую из 10 генов, каждый параметр может принимать 8 значений, нумеруемых от 1 до 8:

Х1 : | 8, 2, 4, 4, 5, 6, 1, 2, 2, 3

Принимаем k =0,4. Случайным образом на интервале [1;3] выбираем число р генов, подверженных изменениям. Пусть выбрано значение р=3. Полагаем, что для рассматриваемой особи случайно выбраны первый, третий и восьмой гены, в которых будут происходить изменения, и задана величина т = 2. Тогда особь может принять несколько возможных вариантов (приведем, например,

пять из них):

X : 7, 2, 2, 4, 5, 6, 1 , 1, 2, 3

X : 6, 2, 3, 4, 5, 6, 1 , 3, 2, 3

X : 7, 2, 4, 4, 5, 6, 1 , 2, 2, 3

X : 8, 2, 6, 4, 5, 6, 1 , 1, 2, 3

X : 6, 2, 5, 4, 5, 6, 1 , 2, 2, 3

Из всех возможных вариантов сгенерированных таким способом особей в популяцию включаются те, для которых выполняется условие:

XVI < V? < VI,

где VI- объем особи, выбранной методом рулетки из базы данных лучших вариантов объектов; V? - объем модифицированной особи X, х - коэффициент, принимаемый равным 0,7-0,9. Для поиска особей, удовлетворяющих неравенству (4), организуется цикл с предусловием вида V? > V( N . Значение функции ( N зависит от номера текущего поколения N : /(М) = 1 + 2 / N.

Адаптивные генетические операторы. Рассмотрим построение оператора регулируемой мутации. Известный оператор одноточечной мутации [6] модифицируется следующим образом.

1) Вычисляется параметр t, определяющий число генов, в которых будут изменены значения параметров:

t =

где С - задаваемый коэффициент, зависящий от п . Рекомендуется принимать С = 2...5 при п е [6..30]. Величина t округляется до целого числа.

2) Случайным образом для особи выбираются гены, которые будут изменяться.

3) Реализуется случайное изменение генов и связанных с ними соответствующих значений параметров.

Проиллюстрируем использование оператора на родительской особи Х1, состоящей из 8 генов, каждый ген которой может принимать значение от 1 до 5. Зададим С = 3. С учетом выражения (5) получим:

X1: 4, 4, 5, 5, 1, 2, 2, 3

N =10 t =2 X •• 5, 1, 5, 5, 1, 2, 2, 3

N =100 t=1 X •• 4, 4, 5, 3, 1, 2, 2, 3

N=1000 t =0 Х1 •• 4, 4, 5, 5, 1, 2, 2, 3

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

Регулируемая инверсия. Оператор целесообразно использовать для особей при п > 10. Выполняются следующие этапы.

1) Выбор случайным образом р точек инверсии, делящих особь на части. 2) Инверсия генов в пределах случайно выбираемых таких частей. Параметр р вычисляется по формуле р = 1 + ¡я(NД0 , где ^ - задаваемый коэффициент. Приведем пример выполнения инверсии генов особи Х1 : на 10-м, 100-м и 1000-м поколении, задавая ^=1.

Х1 •• а, ь, с, d, е, g, К

N =10 р =2 Х1 •• а, d, с, ь, К, g, /, е

N =100 р =3 Х1 • ь, а, с, d, е, 1 & /, К

N=1000 р = Х •• 1 ь, а, d, с, /, е, К, я

Здесь при р = 2 и р = 3 случайно выбрано по две части особи, подвергаемые инверсии, при р =4 - четыре части. Эти части затушеваны серым цветом. Точки инверсии показаны вертикальными линиями. Идентификаторы а^ введены для упрощения записи результата.

Регулируемый кроссинговер. Этот оператор является модификацией известного оператора одноточечного кроссинговера [6]. В ходе итерационного процесса изменяется число точек кроссинговера на основе формулы (5). При п > 10 рекомендуется принимать ^ = 3...6.

Проиллюстрируем работу оператора при t =2 и t=1 (рис. 2).

Рис. 2. Работа оператора кроссинговера

При t = 0 обмена параметрами не происходит. Отключение оператора может выполняться, когда в ходе оптимизации получено решение, близкое к глобальному экстремуму. На рисунке 2 цифрами у штриховых линий показаны номера точек кроссинговера и справа результат обмена параметрами. Примеры оптимизации стержневых конструкций. Рассмотрим оптимизацию стандартной 10-стержневой консольной фермы (рисунок 3). Этот пример используется многими авторами [4, 5, 7] для оценки работоспособности алгоритмов оптимизации и скорости их сходимости. Для удобного сравнения результатов в качестве критерия рациональности конструкции принимаем минимум массы стержней. Использовались следующие исходные данные: плотность материала стержней 2,76799 г/см3, модуль упругости материала Е = 68947,57 МПа, Р = = 444,8222 кН, I = 9,144 м. Учи-Рисунок 3 - Тестовая ферма тывались ограничения: допускае-

мые напряжения в стержнях не должны превышать по модулю 172,368 МПа, максимальные перемещения |8| каждого из узлов по вертикали и по горизонтали не должны превышать 5,08 см. Условие устойчивости стержней не учитывается. Независимо варьировались площади поперечных сечений каждого из стержней. Для каждого варьируемого параметра использовался набор дискретных значений площадей (см2) из работы [5]: ^={10,451592; 11,61288; 12,838684; 13,741908; 15,354808; 16,903192; 16,967708; 18,580608; 18,903188; 19,935444; 20,193508; 21,806408; 22,387052; 22,90318; 23,419308; 24,774144; 25,032208; 26,967688; 27,225752; 28,967684; 29,612844; 30,96768; 32,064452; 33,032192; 37,032184; 46,580552; 51,419252; 74,1934; 87,0966; 89,67724; 91,61272; 99,9998; 12

Таблица 1. Сравнение

результатов оптимизации_

Номер Площади стержней

103,2256; 109,03204; 121,29008; 128,38684; 141,9352; 147,74164; 170,9674; 193,548; 216,1286}. В процессе оптимизации на каждой итерации учитывалось по 20 особей.

Масса найденной рациональной конструкции составила 2490,55 кг, при этом в среднем потребовалось выполнить менее 4600 расчетов конструкции и пройти 230 итераций поиска. Сопоставление результатов оптимизации представлены в табл. 1. Полный перебор вариантов связан с проведением 1,34 • 1016 расчетов конструкции. При оптимизации этой фермы с использованием простого генетического алгоритма потребовалось сделать около 60000 расчетов, проходя менее 3000 итераций.

Рассмотрим другой пример. На рисунке 5 показана двухопорная 15-стержневая ферма. Исходные данные взяты из работ [4, 7]. Модуль упругости материала стержней Е = 206,84 МПа, наибольшие напряжения по модулю не должны превышать 344,74 МПа. Задавалось: L= 101,6 см; Н = 76,2 см; Р = 88,964 кН. Набор дискретных значений варьируемых параметров берем из работы [4] в виде множества площадей поперечных сечений стержней (см2): ^ = {0,64516; 1,29032; 1,93548; 2,58064; 3,2258; 3,87096; 4,51612; 5,16128; 5,80644; 6,4516; 7,09676; 7,74192; 8,38708; 9,03224; 9,6774; 10,32256}, нумеруемых от 1 до 12.

площади Работа Данная

[5] статья

А1 216,1286 216,1286

А2 10,45159 10,45159

А3 147,7416 147,7416

А4 99,9998 91,61272

А5 10,45159 10,45159

А6 10,45159 10,45159

А7 46,58055 51,41925

А8 147,7416 147,7416

А9 141,9352 141,9352

А10 10,45159 10,45159

М, кг 2494,46 2490,55

5, см 5,0546 5,0769

Рис. 5. Конечно-элементная модель фермы

В соответствии с условиями задачи, описанными в работе [4], ограничений по перемещениям узлов фермы не вводится и не используется условий симметрии. В процессе оптимизации на каждой итерации учитывалось по 24 особи. В результате параметрического синтеза была получена симметричная ферма с наименьшим объемом 4161,27 см3, показанная на рис. 6.

Процесс поиска решения длился в среднем около 760 поколений, при этом было выполнено 18240 расчетов. Простой генетический алгоритм позволил получить такое же решение в среднем за 4500 итераций, при этом потребовалось выполнить около 108 000 расчетов. Полный перебор вариантов связан с проведением 1,54^ 1016 расчетов конструкции.

1-11 - номера выбранных из множества А рациональных площадей

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

Л и т е р а т у р а

1. Юрьев, А.Г. Генетические алгоритмы оптимизации строительных конструкций [Текст] / А.Г. Юрьев, С.В. Клюев // Образование, наука, производство и управление в XXI веке: Матер. Междунар. науч. конф. В 4 т. - Старый Оскол: Изд-во СТИ МИСиС,

2004. - Т. 4. - С. 238-240.

2. Ольков, Я.И. Автоматизированное оптимальное проектирование пространственных металлических стержневых конструкций с использованием алгоритмов структурной оптимизации [Текст] / Я.И. Ольков, А.В. Андроников // Известия вузов. Строительство, 2003. - №12. - С. 8-13.

3. Серпик, И.Н. Структурно-параметрическая оптимизация стержневых металлических конструкций на основе эволюционного моделирования [Текст] / И.Н. Серпик, А.В. Алексейцев, Ф.Н. Левкович, А.И. Тютюнников // Известия вузов. Строительство. -

2005. - №8. - С. 16-24.

4. Balling, R. Multiple optimum size/shape/topology designs for skeletal structures using a genetic algorithm [Text] / R. Balling, R. Briggs, K. Gillman // Journal of Structural Engineering. ASCE. - 2006. - Vol. 132. - P. 1158 -1165.

5. Nanakorn, P. An adaptive penalty function in genetic algorithms for structural design optimization [Text] / P. Nanakorn, K. Meesomklin // Computers and Structures. - 2001. -Vol. 79.- Р 2527-2539.

6. Серпик, И.Н. Генетические алгоритмы оптимизации металлических строительных конструкций: Монография [Текст] / И.Н. Серпик, А.В. Алексейцев, А.А. Лелетко // Под общ. ред. Серпика И.Н. - Брянск: Изд-во БГИТА, 2010. - 187 с.

7. Su, R. Truss topology optimization using genetic algorithm with individual identification technique [Text] / R. Su, L. Gui, Z. Fan // Proceedings of the World Congress on Engineering. July 1 - 3, London, U.K. - 2009. - Vol. 2. - Р. 45-56.

SEARCHING THE RATIONAL PARAMETERS OF BAR STEEL STRUCTURES BASED ON ADAPTIVE EVOLUTIONARY MODEL

A.V. ALEKSEYTSEV, N.S. KURCHENKO

An iterative optimization scheme of metal beam structures is developed with using a genetic algorithm with alternative ways of forming populations and adaptive mutation operator, crossover and inversion. This algorithm allows solving large problems to avoid occurrence of "empty" populations, has a relatively low complexity and provides opportunity to obtain new rational decisions. The authors consider the standard examples of optimization of beam carrying systems.

KEY WORDS: parametric optimization, genetic algorithm, adaptive operators, mutation, crossover, inversion