Professional Documents
Culture Documents
04 - Geneticki Algoritmi
04 - Geneticki Algoritmi
М. Божић
МВИ- 5
Садржај
• Представљање кандидатских рјешења проблема
• Основне компоненте генетичких алгоритама
• Мултипараметарско кодирање
• Процјена прилагођености
• Механизми одабирања
• Рулетска селекција
• Рекомбинација
• Мутације
• Основне карактеристике ГА
Генетички алгоритми
Репродукција
Секс
Морфогенеза
Рекомбинација
Г-типови
& Мутација
Генотипови
Генетика
Еволуциони алгоритми
Семантика
Параметри,
Код, Тест перформансе П,К,Н,Пр.
Неуралне м.,
Правила
Р&M
Превођење
Генерисање
Рекомбинација
Низови бита Битови
& Мутација
Синтакса
Генетички алгоритми(1)
Селекција
Сљедећа генерација
Мутација Рекомбинација
Представљање кандидатских рјешења
проблема
• За већину ГА могућа рјешења се представљју као бинарно или
реално кодовани хромозоми.
• Напримјер, тражи се рјешење којим се максимализује
вриједност
y=5-(x-3)2
Могућа рјешења: x=2, x=2.5 и x=3.
• Представљање рјешења у ГА зависи од избора пројектанта.
То зависи од тога како рјешење изгледа и погодности примјене
ГА.
• Најчешће се рјешење представља низом карактера -низа
кодова за представљање одређених својстава
• Карактери су елементи неког алфабета. Ако је алфабет са
већим бројем знакова тада се њиме може представити више
информација са одређеним низом карактера, односно потребан
је мањи број карактера у низу да се кодује неки дио
информације.
Представљање кандидатских рјешења
проблема(1)
• У примјенама ГА се најчешће користи бинарна шема
кодовања.
• Процесом кодовања се тачка из простора одређених
својстава трансформише у низ бита.
• Напримјер, тачка (11, 6, 9) из тродимензионалног
простора својстава, гдје је свако својство у опсегу
цијелих бројева {0,…,15}, се може представити
бинарним низом
(11, 6, 9) → (101101101001)
гдје се свака вриједност неког својства представља
четворобитним геном.
Представљање кандидатских рјешења
проблема(2)
• Могуће је користити Грејов код, или неки
други начин за кодовање негативних или
бројева са покретном тачком.
• Шеме кодовања су начини превођења
знања о специфичном проблему директно у
оквире ГА.
• Овај процес игра кључну улогу у одређивању
перформанси ГА.
• Више од овога, генетички оператори се могу
изабрати заједно са шемом кодовања која се
користи за посебну примјену.
Представљање кандидатских рјешења
проблема(3)
• У реално кодованим хромозомима свака
промјенљива је представљена једним геном.
• Код бинарног кодовања сваки ген може попримити
једну од k могућих вриједности.
• Која од ових двију репрезентација ће бити
употребљена зависи од проблема који се рјешава.
• Треба напоменути да је за бинарно кодовање
развијено много више ГА-ма, док су реална
кодовања ближа начину како се кандидатска
рјешења представљају у проблему (и наравно имају
већу тачност).
Функција прилагођености над
простором претраживања
• Представљање генотипа одређује величину и густину простора претраге
• Функција прилагођености одређује његову густоћу (груб, гладак, итд.).
Функција
прилаг.
(Тестирање се врши на овом нивоу)
Фенотип
ff
x
Процјена прилагођености(2)
• У проблемима максимализације је
ffSmax
ffsr
ffS,sr
Фитнес функцијa ff за примјер мобилног
робота
• Могуће је имати формуле које повезују снагу робота са снагом
мотора и снагом извора напајања, или релације које повезују
вријеме трајања кретања робота без потребе за пуњењем
батерија са датим мотором и снагом напајања.
• Симулација еволуције се не може извршити без дефиниције
функције доброте рјешења.
• Алтернативно, рачунарска симулација се може извести са
улазима као што су тип/снага мотора и тип/снага напајања, па
онда на неки начин мјерити како је добро дато рјешење.
• За корисника ГА, разумијевање проблема је критично код
избора функције доброте рјешења.
• Фитнес функција за примјер робота
ff =k1*Period (časova) + k2* Snaga (W) — k3* Težina (kilograma)
Процјена прилагођености(3)
Јединка Јединка
Хромозом Хромозом
Јединка Јединка
Окрет од 0.29
пуног угла
Окрет од 0.29
пуног угла
тачка укрштања
рекомбинација
родитељи потомци
Сл. 6 Укрштање у једној тачци
Рекомбинација(2)
• Могућа је рекомбинација у двије тачке као
што је илустровано на Сл.7.
тачке укрштања
рекомбинација
родитељи потомци
гдје је
Реално кодовани хромозоми
4.12 0.68 3.72 6.89 1.54 8.72 4.32 4.12 0.68 3.72 6.89 8.34 2.99 1.23
5.82 1.11 9.22 3.24 8.34 2.99 1.23 5.82 1.11 9.22 3.24 1.54 8.72 4.32
Ул. Услови ДА
Ул. Генерисање Процјена Услови
заустављ. ДА
Генерисање Процјена заустављ. Најбоље
почетне функције алгоритма Најбоље
почетне функције алгоритма јединке
популације прилагођ. задовољен. јединке
популације прилагођ. задовољен.
?
?
НЕ
НЕ
Декодирај
Селекција
Селекција
Генерисање нове поп. Из.
Генерисање нове поп. Рекомбин. Из.
Рекомбин.
Мутација
Мутација
Остали параметри:
вјероватноћа рекомбинације pc=0.95,
вјероватноћа мутације pm=0.05.
Заустављање ГА - ако је број
итерација већи од 30 или
кумулативна сума
пријеђе вриједност прага 24.
Основни ГА – Примјер(1)
• Послије 7 итерација распоред јединки је илустрован на Сл.9a.
• Након 13 итерација, кумулативна сума је постала >24, добијено
је “најбоље” рјешење за глобални максимум са f(х)=0.8648 и
при томе су јединке распоређене као што је илустровано на
Сл.9б.
Сл.9a Сл.9б
Основне карактеристике ГА
• ГА успјешно праве компромис између истраживања и
експлоатације. У сваком проблему оптимизације се могу
уочити двије фазе: претраживање до сада непознатих
потенцијалних рјешења путем прекривања ширих области у
простору рјешења, и експлоатација пронађених добрих рјешења
претраживањем њихове непосредне околине. Компромис
између ових фаза код ГА се обавља помоћу:
Промјене вјероватноће мутације. Ако је овај параметар већи
област претраживања се шири, а ако је ова вјероватноћа мања
ГА се понаша слично као градијентни поступци;
Примјеном елитистичке стратегије фаворизује се експлоатација.
• Слабе стране ГА су:
-- спора конвергенција
-- нема гаранције да је добијено рјешење оптимално, или барем
блиско оптималном.
Основне карактеристике ГА(1)
• Предности ГА су:
-- свака функција прилагођености се може
оптимизовати без обзира на њену непрекидност,
диференцијабилност (глаткоћу) и само је потребно
да корисник може процијенити вриједност ове
функције за сваки хромозом,
-- у хромозом се може уградити било која
информација. Ова особина је од нарочитог значаја у
случајевима који се не могу ријешити аналитичким
поступцима. Напримјер, хромозом се може кодирати
на тај начин да садржи информације о структури и
параметрима неке НМ, па се на овај начин добија
еволуирајућа НМ.