Download as pdf or txt
Download as pdf or txt
You are on page 1of 60

ГЕНЕТИЧКИ АЛГОРИТМИ

М. Божић
МВИ- 5
Садржај
• Представљање кандидатских рјешења проблема
• Основне компоненте генетичких алгоритама
• Мултипараметарско кодирање
• Процјена прилагођености
• Механизми одабирања
• Рулетска селекција
• Рекомбинација
• Мутације
• Основне карактеристике ГА
Генетички алгоритми

• Генетички алгоритми (ГА), које је увео John Holland


(1975), су типичан примјер хеуристичког метода
који се користи у рјешавању проблема.
• Помоћу ГА се рјешавају комплексни комбинаторни и
организациони проблеми користећи аналогију
еволуције у природи.
• Различитост врста у природи је огромна, а једно
објашњење како је природа разријешила
оптимизациони проблем, за који као резултат
имамо људску врсту, дао је Дарвин (Charles Darwin)
у својој теорији еволуције.
• Најважнији термини који се користе у генетичким
алгоритмима су аналогни оним који се користе за
објашњење еволуционих процеса.
Еволуција по Дарвину
Физиологија, Понашање

Фенотипови Природна селекција Ф-типови

Репродукција
Секс
Морфогенеза

Рекомбинација
Г-типови
& Мутација
Генотипови

Генетика
Еволуциони алгоритми
Семантика
Параметри,
Код, Тест перформансе П,К,Н,Пр.
Неуралне м.,
Правила

Р&M
Превођење
Генерисање

Рекомбинација
Низови бита Битови
& Мутација

Синтакса
Генетички алгоритми(1)

• Ген је основна јединица која контролише особине јединки.


• Хромозом је низ гена и користи се да представи јединке или
једно од могућих рјешења из простора рјешења (излаза).
• Популација је скуп јединки.
• Операција укрштања (рекомбинације) (Crossover/Mating)
се састоји у узимању дијелова хромозома од двије различите
јединке (родитеља) и формирању 2 нове јединке (2 потомка).
• Мутација (Mutation) је случајна промјена једног гена у
хромозому.
• Фитнес функција (Fitness, Goodness) даје мјеру
прилагођености (доброте) појединих јединки, односно служи као
критеријум за евалуацију сваке јединке.
• Селекција је процес избора дијела популације који ће служити у
наставку тражења најбољег рјешења, док ће други дио
популације “изумријети”.
Еволуциона израчунавања = Паралелно
стохастичко претраживање

Јединке: 1 2 3 4 5 6 Помјерени точак рулета


Фитнес : 3 8 2 4 1 1
6 1
5
Помјерена селекција
4 2
3

Селекција

Сљедећа генерација

Мутација Рекомбинација
Представљање кандидатских рјешења
проблема
• За већину ГА могућа рјешења се представљју као бинарно или
реално кодовани хромозоми.
• Напримјер, тражи се рјешење којим се максимализује
вриједност
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 могућих вриједности.
• Која од ових двију репрезентација ће бити
употребљена зависи од проблема који се рјешава.
• Треба напоменути да је за бинарно кодовање
развијено много више ГА-ма, док су реална
кодовања ближа начину како се кандидатска
рјешења представљају у проблему (и наравно имају
већу тачност).
Функција прилагођености над
простором претраживања
• Представљање генотипа одређује величину и густину простора претраге
• Функција прилагођености одређује његову густоћу (груб, гладак, итд.).

Функција
прилаг.
(Тестирање се врши на овом нивоу)

Фенотип

Генотип (Претрага се врши на овом нивоу)


Функција прилагођености над
простором претраживања
• Груб изглед функције прилагођености је тежи за
претраживање, пошто парцијалне информације дате
овом функцијом немају добру хеуристику. Напримјер,
локални максимум има велику вриједност премда
може бити сасвим удаљен од глобалног.
Коришћење еволуционих
алгоритама
Када
• Велики, груби (ријетки) простори претраживања
• Проблеми пројектовања у којима се траже
задовољавајућа (или оптимална) рјешења или
општи проблеми пројектовања
• Цјеловита рјешења се лако генеришу и тестирају
• Методи претраживања (типа претрага по дубини и-
или ширини) су сувише спори
• Помоћу хеуристичких метода претраживања се не
могу пронаћи добра рјешења (напримјер,
заглављивање у локалном максимуму)
Коришћење еволуционих
алгоритама(1)
Како?
• Одредити представљање рјешења које омогућава примјену
мутације и укрштања.
• Дефинисати функцију прилагођености која даје градирану
евалуацију- не само оцјењивање типа добро/лоше.
• Дефинисати функцију селекције (напримјер, функција
помјереног рулетског точка (f: прилагођеност -> површина)
• Изабрати кључне параметре EA: величину популације, брзину
мутације, брзину рекомбинације, број генерација, итд.

* EA-ми се лако записују и постоји пуно слободног софтвера!


* Специфични проблеми често захтијевају специфична
представљања & генетичке операторе
Примјер пројекта мобилног робота

• Робот треба да буде лаган, да има довољну снагу да се може


кретати по неравном терену на ширем подручју без потребе
враћања за пуњење батерија.
• Потребно је специфицирати параметре као што су: а) тип
мотора и његово напајање б) тип напајања и напон.
• Тип мотора и његово напајање се могу кодирати како слиједи:
Примјер пројекта мобилног робота(1)

• Врста извора напајања и његов напон се могу кодирати као

• Након кодирања параметара мора се изабрати одговарајућа


фитнес функција на основу које можемо реално оцијенити
рјешење.
Основне компоненте генетичких
алгоритама
• Шеме кодирања и декодирања имају за
циљ превођење проблема у облик који је
прилагођен генетичким алгоритмима и
обратно.
• Кодирање подразумијева представљање
параметара оптимизације низом коначне
дужине.
• Имајући у виду специфичности конкретног
проблема, упоредо са избором шеме
кодирања потребно је дефинисати и
операторе насљеђивања и мутације.
Основне компоненте генетичких
алгоритама(1)
• Шема (schema) представља скуп битова који на
одређеним позицијама имају фиксиране (исте)
вриједности.
• Напримјер, шема облика (*111*) представља заправо
скуп од четири различита бинарна низа:
{(01110), (01111), (11110), (11111)},
при чему симбол * (неодређена позиција) означава
да се на том мјесту може појавити и нула (0) и
јединица (1).
• Свака шема која садржи r знакова * дефинише
укупно 2r различитих бинарних низова.
• Сваки низ дужине m може бити представљен са 2m
различитих шема.
Основне компоненте генетичких
алгоритама(2)
• Ред шеме (order) S у ознаци o(S) једнак је броју
фиксираних позиција. Напримјер, o(*111*)=3, а
o(*1***)=1.
• Дужина шеме представља растојање између
посљедње и прве фиксиране позиције у низу.
Напримјер,                 
• Два основна начела код избора шема кодирања:
1. Избор смислених градивних елемената-кратке
шеме ниског реда којима се “обухватају”
специфичности датог проблема,
2. Избор минималног алфабета, то јест треба
изабрати најмањи алфабет који омогућава да се
проблем третира на природан начин.
Основне компоненте генетичких
алгоритама(3)
• Показује се да бинарни алфабет нуди максималан
број шема по једном биту информације. Такође, у
пракси се показује да су ГА са шемама у којима има
већи број неодређених позиција (знакова *)
ефикаснији.
• Рјешавање мултипараметарских проблема се своди
на сљедеће кодирање:
-реални параметар се линеарно
пресликава у опсег [0,2  1] , гдје је li ,дужина бинарног
li

низа (дужи низ значи већу прецизност).


Ако се са preci означи број тачних цифара иза дец.
тачке, добија се
Основне компоненте генетичких
алгоритама(4)
• У случају да је задата жељена прецизност preci
потребна дужина низа li се рачуна на основу

За дати бинарни низ

одговарајућа реална вриједност је

гдје је decimal(b) децимална цјелобројна вриједност


која одговара бинарном броју b.
Мултипараметарско кодирање

• Мултипараметарско кодирање се састоји у


надовезивању кодова за поједине параметре. Сваки
подниз има своју дужину li и опсег
У случају n- параметарског кодирања добија се
хромозом дужине
Процедура је илустрована на Сл.1.
Параметар 1 Параметар n

Сл.1 Илустрација хромозома


Величина популације

• У ГА се не манипулише појединим хромозомима, већ


одређеним скупом хромозома који се назива
популацијом.
• Иницијализација популације се може извршити
случајним избором неког броја хромозома.
• Величина популације vel_pop је број јединки (број
могућих рјешења) који се одржава у неком ГА.
• Ако је ова величина сувише велика потребно је дуже
вријеме за конвергенцију алгоритма.
• С друге стране, сувише мала популација има
могућност превремене конвергенције према
субоптималном рјешењу због недовољне
разноликости јединки у таквим популацијама.
Процјена прилагођености
• Након избора почетне популације први корак је процјена
прилагођености ff сваке јединке (напримјер, бинарног вектора
b) која је скаларна функција реалних аргумената (који су
компоненте неког вектора обиљежја x)
ff(b)=f(x).
• Ова функција у ГА игра исту улогу као и природно окружење у
еволуцији живог свијета.
• Обично се захтијева да функција ff има позитивну вриједност.
Ако је то функција природне цијене коштања Q(x) потребно је
вршити неке манипуције да би се добила ff. Ако је задатак
постављен као минимизација Q(x) чија је мак. вриједност Cmax
Процјена прилагођености(1)

• Цијена коштања је Q(x), а функција прилагођености ff(х).

ff

x
Процјена прилагођености(2)

• У проблемима максимализације је

гдје се Cmin као најмања до сада забиљежена вриједност (или у


неколико посљедњих популација) за Q(x).
• Алтернативно, прилагођеност може да буде и редни број на
листи јединки из одговарајуће популације на основу кога се
само узимају у обзир односи између појединих јединки без
прецизног израчунавања функције прилагођености.
• Уколико неколико најбољих јединки има доминацију у односу на
друге са листе, може се појавити проблем преурањене
конвергенције (premature convergence). Овај проблем се може
превазићи погодним скалирањем функције прилагођености.
Скалирање функције прилагођености

• Скалирање фитнес функције ff на нову фунцију ffS према


ffS=α ff+b
гдје се константе α и b бирају тако да ffS и ff имају једнаке
средње вриједности ffsr= ffS,sr и да је испуњено
ffSmax=Cmaxffsr
Са Cmax се може контролисати очекивани број најбољих јединки
који ће ући у сљедећу генерацију. Ако се након скалирања
добију негативне вриједности скалиране фунције треба их
поставити на 0.
ff ff ffS

ffSmax
ffsr
ffS,sr
Фитнес функцијa ff за примјер мобилног
робота
• Могуће је имати формуле које повезују снагу робота са снагом
мотора и снагом извора напајања, или релације које повезују
вријеме трајања кретања робота без потребе за пуњењем
батерија са датим мотором и снагом напајања.
• Симулација еволуције се не може извршити без дефиниције
функције доброте рјешења.
• Алтернативно, рачунарска симулација се може извести са
улазима као што су тип/снага мотора и тип/снага напајања, па
онда на неки начин мјерити како је добро дато рјешење.
• За корисника ГА, разумијевање проблема је критично код
избора функције доброте рјешења.
• Фитнес функција за примјер робота
ff =k1*Period (časova) + k2* Snaga (W) — k3* Težina (kilograma)
Процјена прилагођености(3)

• Процес додјељивања вриједности функције прилагођености


појединим бинарно кодованим јединкама је приказан на Сл.2. У
овом примјеру је: f(d(x))=(d(x))2 ,
d(xmax,xmin,l,x)=xmin+(xmax-xmin)decode(x)/(2l -1)
гдје decode даје цијели број еквивалентан бинарној вриједности.

Јединка Јединка

Хромозом Хромозом

Функ. прил. Функ. прил. =1.35

Сл.2 Процес израчунавања функције прилагођености


Процјена прилагођености(4)

• Бинарно кодоване јединке као у примјеру на сл.2, које се често


називају генотипима, се најприје декодују у тзв. фенотипе који
представљају кандидатска рјешења. У случају реално
кодованих хромозома јединке су уствари фенотипи (сл.3).

Јединка Јединка

Хромозом: 1.16 Хромозом: 1.16

Функ. прил. Функ. прил. =1.35

Сл.3 Функција прилагођености за реално кодоване хромозоме


Механизми одабирања
• Родитељи који се бирају за репродукцију су често
најприлагођеније јединке из дате популације.
• Хромозоми који ће учествовати у репродукцији се бирају на
случајан начин, с тим да боље прилагођени имају већу
вјероватноћу да постану родитељи.
• Брзина којом ГА бира јединке са функцијом прилагођености
већом од неке средње вриједности те функције за цијелу
популацију се назива селекционим притиском.
• Брзина којом ГА бира јединке са функцијом прилагођености са
вриједностима испод њихове средње за популацију се назива
диверзификација селекције.
• Развијене су различити механизми одабирања који настоје да
одрже хармонију између селекционог притиска и
диверзификације у ГА.
Механизми одабирања(1)

