Дискретно-непрерывная математика. Кн. 0 : Алгоритмы. Ч. Генетические алгоритмы



Download 9,87 Mb.
Pdf ko'rish
bet86/228
Sana20.06.2022
Hajmi9,87 Mb.
#683557
TuriКнига
1   ...   82   83   84   85   86   87   88   89   ...   228
Bog'liq
Algorithms3

3.9.4. 
Методы кодирования 
 
В классическом генетическом алгоритме применяется двоичное 
кодирование хромосом. Оно основано на известном способе записи 
десятичных чисел в двоичной системе, где каждый бит двоичного кода 
соответствует очередной степени цифры 2. Например, двоичная 
последовательность [10011] представляет собой код числа 19, по-
скольку 1*2
4
+0*2
3
+ 0*2
2
+ 1*2
1
+ 1*2
0
= 19. Такой способ кодирования 
применялся в примере 2. Для кодирования действительных чисел 


А.Е. Кононюк Дискретно-непрерывная математика 
154 
х
i


i
, b
i
]

R реализуется отображение (3.5) так, как это делалось в 
примере 3.
В генетических алгоритмах можно, например, использовать код Грея, 
который характеризуется тем, что двоичные последовательноети, 
соответствующие двум последовательным целым числам, отличаются 
только одним битом. Такой способ кодирования хромосом может 
оказаться оправданным при использовании операции мутации.
Логарифмическое кодирование (logarithmic coding) 
применяется в 
генетических алгоритмах для уменьшения длины хромосом. Оно 
используется, главным образом, в задачах многомерной оптимизации с 
большими пространствами поиска решений.
При логарифмическом кодировании первый бит (α) кодовой 
последовательности - это бит знака показательной функции, второй 
бит 
(β) - 
бит знака степени этой функции, а остальные биты (bin) 
представляют значение самой степени:

β
bin] = (-1)
β
e
10
1
]
bin
[
)
(


где [bin]
10
означает десятичное значение числа, закодированного в виде 
двоичной последовательности bin. Например,
[10110]
представляет собой кодовую последовательность числа
х
1
 
=(-1)
0
e
10
1
110
1
]
[
)
(

=e
-6
=0,002478752 , 
а [01010] представляет собой кодовую последовательность числа
х
2
=
=(-1)
1
e
10
0
010
1
]
[
)
(

=-e
2
=-7,389056099 .
Заметим, что таким образом с помощью пяти битов можно 
закодировать числа из интервала [-е
7
, е
7
]. Это значительно больший 
интервал, чем [0, 31] из примера 2. Логарифмическое кодирование 
было реализовано в программе 
FlexTool 
в качестве дополнительной 
опции для задач повышенной сложности.
Еще одна модификация классического генетического алгоритма 
основана на кодировании действительными, а не двоичными числами. 
Это означает, что гены хромосом принимают действительные значения 
(аллели являются действительными числами). Такой способ 
кодирования применяется, в частности, в программе 

Download 9,87 Mb.

Do'stlaringiz bilan baham:
1   ...   82   83   84   85   86   87   88   89   ...   228




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish