Курс Алгоритмы оптимизации, основанные на методе проб и ошибок (1121255), страница 23
Текст из файла (страница 23)
Оператор SBX был определенДебом в работе [Deb, K. and Agrawal, R. B. (1995). Simulated binary crossover forcontinuous search space. Complex Systems, 9 115--148.]. В настоящей работе дляопределенияоператорасмешиванияиспользуется модифицированнаяверсия оператора SBX.1. Если xi больше чем yi , то обменять значения xi и yi .x2. max 13. m x 1 2 min( xi lbi , ubi yi )0.5 ( yi xi ) ubiy, maxyi xiyi xix[ max] n 1[ y ] n 1, m y max221174.
Выбрать случайные числа r x (0, m x ) , r y (0, m y )1x x n 1if r x 0.5[2],rm5. x ,1otherwisexxn1[2 (1 r m )] ,1yy n 1if r y 0.5[2],rmy 1[2 (1 r y m y )] n 1 , otherwise6. lmix xi yix yix yix yix i, rmix ix i22227. Если установлен признак f chg (это настраиваемый параметр), товыполняется обмен значений lmix и rmix.Для целочисленных значений, смешивающий оператор может быть определенодним из следующих способов:o Смешивание с использованием побитового кодирования. Оба значения xi иyi представляются как битовые строки, ккоторым затем применяется"классический" оператор одноточечного скрещивания.
Процесс вычисленияфункции смешивания с использованием побитового кодирования включаетследующие шаги:1. Вычисляетсяминимальноечислобитовbнеобходимоедляпредставления xi и yi как битовых строк: b log 2 (ubi lbi ) , гдесимволами lbi , ubi обозначены соответственно нижняя и верхняяграницы xi и символом x обозначена минимальное целое число,большее или равное x.2. Значенияxiиyiпредставляютсяbbk 1k 1какбитовыестроки:xi lbi k 2 k , yi lbi k 2 k .3. Выбирается случайный номер l, 1 l b . , if k l , if k l4. Полагается lk k, rk k k , otherwise k , otherwisebbk 1k 15.
Полагается lmix lbi lk 2 k , rmix lbi rk 2 k1186. Если установлен признак f chg (это настраиваемый параметр), товыполняется обмен значений lmix и rmix.o Смешивание с использованием SBX (имитация бинарного скрещивания,simulated-binary crossover). Смешивание с использованием SBX дляцелочисленныхпеременныхипеременных,представляющихномерэлемента перечислимого множества, определяется на основе аналогичнойфункции для вещественных переменных (см. описание выше по тексту).Фактически, здесь xi и yi обрабатываются как обычные вещественныечисла, а их нижняя и верхняя границы релаксируются следующим образлм:lbi lbi 0.5 ,ubi ubi 0.5 .Послевыполнениясмешиваниясиспользованием SBX по алгоритму для вещественных переменных,получившиеся значения, lmix и rmix округляются до ближайшего целогочисла (легко показать, что округленные таким образом значения всегдабудут лежать в исходном интервале, ограниченном значениями lbi , ubi ).119.