• У основи постоје три типа алгоритама одабирања: 1)


пропорционална селекција, 2) ранг селекција и 3)
турнирска селекција.
• 1) Замислимо рулет са онолико слотова колико има
јединки у некој популацији, с тим да ширина слота
одговара прилагођености јединке ff (ово је т.з.
рулетска селекција (roulette-wheel parent selection)).
Рулет се може конструисати на сљедећи начин:
1. Израчунају се вриједности прилагођености ff(bi) за
сваки хромозом у датој популацији bi ,i=1,..., vel_pop
2. Израчуна се укупна прилагођеност популације
Механизми одабирања(2)
3. Одреди се вјероватноћа избора pi сваког хромозома bi

4. Израчунају се кумулативне вјероватноће qi

Селекција се изводи на тај начин што се точак заврти


vel_pop пута и послије сваког окретања изабере по
један хромозом који улази у популацију родитеља на
сљедећи начин:
1. Генерише се случајан број r из интервала [0,1]
2. Ако је r<q1 бира се први хромозом b1; у противном
бира се сљедећи bi за кога је испуњен услов
qi-1< r =<qi .
Рулетска селекција
• Јединке изабране у једној рунди се враћају унутар
популације и могу бити изабране поново у сљедећој рунди.
• Предност пропорционалне селекције је у томе што притисак
селекције варира са расподјелом прилагођености унутар
популације.
• Недостатак је у томе што када популација конвергира према
рјешењу притисак селекције опада, што може проузроковати да
ГА не пронађе боље рјешење.

Окрет од 0.29
пуног угла

Сл.4 Илустрација рулетске


селекције
Стохастичка универзална селекција
• Стохастичка универзална селекције се базира на томе да се
сваком хромозому из популације додијели угао на рулету који
одговара вриједности његове фитнес функције као и код
рулетске селекције. Даље се претпостави да на рулету има
толико репера колико има хромозома у популацији.

Окрет од 0.29
пуног угла

Сл.5 Илустрација стохастичке


универзалне селекције
Стохастичка универзална селекција(1)

• Предност стохастичке универзалне селекције је у


једноставности, зато што је за сваку селекцију
родитеља који улазе у даљи процес потребно само
једно “заокретање” точка, али има исте недостатке
као и “рулетска” селекција.
Недостатци рулетске селекције

• Пропорционална селекција има за резултат да боље


прилагођени хромозоми буду чешће изабрани за
рекомбинацију, док слабије прилагођени “изумиру”.
• Недостатак рулета је у томе што најбољи хромозом
може да остане без потомка-стохастичка грешка.
• Елитистичком стратегијом се најбољи хромозоми
из текуће популације копирају у популацију
родитеља. На овај начин се убрзава конвергенција
алгоритма.
2) Ранг селекција

• У случају линеарне ранг селекције јединке


популације се најприје поредају у низ тако да прва
има највећу (vel_pop), а задња најмању вриједност
функције прилагођености (1). Затим се свакој јединки
додијели нова вриједност функције прилагођености
(тзв. субјективна) помоћу линеарног рангирања
према
sf(r)=(max-min)(P-r)/(P-1)+min (1)
гдје је max максимална, а min минимална вриједност
субјективне функције, r ранг јединке и P= vel_pop
величина популације.
• Мијењајући стрмину субјективне функције подешава
се селекциони притисак.
2) Ранг селекција(1)

• Код линеарне ранг селекције вјероватноћа избора


јединке xi је дата са
Pr(xi)= α+ βsf(xi)
Како најбоља јединка има ранг једнак vel_pop, а а
средња (vel_pop+1)/2, тада је селекциони притисак
дат са

Ако нормализујемо вјероватноће селекције тако да је


њихова сума једнака 1
2) Ранг селекција(2)

• Ако желимо постићи одговарајући селекциони


притисак тада су параметри

• Типично је да се селекциони притисак у ЕА одржава


