Научная статья на тему 'Генетические алгоритмы и их применение для оптимального проектирования строительных конструкций'

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

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

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

Юрьев А. Г., чл.-корр. РАЕ, д-р техн. наук, профессор, MICE (Великобритания),

Лесовик Р.В. канд. техн. наук, доцент, Клюев С. В., проф. РАЕ, канд. техн. наук, доцент,

Клюев А. В., студент

Белгородский государственный технологический университет им. В. Г. Шухова

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

Генетические алгоритмы (ГА) получили развитие в середине 60-х годов 20-го в. благодаря трудам Дж. Холланда. Они имитируют эволюционный процесс при особом акценте на генетические механизмы, т.е. наследование и рекомбинацию генов. Осуществляется это некоторым числом (популяцией) искусственных хромосом (индивидов). Каждая хромосома содержит п генов, которые соответствуют п искомым переменным оптимизационной задачи.

Генетические алгоритмы находят эффективное применение для оптимального проектирования строительных конструкций [1, 2].

1. Основные понятия

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

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

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

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

Популяция - количество индивидов одной генерации, состоящих в конкуренции друг с другом.

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

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

2. Генетические алгоритмы

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

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

2. Оценка индивидов. Каждому из новорожденных индивидов необходимо на основании целевой функции определить фитнес. После этого можно начать петлю генераций в стремлении улучшить фитнес индивидов.

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

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

5. Мутация изменяет отдельные гены генопула. Благодаря этому при ГА генопул должен обновляться, потому что с размножением генов шла бы потеря многообразия генопула обычно уже после малого числа генераций.

6. Оценка индивидов. После того как путем рекомбинации и мутации хромосомы индивидов изменены, необходимо для каждого из новорожденных определить фитнес.

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

8. Критерий прекращения определяет длительность процесса оптимизации и имеет решающее значение для оценки результата. Используются два варианта формулировки критерия прекращения: 1) контроль фитнеса, в результате которого процесс прекращается, если в рамках установленного числа генераций максимальная величина фитнеса в популяции кардинально не улучшается; 2) установление числа генераций.

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

Рис. 1. Генетический алгоритм

3. Кодирование генов

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

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

3.1. Бинарное кодирование

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

Пример. Числовая область 0...5; точность 0,01; воз-

можное число значений 5/0,01=500; необходимые биты:

28 = 256 < 500 < 29 = 512 , т.е необходимо 9 битов.

Оптимизационная задача требует одного пространства, ограниченного верхним и нижним пределами [u,,o. je R, u. < o. для каждой переменной xr Сумма битов переменных составляет бинарный вектор (хромосому). Все биты, которые представляют искомую переменную, называются геном. С помощью генообразно-го способа действия можно из бинарных векторов получить кодированные переменные значения и начать все снова. Это происходит для каждого гена хромосомы по формуле (1). Рассмотрим г-й ген. Он имеет длину Ц битов, и на нем кодируется значение переменной xt. aiz означает бит с номером z (z = 1,2,..., Ц) гена. Итак,

x, = u, +

2Ц -1

( Ц

Ёa,

(Ц- z + 1)

Пример. Числовая область -1...2; точность 0,1; воз-2-(-1)

можное число значений

I4 _ 1 г ^ 1П О5

0,1

= 30; необходимые

биты: 2 = 16 < 30 < 2 = 32, т.е. необходимо 5 битов. 00000 = -1 щи = 2

11001 = -1 +—^^ (1- 24 +1- 23 + 0 • 22 + 0 • 21 +1- 20)1,4. 25 -1 >

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

Пример. Числовая область - 500...500; точность 0,000001; 100 искомых переменных; возможное число

значений [500 - (-500)] / 0,000001 = 109; необходимые

биты: 229 = 536870912 < 109 < 230 = 1073741824; т.е. необходимо 30 битов на одну искомую переменную и 30 100 = 3000 битов; таким образом, размер пространства поиска - 2 3000.

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

Пример.100000000000^2048 100000000001 ^2049 011111111111^2047 000000000001 ^1 необходима инверсия одного бита

инверсия всех битов имеет большое влияние

Представленный ниже код Грея часто применяется, чтобы по меньшей мере отчасти решить эту проблему.

3.2. Реальное кодирование

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

4. Селекция

При формулировании ГА целесообразно различать детерминистскую и стохастическую селекции.

4.1. Детерминистская селекция

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

4.2. Стохастическая селекция

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

Дополнительное селекционное давление имеет смотря по комбинации возможностей различное действие и возможные регулируемые величины. Введем обозначения: ц - число индивидов в популяции; р - дополнительное селекционное давление; £ - фитнес индивида г; гапк1 - ранг индивида г; рм - величина отверстия (селекционной вероятности) индивида г.

1. Фитнес и линейное давление

= f / Ё f

(2)

2. Фитнес и экспоненциальное давление

P.j =

f / £ f

p > 0.

(3)

3. Ранг и линейное давление

р = p- (rank, - i)^-^, 1 < p < 2 . д -1) F

4. Ранг и экспоненциальное давление

\ ( rank, -1)

Psj = P (i - P )

i -10° < p < i.

(4)

(5)

После этого следует еще одна общая пропорциональная корректировка величш р!,, так чтобы сумма всех отверстий составила 1:

£ p*;=1.

(6)

Равномерно распределенное случайное число между 0 и 1 устанавливает тогда отбираемый индивид.

5. Воспроизводство

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

Опер ация кр оссинговера действует по пр авилу: двое родителей производят двух потомков.

5.1. Одноточечный кроссинговер

На основе равномерного распределения для каждой пары родителей определяется точка кроссинговера с между 1 и Ь - 1. Во время обмена справа от точки с возникают в рекомбинации 2 потомка:

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

стве поиска могут быть достигнуты легче, чем другие. Одноточечный кроссинговер имеет высокое позиционное уклонение [3, 4].

5.2. Многоточечный кроссинговер

На основе равномерного распределения для каждой пары родителей п (п > 1) определяются точки кроссинговера между 1 и Ь -1. Они идентичны для обоих родителей. Пронумеруем возникающие в хромосомах отрезки, начиная слева. Все отрезки обмениваются со своим номером:

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

5.3. Кроссинговер с перемешиванием

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

Значение генов должно сохраняться. Это достигается посредством возвращения, так как гены после крос-

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

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

6. Мутация

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

Мутации при ГА представляют собой подчиненный оператор, однако несмотря на это ими не пренебрегают. Главная задача мутаций состоит в том, чтобы открыть

новые области пространства поиска, предотвратить преждевременную сходимость к локальному оптимуму и заботиться об определенной неоднородности генов внутри популяции. Селекция индивидов в процессе генераций ведет к более однородным популяциям, т.е. многообразие генов сокращается. Вследствие этого крос-синговер как оператор поиска становится неэффективным. Мутации должны противодействовать этому. Для мутации необходимо установление нормы. Она не должна быть слишком большой (3 - 5%). Норма мутации в зависимости от кодирования имеет различные значения.

6.1. Бинарное кодирование - код Грея

Каждый бит мутируется с одинаковой вероятностью. При этом соответствующий бит инвертируется. Число мутируемых битов получается умножением величины популяции на число битов на хромосому и на норму мутации.

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

Таблица. 1

Пример бинарного кодирования

Число Бинарный Расстояние Код Грея Расстояние

код по Хеммингу по Хеммингу

0 000 - 000 -

1 001 1 001 1

2 010 2 011 1

3 011 1 010 1

Мутацией бита в коде Грея в нормальном кодировании гена достигается, что все биты инвертируются к мутируемому биту.

6.2. Реальное кодирование

Каждый ген мутируется с одинаковой вероятностью. Число мутируемых генов получается умножением величины популяции на число генов на хромосому и на норму мутации.

Размер шага мутации управляется стохастической функцией плотности. Для каждой искомой переменной генерируется случайная переменная типа нормального распределения по участкам. Это происходит при следующих шагах:

1. Образование функции плотности при нормальном распределении:

а) со средней величиной, равной старой величине искомой переменной; б) со стандартным уклонением, равным желаемому размеру шага мутации.