ниским у почетку да би се избјегла прерана
конвергенција, а касније повећа да би се искористиле
најбоље јединке у ЕА.
2) Ранг селекција(3)
• Када су јединкама додијељене вриједности
субјективне функције прилагођености даљи поступак
је исти као код рулетске селекције.
• Предност ове врсте селекције је у томе што једном
подешени селекциони притисак од стране корисника
остаје константан.
• Недостатак је у томе што се мора одредити ранг свих
јединки и што јединке са истом вриједношћу функције
прилагођености немају исту шансу да буду изабране.
3) Турнирска селекција

• Код турнирске селекције један родитељ који има


највећу вриједност функције прилагођености се бира
из скупа од K случајно узетих јединки из популације.
Други родитељ се бира понављањем поступка за
првог.
• Селекциони притисак се повећава са повећањем K .
• Бинарни турнирски поступак (K=2) се често
примјењује.
• Од поменуте три, због своје једноставности,
најчешће се примјењује турнирска селекција.
Генерацијски јаз

• Генерацијски јаз је број између 0 и 1 који показује који


дио јединки из текуће популације ће бити замијењен
новим потомцима. Ако је величина популације 20 и
ако је генерацијски јаз 1 тада ће свих 20 родитеља
бити замијењено са нових 20 генерисаних потомака.
Када је генерацијски јаз између 0 и 1 тада извјестан
број јединки “изумире”.
• Најлакша стратегија избора је да се замијене
најлошије јединке. Често пута се та замјена врши за
једну или двије најслабије јединке у текућој
популацији.
Рекомбинација
• Кроз процес рекомбинације родитељи дају
потомцима гене који насљеђују добре особине сваког
од њих.
• Вјероватноћа рекомбинације pc одређује просјечан
број хромозома pc vel-pop који ће учествовати у
рекомбинацији. Избор ових хромозома се одвија у
два корака:
1. За сваки од њих генерише се случајан број r из
интервала [0,1];
2. Ако је r< pc бира се дати хромозом за
рекомбинацију.
• Сада се изабрани хромозоми укрштају на тај начин
што се за сваки пар генерише случајан цио број poz
из скупа {1,2,…,l-1 } ( l je број бита у хромозому) који
одређује тачку укрштања.
Рекомбинација(1)
• Два хромозома и

насљеђује пар њихових потомака

Описани поступак се назива рекомбинацијом у једној


тачци (Сл.6)

тачка укрштања

рекомбинација

родитељи потомци
Сл. 6 Укрштање у једној тачци
Рекомбинација(2)
• Могућа је рекомбинација у двије тачке као
што је илустровано на Сл.7.
тачке укрштања

рекомбинација

родитељи потомци

Сл. 7 Укрштање у двије тачке

• Ако се број тачака рекомбинације


прекомјерно повећа, ГА даје хромозоме који
попримају сувише насумичан карактер
(уништавају се цјелине које чине гене).
Рекомбинација(3)
• Механизми избора популације родитеља,
рекомбинације и мутације усмјеравају претрагу ка
“бољим” подручјима кодираних рјешења. Овим
поступцима се опонашају процеси у природи- дјеца
могу наслиједити боље особине оба родитеља и
постати прилагођенија за живот.
• Поступци селекције и рекомбинације могу произвести
мноштво нових хромозома, међутим они су ипак
ограничени постојећим генетским материјалом.
Уколико у популацију нису уграђене све информације
потребне за успјешно проналажење рјешења тада
сама рекомбинација не може довести до оптимума.
Мутација
• Операција мутације може произвести нове
хромозоме. Ако је вјероватноћа мутације pm тада је
просјечан број мутираних бита у популацији дат са
pm* l * vel_pop.
• За сваки бит у популацији добијеној након
рекомбинације понавља се сљедећи поступак:
1. Генерише се случајан реалан број
2. Ако је бит мутира (мијења се из 0 у 1 и обр.).
Вјероватноћа pm је мала да се не би изгубили добри
хромозоми добијени након рекомбинације. Уколико
се pm повећа изнад 0.1 тада ГА резултује у
насумичну претрагу. Мутирани бит
Мутација
Мутација(1)

• Популација са vel_pop хромозома, а сваки хромозом има l бита


• Псеудо код операције мутације
; slučajna veličina sa unifor. raspodjelom

гдје је
Реално кодовани хромозоми

• Некада је једноставније оперисати са реалним бројевима него


њиховим дискретизованим вриједностима.
• У том смислу су потребне мање модификације напријед
изложеног основног ГА.
• У случају проблема са n параметара фитнес функција је
функција са n промјенљивих.
 Генерисање почетне популације
Сваки хромозом из популације може се представити вектором

при чему свака компонента тог вектора предстаља параметар


Реално кодовани хромозоми(1)

• Псеудо код за генерисање почетне популације


Реално кодовани хромозоми(2)
 Рекомбинација за случај реалних параметара
И у овом случају изабрани хромозоми се укрштају на тај начин
што се за сваки пар родитеља генерише случајан цио број poz
између 1 и n, па изабрани хромозоми замијене вриједности
параметара од poz+1 до n.

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

Тачка укрштања (poz)


Реално кодовани хромозоми(3)

 Мутација за случај реалних параметара


Овдје се изабрани параметар замјењује са случајном
величином која има униформну расподјелу из опсега
вриједности .
Псеудо код операције мутације
Основни ГА
• Након селекције, рекомбинације и мутације је формирана нова
популација на коју се поново примјељују ове операције.
• Алгоритам се састоји из сљедећих корака:
1. Иницијализација популације од vel_pop хромозома случајним
избором бинарних/реалних вриједности;
2. Процјена вриједности функције прилагођености за сваку
јединку;
3. Формирање нове популације јединки:
а) бира се величина популације родитеља pop_size
б) примјењује се операција рекомбинације са вјероватноћом pc
в) примјењује се операција мутације са вјероватноћом pm;
4. Процјена функције прилагођености за сваку јединку;
5. Уколико је задовољен услов за прекид тражења рјешења
алгоритам се зауставља и као резултат узима најбоља јединка,
а у противном враћа на корак 3.
Основни ГА(1)

Ул. Услови ДА
Ул. Генерисање Процјена Услови
заустављ. ДА
Генерисање Процјена заустављ. Најбоље
почетне функције алгоритма Најбоље
почетне функције алгоритма јединке
популације прилагођ. задовољен. јединке
популације прилагођ. задовољен.
?
?

НЕ
НЕ
Декодирај
Селекција
Селекција
Генерисање нове поп. Из.
Генерисање нове поп. Рекомбин. Из.
Рекомбин.

Мутација
Мутација

Сл. Стандардни поступак код ГА


Основни ГА - Примјер
• Проналажење глобалног максимума функције

• Иницијализација ГА је била са случајном почетном популацијом


од 30 јединки, свака дужине 20 бита (Илустрација на Сл. 8).

Остали параметри:
вјероватноћа рекомбинације pc=0.95,
вјероватноћа мутације pm=0.05.
Заустављање ГА - ако је број
итерација већи од 30 или
кумулативна сума
пријеђе вриједност прага 24.
Основни ГА – Примјер(1)
• Послије 7 итерација распоред јединки је илустрован на Сл.9a.
• Након 13 итерација, кумулативна сума је постала >24, добијено
је “најбоље” рјешење за глобални максимум са f(х)=0.8648 и
при томе су јединке распоређене као што је илустровано на
Сл.9б.

Сл.9a Сл.9б
Основне карактеристике ГА
• ГА успјешно праве компромис између истраживања и
експлоатације. У сваком проблему оптимизације се могу
уочити двије фазе: претраживање до сада непознатих
потенцијалних рјешења путем прекривања ширих области у
простору рјешења, и експлоатација пронађених добрих рјешења
претраживањем њихове непосредне околине. Компромис
између ових фаза код ГА се обавља помоћу:
 Промјене вјероватноће мутације. Ако је овај параметар већи
област претраживања се шири, а ако је ова вјероватноћа мања
ГА се понаша слично као градијентни поступци;
 Примјеном елитистичке стратегије фаворизује се експлоатација.
• Слабе стране ГА су:
-- спора конвергенција
-- нема гаранције да је добијено рјешење оптимално, или барем
блиско оптималном.
Основне карактеристике ГА(1)
• Предности ГА су:
-- свака функција прилагођености се може
оптимизовати без обзира на њену непрекидност,
диференцијабилност (глаткоћу) и само је потребно
да корисник може процијенити вриједност ове
функције за сваки хромозом,
-- у хромозом се може уградити било која
информација. Ова особина је од нарочитог значаја у
случајевима који се не могу ријешити аналитичким
поступцима. Напримјер, хромозом се може кодирати
на тај начин да садржи информације о структури и
параметрима неке НМ, па се на овај начин добија
еволуирајућа НМ.

You might also like