2. «Укорочение» функции плотности в границах искомой переменной.

3. Корректировка функции плотности, так чтобы име-

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

7. Схемы замены индивидов

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

7.1. Замена генерации

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

7.2. Сохранение и замена отдельных индивидов

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

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

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

8. Пример

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

Обозначив через Ь, И, ^ и ширину полки, высоту стенки, толщины полки и стенки соответственно, представим функцию цели С1 для отдельных индивидов г популяции в виде

ло место равенство

I £(х) Ах

•¿х

= 1.

С (Ь, И, /2) = 2Ь/1 +(И - г1 )2

(7)

В генетическом алгоритме предусмотрена минимизация функции фитнеса /.. Поскольку достигается минимум объема, функции цели и фитнеса не идентичны:

f = -C..

J i i -

(В)

т.е. уменьшение площади поперечного сечения ведет к повышению функции фитнеса. Пространство поиска ограничено верхней и нижней границами каждой переменной. Избрано реальное кодирование, так что каждую величину можно принять в границах переменных. Эти границы выбраны так, что размеры профилей не превосходят размеры двутавра №20 по ГОСТ 8239-56

5 < Ь < 10 см; 10 < к < 19,16 ал;

0,5 << 0,84 см; 0,4 < /2 < 0,52 см.

Исходные предпосылки: 1) стержень идеально прямой, 2) сила приложена в центре тяжести сечения, 3) приемлем закон Гука, 4) имеет место гипотеза плоских сечений, 5) предполагается однородный изотропный материал.

Принимается дополнительное условие:

F > F

cr. y cr

(9)

^,у - критическая сила при изгибе относительно "сильной" оси. Изгиб относительно " слабой" оси задерживается конструктивными мероприятиями (связями и заполнениями). При этом

, bt3 t2 (h - ti )3 h2

Iv = — + —-— + 4btl—.

y 6 12 1 8

(10)

Еще одно дополнительное условие относится к местным эффектам выпучивания, которые должны быть предотвращены. Для полки и стенки оно имеет

следующий вид:

0,5 (b - t2 ) ti <(b 11 )adm , 0,5 (h - ti ) t2 К(Ь 11 )adm ,

где (b 11 )adm принимается по нормам проектирования.

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

Хромосома содержит четыре гена:

Произведено вычисление б вариантов соответствен-

m ¿i i h i t2 i

но заданным комбинациям генетических параметров. Использована схема сохранения и замены отдельных индивидов. Оптимальный профиль при l = 6м, E = 2,i i05 МПа имеет следующие размеры b = 9,2 см ; h = i9,i см; ti = 0,9i см ; t2 = 0,5 см. Площадь сечения равна 25,84 см2, что на 3,б% меньше площади сечения двутавра №20.

СПИСОК ЛИТЕРАТУРЫ

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

2. Юрьев А.Г. Эволюционные и генетические алгоритмы оптимизации строительных конструкций / А.Г. Юрьев, С.В. Клюев. - Белгород: Изд-во БГТУ им. В.Г. Шухова, 200б. -134 с.

3. Eshelman L.J. Biases in the Crossover Landscape: Technical report / L.J. Eshelman, R.A. Caruana, J.D. Schaffer. - New York: Philips Laboratories, North American Philips Corporation, 19В9. - 10 p.

4. Riedel J. Genetik als alternative Optimierungsstrategies / J. Riedel // 4. Institutskolloquium, Bauhaus - Universitat Weimar: Bericht З/9В, Institut fur Strukturmechanik. - Weimar: Bauhaus - Universitat, 199В. - S.19 - 33.

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