Diplomska naloga (.pdf)
Diplomska naloga (.pdf)
Diplomska naloga (.pdf)
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Univerza v Ljubljani<br />
Fakulteta za matematiko in fiziko<br />
Matematika – pedagoška smer (UNI)<br />
Vida Vukašinović<br />
Optimizacija<br />
večplastnih absorberjev<br />
elektromagnetnega valovanja<br />
Diplomsko delo<br />
Ljubljana, 2007
Kazalo<br />
1 Uvod 5<br />
2 Teoretičen vpogled v absorberje 7<br />
2.1 Enostavni absorberji . . . . . . . . . . . . . . . . . . . . . . . . . . . 7<br />
2.2 Večplastni absorberji . . . . . . . . . . . . . . . . . . . . . . . . . . . 9<br />
2.3 Nekaj enostavnih primerov . . . . . . . . . . . . . . . . . . . . . . . . 12<br />
3 Reševanje enokriterijskega problema večplastnih EM absorberjev<br />
z genetskimi algoritmi 22<br />
3.1 Terminologija genetskega algoritma . . . . . . . . . . . . . . . . . . . 22<br />
3.2 Lastnosti genetskih algoritmov . . . . . . . . . . . . . . . . . . . . . . 23<br />
3.3 Genetski algoritmi za problem večplastnega absorberja . . . . . . . . 26<br />
3.3.1 Določitev začetne populacije . . . . . . . . . . . . . . . . . . . 28<br />
3.3.2 Kriterijska funkcija . . . . . . . . . . . . . . . . . . . . . . . . 28<br />
3.3.3 Selekcija in prekrižanje . . . . . . . . . . . . . . . . . . . . . . 29<br />
3.3.4 Določitev nove populacije . . . . . . . . . . . . . . . . . . . . 29<br />
3.3.5 Mutacija . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30<br />
3.4 Rezultati . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30<br />
3.4.1 Optimizacija po širini frekvenčnega pasu . . . . . . . . . . . . 30<br />
3.4.2 Optimizacija po debelini absorberja . . . . . . . . . . . . . . . 31<br />
4 Reševanje večkriterijskega problema večplastnih EM absorberjev z<br />
NSGA-II 35<br />
4.1 Večkriterijska optimizacija . . . . . . . . . . . . . . . . . . . . . . . . 35<br />
4.2 Različni pristopi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36<br />
4.3 NSGA-II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38<br />
4.4 Rezultati . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41<br />
5 Zaključek 46<br />
A Spekter EM valovanja 48<br />
B Koda 49<br />
Literatura 56
Program diplomskega dela<br />
V diplomskem delu opišite problem iskanja zgradbe čim boljšega večplastnega absorberja<br />
elektromagnetnega valovanja, pri čemer ste omejeni le na razpoložljive materiale,<br />
zadostiti pa morate zahtevam naročnika glede lastnosti absorberja. Problem<br />
matematično formulirajte v obliki optimizacijske naloge, izberite način reševanja<br />
(npr. genetski algoritem) in ga implementirajte.<br />
Ljubljana, januar 2007<br />
Mentor: izr. prof. dr. Martin Juvan<br />
Somentor: dr. Vladimir Boštjan Bregar
Povzetek<br />
V diplomskem delu obravnavamo problem elektromagnetnega valovanja in elektromagnetnih<br />
absorberjev, ki jih optimiziramo s pomočjo genetskih algoritmov. Na<br />
začetku predstavimo geometrijo enoplastnih in večplastnih absorberjev, katerih posebnosti<br />
razložimo preko enostavnih primerov. Kasneje se osredotočimo na enokriterijsko<br />
in dvokriterijsko optimizacijo. Predstavimo splošne značilnosti genetskih algoritmov,<br />
ki so naše optimizacijsko sredstvo, in posebnosti v Matlabu implementiranih<br />
genetskih algoritmov za enokriterijsko optimizacijo večplastnih elektromagnetnih<br />
absorberjev. Predstavimo splošne značilnosti algoritmov NSGA-II za večkriterijsko<br />
optimizacijo in značilnosti v Matlabu implementiranega algoritma NSGA-II za dvokriterijsko<br />
optimizacijo večplastnih elektromagnetnih absorberjev. Predstavimo in<br />
povzamemo dobljene rezultate prve in druge optimizacije.<br />
Math. Subj. Class. (MSC 2000): 90C59, 68W99, 78M50<br />
Ključne besede:<br />
elektromagnetno valovanje, absorber, elektromagnetni absorber, optimizacija, optimizacijski<br />
problem, metahevristika, algoritem, genetski algoritem, NSGA-II, generacija,<br />
populacija, osebek, mutacija, selekcija, elitizem, prekrižanje, kriterijska<br />
funkcija, nedominirano urejanje, metrika nakopičenosti, vodilni sloj po Paretu<br />
Keywords:<br />
electromagnetic wave, absorber, electromagnetic absorber, optimization, optimization<br />
problem, metaheuristics, algorithm, genetic algorithm, NSGA-II, generation,<br />
population, individual, mutation, selection, elitism, crossover, fitness function, nondominated<br />
sort, crowding distance, Pareto optimal front
Poglavje 1<br />
Uvod<br />
V zadnjih nekaj letih se je močno povečalo število brezžičnih komunikacij in s tem<br />
gostota elektromagnetnega valovanja (EM valovanja), zaradi česar prihaja do medsebojnega<br />
motenja posameznih naprav in zdravju škodljivega sevanja v naši okolici.<br />
Naprave in prostore lahko zaščitimo pred EM valovanjem tako, da valovanje bodisi<br />
odbijemo bodisi absorbiramo. Za odbojno zaščito zadošča tanka plast prevodnega<br />
materiala ali barve (Faradayeva kletka), vendar pri tem zaradi odboja povečamo<br />
število parazitskih signalov in motenj v okolici. Pri absorpcijski zaščiti pa skoraj<br />
vse (tipično več kot 99 %) vpadno valovanje preide v absorber, kjer se absorbira in<br />
pretvori v notranjo energijo. To najlažje dosežemo z uporabo kompozitnih materialov,<br />
kjer v osnovni material dodajamo polnila (ogljikovi delci, kovinska vlakna itd.),<br />
ki občutno izboljšajo absorpcijo materiala.<br />
Absorberje med seboj ločimo na tiste, ki delujejo blizu izvora EM valovanja, in<br />
tiste, ki delujejo na določeni oddaljenosti. Nas bodo, zaradi lastnosti razširjanja EM<br />
valovanja od nekega izvora, zanimali predvsem absorberji, ki delujejo na določeni<br />
oddaljenosti. Pri teh z izračuni lažje predvidimo obnašanje absorberja, medtem ko<br />
pri absorberjih z delovanjem v bližini izvora njihove lastnosti določamo predvsem<br />
eksperimentalno.<br />
Nekaj primerov uporabe absorberjev:<br />
1. absorpcijska zaščita objektov v bližini radarskih ter telekomunikacijskih sistemov,<br />
kar povzroči tudi manjše motnje delovanja teh sistemov in zmanjšanje<br />
gostote EM valovanja v okolju,<br />
2. manjšanje motenj in gostote EM valovanja zaradi brezžičnih intranetnih povezav,<br />
notranjih telekomunikacij in povezav med raznimi električnimi napravami,<br />
3. osebna zaščita pri delu v posebnih okoljih (npr. telekomunikacijski delavci),<br />
4. protiprisluškovalna zaščita prostorov in prenosnih linij (preprečevanje nadzora<br />
z radijskimi, mikrovalovnimi in IR senzorji) itd.<br />
Običajno vemo, kakšni so izvori valovanja, ki ga želimo absorbirati (mobiteli npr.<br />
oddajajo valovanje pri 0.9 GHz). Pogosto si želimo, da je iskani absorber čim tanjši,
seveda pa obstajajo tudi drugačne zahteve, kot recimo absorpcija na čim širšem<br />
frekvenčnem pasu okoli izbrane frekvence. Različni izvori oddajajo valovanja pri<br />
različnih frekvencah, z različno valovno dolžino, kar narekuje izdelavo različnih absorberjev.<br />
Podrobneje so valovanja predstavljena v dodatku A.<br />
Pri načrtovanju absorberjev je potrebno določiti kar nekaj prostih parametrov,<br />
ki odločajo o njihovih končnih lastnostih. Optimizacijo absorberjev glede na želene<br />
lastnosti smo zato izvedli z genetskim algoritmom, ki nam kot rezultat vrne več<br />
primerljivo dobrih rešitev. Spekter dobrih rešitev nam omogoča, da se kasneje glede<br />
na trenutne možnosti izdelave in potrebe strank sami odločimo, kateri absorber<br />
bomo izdelali.<br />
V diplomskem delu se na začetku spustimo v teoretično obravnavo enostavnih<br />
(enoplastnih) in večplastnih absorberjev. Predstavljena je geometrija sistema in<br />
enačbe, preko katerih izračunamo odbojne koeficiente posameznih absorberjev pri<br />
vnaprej določenih frekvencah. Enačbe so razložene na enostavnejši način in brez<br />
globjih izpeljav. Na koncu tega poglavja je dodana obravnava enostavnih primerov,<br />
preko katerih se jasno odražajo nekatere splošne lastnosti absorberjev in njihovih<br />
materialov. Tretje poglavje obravnava enokriterijski problem večplastnih EM absorberjev.<br />
Zanimala sta nas dva različna problema, ki smo ju rešili s pomočjo genetskih<br />
algoritmov. Na začetku poglavja so predstavljeni splošni principi genetskih<br />
algoritmov, kasneje pa značilnosti genetskih algoritmov, s katerimi sta bila problema<br />
optimizirana. Na koncu poglavja so navedeni in obrazloženi najboljši absorberji, ki<br />
smo jih dobili pri vnaprej izbranih parametrih. V četrtem poglavju je razložen<br />
problem večkriterijske optimizacije in genetski algoritem NSGA-II. Enokriterijska<br />
problema iz tretjega poglavja smo tu združili v dvokriterijski problem in ga rešili s<br />
pomočjo NSGA-II. Na koncu poglavja so predstavljeni in obravnavani še rezultati,<br />
ki smo jih dobili s takšno optimizacijo. V zaključku so povzeta naša dognanja in<br />
ideje nadaljnjega raziskovanja in možnih izboljšav.<br />
6
Poglavje 2<br />
Teoretičen vpogled v absorberje<br />
2.1 Enostavni absorberji<br />
Natančna teoretična obravnava razširjanja EM valovanja v absorberju je zelo odvisna<br />
od geometrije sistema, vendar lahko v približku interakcijo elektromagnetnega<br />
valovanja z absorberjem razdelimo na tri dele:<br />
1. vpad na prednjo steno – mejo med zrakom in absorberjem,<br />
2. absorbcija v notranjosti absorberja,<br />
3. vpad na zadnjo steno – mejo med absorberjem in zalednim materialom.<br />
¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ £ £ £ £ £ £ £<br />
£ £ ¡<br />
¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢<br />
£ £ £ £ £ £ £ £ £ £<br />
¤ ¤ ¥ ¥<br />
¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡<br />
¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¡ ¢<br />
¢ £ £ £ £ £ £ £ £ £<br />
£ £ £ £ £ £ £ £ £ £<br />
¤ ¤ ¥ ¥<br />
¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢<br />
¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡<br />
¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡<br />
¢ ¢ ¢ ¢ ¢<br />
¢ ¢ ¢ ¢ ¢ £ £ £ £ £ £ £ £ £<br />
£ £ £ £ £ £ £ £ £ £<br />
¤ ¤ ¥ ¥<br />
¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢<br />
¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡<br />
¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡<br />
¢ ¢ ¢ ¢ ¢<br />
¢ ¢ ¢ ¢ ¢ £ £ £ £ £ £ £ £ £<br />
£ £ £ £ £ £ £ £ £ £<br />
¤ ¤ ¥ ¥<br />
¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢<br />
¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡<br />
¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡<br />
¢ ¢ ¢ ¢ ¢<br />
¢ ¢ ¢ ¢ ¢ £ £ £ £ £ £ £ £ £<br />
£ £ £ £ £ £ £ £ £ £<br />
¤ ¤ ¥ ¥<br />
¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢<br />
¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡<br />
¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡<br />
¢ ¢ ¢ ¢ ¢<br />
¢ ¢ ¢ ¢ ¢ £ £ £ £ £ £ £ £ £<br />
£ £ £ £ £ £ £ £ £ £<br />
¤ ¤ ¥ ¥<br />
¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢<br />
¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡<br />
¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡<br />
¢ ¡ ¢ ¢ ¢ ¢<br />
¢ ¢ ¢ ¢ ¢ £ £ £ £ £ £ £ £ £<br />
£ £ £ £ £ £ £ £ £ £<br />
¤ ¤ ¥ ¥<br />
¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢<br />
¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡<br />
¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡<br />
¢ ¢ ¢ ¢ ¢<br />
¢ ¢ ¢ ¢ ¢ £ £ £ £ £ £ £ £ £<br />
£ £ £ £ £ £ £ £ £ £<br />
¤ ¤ ¥ ¥<br />
¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢<br />
¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡<br />
¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¢ ¢ ¢ ¢ ¢<br />
¢ ¢ ¢ ¢ ¢ £ £ £ £ £ £ £ £ £<br />
£ £ £ £ £ £ £ £ £ £<br />
¤ ¤ ¥ ¥<br />
¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡<br />
Slika 2.1: Struktura enostavnega absorberja.<br />
Relativna dielektričnost ε in relativna permeabilnost µ sta brezrazsežni količini, ki<br />
vplivata na odboj in prepustnost EM valovanja skozi dano snov. Relativna permeabilnost<br />
µ je definirana kot razmerje med gostoto magnetnega polja v izbrani snovi
2.1 Enostavni absorberji 8<br />
ter ustrezno gostoto v vakuumu. Izrazimo jo z enačbo<br />
µ = B<br />
µ 0 H ,<br />
pri čemer je µ 0 indukcijska konstanta, ki predstavlja permeabilnost praznega prostora:<br />
µ 0 = 4π · 10 −7 V s .<br />
= 1.257 · 10 −6 V s<br />
Am Am ,<br />
B je gostota magnetnega polja ter H jakost magnetnega polja. Relativna dielektričnost<br />
ε je definirana kot razmerje med gostoto električnega polja v snovi, kjer<br />
je električno polje, in gostoto električnega polja v praznem prostoru, če dielektrik<br />
(električni izolator) odstranimo iz električnega polja. Izračunamo jo preko enačbe<br />
ε = D<br />
ε 0 E ,<br />
pri čemer je ε 0 influenčna konstanta, ki predstavlja razmerje med gostoto in jakostjo<br />
električnega polja v praznem prostoru:<br />
ε 0<br />
. = 8.854 · 10<br />
−12 As<br />
V m ,<br />
D je gostota električnega polja ter E jakost električnega polja. V nadaljevanju bomo<br />
namesto pojmov relativna dielektričnost in relativna permeabilnost uporabljali zgolj<br />
pojma dielektričnost in permeabilnost in s tem mislili isto.<br />
Energija (E) v obliki EM valovanja vpade na mejo med zrakom z dielektričnostjo<br />
ε 1 ter permeabilnostjo µ 1 in absorberjem z dielektričnostjo ε 2 ter permeabilnostjo<br />
µ 2 (glej sliko 2.1). Del EM valovanja se pri vpadu odbije, del pa preide v notranjost<br />
absorberja. Del slednjega se v notranjosti absorberja pretvori v notranjo energijo,<br />
preostali del pa se odbije od zalednega materiala in ponovi pot v obratnem vrstnem<br />
redu. Iz absorberja se vrne preostanek energije (RE).<br />
Ko vpade EM valovanje na mejo med dvema sredstvoma, pride do delnega odboja<br />
na meji. Pri pravokotnem vpadu EM valovanja je velikost odbojnega koeficienta (oz.<br />
odbojnost) R 12 (med sredstvom 1 in sredstvom 2) določena z enačbo<br />
R 12 = Z 2 − Z 1<br />
Z 2 + Z 1<br />
.<br />
Pri tem sta Z 1 in Z 2 impedanci obeh medijev. Impedanca je posplošitev pojma<br />
električne upornosti na primere, ko se električni tok in napetost razlikujeta v fazi.<br />
Impedanca meri, kako in koliko se porabnik upira električnemu toku, če nanj priključimo<br />
električno napetost. Impedanco snovi lahko izračunamo, če poznamo njeno<br />
dielektričnost ε in permeabilnost µ:<br />
Z =<br />
√ µ<br />
ε . (2.1)
2.2 Večplastni absorberji 9<br />
Za kovino velja, da je njena impedanca Z = . 0, iz česar sledi, da je med poljubnim<br />
sredstvom in kovino odbojni koeficient |R| = . 1, kar v praksi pomeni popolni odboj.<br />
Odbojnost je enaka nič (ni odboja), ko sta obe impedanci enaki. Za zrak velja, da<br />
.<br />
je µz<br />
ε z<br />
= 1. V primeru, ko je prvi medij zrak, je zato odbojnost enaka nič, ko je<br />
v drugem mediju permeabilnost enaka dielektričnosti. Pri poševnem vpadu pa je<br />
potrebno upoštevati tudi to, da je impedanca odvisna od kota vpada. V razdelku<br />
večplastni absorberji smo si razlike, ki nastanejo v enačbah pri poševnem vpadu,<br />
tudi pogledali.<br />
Pri enostavnem absorberju (glej sliko 2.1), ki je sestavljen iz medija debeline d in<br />
zalednega materiala, s privzetkom, da se na njem EM valovanje popolnoma odbije<br />
(običajno je to kovinski premaz), je odbojni koeficient podan z izrazom<br />
R = iZ 2 tan(k 2 d √ µ 0 ε 0 ) − Z 1<br />
iZ 2 tan(k 2 d √ µ 0 ε 0 ) + Z 1<br />
, (2.2)<br />
kjer je k 2 valovno število v plasti. Valovno število meri število valov na enoto dolžine<br />
v smeri razširjanja valovanja. Za poljuben medij j ga določimo preko enačbe<br />
k j = ω(µ j ε j ) 1/2 , (2.3)<br />
kjer je ω krožna frekvenca, ki vemo, da je premosorazmerna s frekvenco ν:<br />
ω = 2πν.<br />
V notranjosti absorpcijskega materiala pa se amplituda EM valovanja manjša tako<br />
zaradi dielektričnih izgub kot tudi magnetnih izgub. Odbojni koeficient je po absolutni<br />
vrednosti vedno manjši od 1. V primeru, ko doseže vrednost 1, govorimo o<br />
popolnem odboju.<br />
Prepustnost absorberja lahko ravno tako izrazimo iz enačb elektromagnetizma,<br />
vendar je pri absorberjih, ki nas trenutno zanimajo, na zadnji strani prevodna plast,<br />
reflektor, ki popolnoma odbije vpadno valovanje. Pri teh absorberjih gre v bistvu<br />
za kombinacijo Faradayeve kletke, ki ščiti notranjost, in absorptivnih plasti,<br />
ki zmanjšujejo odboj vpadnega valovanja. Pri izdelavi enoplastnega (homogenega)<br />
absorberja s kovinskim reflektorjem na zadnji strani potrebne karakteristike materiala<br />
(izbira materiala, debelina d) določimo z minimizacijo R v enačbi (2.2) na<br />
zahtevanem frekvenčnem območju.<br />
2.2 Večplastni absorberji<br />
Prva zahteva za absorber je čim manjša odbojnost na zunanji ploskvi. Za to morata<br />
biti impedanci zunanjega medija in prve plasti absorberja približno enaki. Večplastni<br />
absorber sestavlja več zaporednih plasti, katerih permeabilnost in dielektričnost se<br />
(skoraj) zvezno spreminja od vrednosti zunanjega medija do visokih vrednosti (in<br />
s tem visokih izgub). To najlažje dosežemo z uporabo kompozitnih materialov,
2.2 Večplastni absorberji 10<br />
kjer v osnovni material z določeno dielektričnostjo dodajamo polnila z različnimi<br />
dielektričnostmi in permeabilnostmi.<br />
Načrtovanje plastovitega absorberja je zahteven problem, kjer je potrebno določiti<br />
število plasti ter sestavo in debelino posamezne plasti, da dobimo želene karakteristike.<br />
Odbojnost na plasteh je podana z izrazom, ki je soroden izrazu (2.2), vendar<br />
njegova kompleksnost raste z večanjem števila plasti. Pri minimizaciji odbojnosti<br />
imamo precej prostih parametrov (različni materiali, število plasti, njihov vrstni red<br />
ter debeline plasti). Uporabimo lahko že znane materiale (ferite) in ni potreben<br />
dodaten razvoj materialov. Tako konstruiran absorber je lahko zelo optimiziran,<br />
tako v smislu odbojnosti kot tudi debeline, teže in cene. Trenutno se za načrtovanje<br />
največ uporablja genetski algoritem, kjer dobimo kot rezultat nekaj primerljivih<br />
konstrukcij.<br />
Slika 2.2: Struktura večplastnega absorberja.<br />
Na sliki 2.2 sta prikazana odboj in prepustnost elektromagnetnih valov skozi<br />
večplastni absorber pri poljubnem kotu θ 2 . Z 1 je označen prvi medij, ki je v našem<br />
primeru zrak, z n pa je označen zadnji medij, v našem primeru je to material, ki
2.2 Večplastni absorberji 11<br />
valovanje popolnoma odbije. Plasti absorberja so homogene in izotropične (v vseh<br />
koordinatnih smereh imajo enake fizikalne lastnosti). Lastnosti posamezne plasti j<br />
so določene z dielektričnostjo ε j , permeabilnostjo µ j in debelino d j . Pri elektromagnetnem<br />
valovanju govorimo o spremembah električnih in magnetnih polj, ki se v<br />
praznem prostoru širijo s svetlobno hitrostjo. Umetni izvori EM valovanja, katerih<br />
valovanje obravnavamo, oddajajo transverzalno električno (TE) in transverzalno<br />
magnetno (TM) polarizirano valovanje (glej sliko 2.3). Prenos elektromagnetnega<br />
E <br />
TE polarizacija<br />
H TM polarizacija<br />
H k <br />
E k <br />
Slika 2.3: Vektorja jakosti električnega in magnetnega polja ( ⃗ E in ⃗ H) glede na smer<br />
širjenja valovanja ( ⃗ k) pri TE in TM polarizaciji.<br />
valovanja skozi absorber je določen z rekurzivno matrično enačbo:<br />
[ ] [ ]<br />
Ej−1 Ej<br />
= M<br />
H j−1 , j = 2, 3, . . .,n,<br />
j−1 H j<br />
kjer je E j = E y , H j = H x za pravokotno TE polarizacijo in E j = E x , H j = H y za<br />
vzporedno TM polarizacijo v določeni plasti j. Ta rekurzivna enačba nam določa<br />
matriko M, ki jo lahko zapišemo kot<br />
M = M 2 M 3 · · ·M j · · ·M n , (2.4)<br />
kjer je:<br />
Impedanca Z j pa je:<br />
[<br />
M j =<br />
− i<br />
]<br />
cosα j −iZ j sin α j<br />
,<br />
Z j<br />
sin α j cos α j<br />
α j = k j d j cosθ j<br />
√<br />
µ0 ε 0 .<br />
Z j =<br />
V j-ti plasti je lomni kot enak θ j ,<br />
valovno število k j že vemo, da je<br />
{<br />
ηj / cosθ j , TE polarizacija<br />
η j cos θ j , TM polarizacija .<br />
cosθ j = ( 1 − (k 1 /k j ) 2 sin 2 θ 2<br />
) 1/2<br />
,<br />
k j = ω(µ j ε j ) 1/2 ,
2.3 Nekaj enostavnih primerov 12<br />
notranja impedanca pa je<br />
η j = ( µ j<br />
ε j<br />
) 1/2 .<br />
Celotni odbojni koeficient R absorberja izračunamo s pomočjo matrike M:<br />
R = ((M) 11Z n − (M) 12 ) − Z 1 ((M) 22 − (M) 21 Z n )<br />
((M) 11 Z n − (M) 12 ) + Z 1 ((M) 22 − (M) 21 Z n ) .<br />
V zadnji plasti n, kjer je običajno kovinski premaz, je impedanca Z n<br />
. = 0 in se zato<br />
odbojni koeficient ustrezno poenostavi:<br />
R = −(M) 12 − Z 1 (M) 22<br />
−(M) 12 + Z 1 (M) 22<br />
. (2.5)<br />
Ker v vsaki plasti računamo s celotnim električnim poljem, ki je posledica vpada in<br />
odboja EM valovanja, se s tem upošteva tudi valovanje, ki se je odbilo ob zaledni<br />
material in potovalo skozi absorber v obratnem vrstnem redu.<br />
Formula za odbojni koeficient enoplastnih absorberjev iz prejšnjega razdelka je<br />
poseben primer formule 2.5. Dobimo jo pri n = 3 in s privzetkom, da valovanje<br />
vpade pod pravim kotom (θ 2 = 0). Seveda pri tem, enako kot kasneje pri večplastnih<br />
absorberjih, upoštevamo, da je prvi medij zrak in zadnji medij kovinski premaz, ki<br />
valovanje popolnoma odbije. Za zrak velja, da je Z z<br />
. = 1, in za kovino, da je Zk<br />
. = 0.<br />
2.3 Nekaj enostavnih primerov<br />
EM absorberje zgradimo iz nam že znanih in dosegljivih materialov, katerih lastnosti<br />
so eksperimentalno določene. Odbojnosti absorberjev izračunamo preko enačb iz<br />
razdelkov o enoplastnih in večplastnih absorberjih.<br />
Na voljo imamo 9 različnih materialov, katerih dielektričnosti so predstavljene v<br />
spodnji tabeli:<br />
oznaka materiala dielektričnost (ε)<br />
FM1 35–15i<br />
FM2 10–0.2i<br />
FM3 8–0.1i<br />
FM4 10–0.1i<br />
FM5 35–15i<br />
FM6 20–5i<br />
FM7 30–10i<br />
FM8 60–30i<br />
FM9 4–0.1i<br />
Permeabilnosti materialov od FM1 do FM8 so podane diskretno v odvisnosti od frekvenc<br />
(glej sliko 2.4). Shranjene so v tekstovnih datotekah, ki vsebujejo tri stolpce.
2.3 Nekaj enostavnih primerov 13<br />
V prvem stolpcu je shranjena frekvenca, v drugem stolpcu je realni del permeabilnosti<br />
in v tretjem stolpcu imaginarni del permeabilnosti. Za vsak material so<br />
permeabilnosti podane za približno 1600 različnih frekvenčnih vrednosti. Te frekvenčne<br />
vrednosti se pri vseh materialih začnejo nekje med 1 ·10 6 Hz in 4.5 ·10 7 Hz,<br />
približno enakomerno naraščajo in se pri vseh končajo z vrednostjo 1.8 · 10 10 Hz.<br />
Med seboj se te vrednosti pri različnih materialih ne pokrivajo. Za material FM9<br />
velja, da je njegova permeabilnost na tem celotnem frekvenčnem območju enaka 1.<br />
V tabeli v prilogi A je za boljšo predstavo prikazan spekter EM valovanja.<br />
V naslednjih primerih in tudi kasneje pri izvedbi samega algoritma smo se osredotočili<br />
le na primere, ko EM valovanje vpade na absorber pod pravim kotom.<br />
absolutna vrednost permeabilnosti<br />
6<br />
5.5<br />
5<br />
4.5<br />
4<br />
3.5<br />
3<br />
2.5<br />
2<br />
1.5<br />
1<br />
0.5<br />
FM2<br />
FM4<br />
FM6<br />
0 2 4 6 8 10 12 14 16 18<br />
frekvenca (GHz)<br />
Slika 2.4: Spreminjanje permeabilnosti materialov FM2, FM4 in FM6 v odvisnosti<br />
od frekvence.<br />
Z danimi materiali dobimo enostavne absorberje z odbojnostmi, ki so predstavljene<br />
na slikah 2.5, 2.6, 2.7 in 2.8. Pri vseh je na koncu dodan kovinski premaz,<br />
ki preprečuje prodor EM valovanja. Za računanje smo uporabili programski paket<br />
Matlab. Odbojnosti smo izračunali preko enačb iz razdelka o enostavnih absorberjih<br />
za vsako frekvenčno vrednost posebej. Ko v enačbo (2.2) vstavimo impedanci za<br />
izbrani material (Z 2 ) in zrak (Z 1 ), pri čemer za zrak upoštevamo približek µ 1<br />
.<br />
ε 1<br />
= 1,<br />
se enačba ustrezno poenostavi:<br />
R =<br />
i√<br />
µ2<br />
ε 2<br />
tan(k 2 d √ µ 0 ε 0 ) − 1<br />
i√<br />
µ2<br />
ε 2<br />
tan(k 2 d √ .<br />
µ 0 ε 0 ) + 1<br />
V valovni vektor<br />
k 2 = 2πν √ µ 2 ε 2
2.3 Nekaj enostavnih primerov 14<br />
5<br />
0<br />
odbojnost (dB)<br />
−5<br />
−10<br />
−15<br />
−20<br />
−25<br />
2 mm<br />
5 mm<br />
10 mm<br />
1 m<br />
0 2 4 6 8 10 12 14 16 18<br />
frekvenca (GHz)<br />
Slika 2.5: Odbojnost enoplastnih absorberjev, sestavljenih iz materiala FM4, pri<br />
različnih debelinah.<br />
vstavimo vektor tabeliranih frekvenc in vektor njim ustreznih permeabilnosti. Dielektričnost<br />
je za celotno frekvenčno območje enaka ter se spreminja le od materiala<br />
do materiala. Kot rezultat dobimo vektor odbojnosti (odbojnost izbranega absorberja<br />
glede na dano frekvenco). Odbojnost vsebuje tudi imaginarno komponento,<br />
ki običajno predstavlja zamik v fazi, nas pa zanima samo dejanska velikost (moč),<br />
torej absolutna vrednost |R|, ki jo v dB izrazimo z ustrezno pretvorbo: 20 log 10 |R|.<br />
Na teh grafih je razvidnih nekaj splošnih značilnosti takšnih absorberjev. Če<br />
pogledamo enoplastni EM absorber, narejen iz materiala FM4, pri izbrani frekvenci<br />
4 GHz (glej sliko 2.5), vidimo, da pri debelini 2 mm doseže malo nižjo odbojnost od<br />
−4 dB. S povečanjem debeline na 5 mm se odbojnost zniža na približno −12 dB, z<br />
dodatnim povečanjem debeline na 10 mm pa se odbojnost zopet dvigne nad −6 dB.<br />
Če podatke za ta konkretni primer enoplastnega absorberja iz materiala FM4 pri<br />
frekvenci 4 GHz vnesemo v naše enačbe, dobimo:<br />
kjer je<br />
R = i√ µ<br />
tan α − 1<br />
ε<br />
i √ µ<br />
tanα + 1 ,<br />
ε<br />
α = d · 2πν √ µε · √µ<br />
0 ε 0 .<br />
Spreminjamo samo debelino d, zato lahko v enačbi vstavimo poleg ε 0 in µ 0 tudi
2.3 Nekaj enostavnih primerov 15<br />
5<br />
0<br />
odbojnost (dB)<br />
−5<br />
−10<br />
−15<br />
−20<br />
FM2<br />
FM4<br />
FM6<br />
0 2 4 6 8 10 12 14 16 18<br />
frekvenca (GHz)<br />
Slika 2.6: Graf odbojnosti za enostavne absorberje z materiali FM2, FM4 in FM6<br />
pri debelini 2 mm.<br />
5<br />
0<br />
odbojnost (dB)<br />
−5<br />
−10<br />
−15<br />
−20<br />
FM2<br />
FM4<br />
FM6<br />
0 2 4 6 8 10 12 14 16 18<br />
frekvenca (GHz)<br />
Slika 2.7: Graf odbojnosti za enostavne absorberje z materiali FM2, FM4 in FM6<br />
pri debelini 5 mm.
2.3 Nekaj enostavnih primerov 16<br />
5<br />
0<br />
odbojnost (dB)<br />
−5<br />
−10<br />
−15<br />
−20<br />
−25<br />
FM2<br />
FM4<br />
FM6<br />
0 2 4 6 8 10 12 14 16 18<br />
frekvenca (GHz)<br />
Slika 2.8: Graf odbojnosti za enostavne absorberje z materiali FM2, FM4 in FM6<br />
pri debelini 10 mm.<br />
naslednje vrednosti:<br />
Dobimo:<br />
ν = 4 · 10 9 s −1 , ε = 10 − 0.1i, µ = 1.1258 − 1.144i.<br />
R =<br />
. √<br />
i<br />
√<br />
1.1258−1.144i<br />
i<br />
10−0.1i<br />
tan(d · (3.0913 · 10 2 − 1.3132 · 10 2 i)) − 1<br />
.<br />
1.1258−1.144i<br />
10−0.1i<br />
tan(d · (3.0913 · 10 2 − 1.3132 · 10 2 i)) + 1<br />
Ko vstavimo želeno debelino, dobimo α, ki je kompleksno število, zato tangens<br />
izračunamo s formulo:<br />
sin(2Re(α))<br />
tan(Re(α) − iIm(α)) =<br />
cos(2Re(α)) + cosh(2Im(α)) − i sinh(2Im(α))<br />
cos(2Re(α)) + cosh(2Im(α)) .<br />
Pri debelini d 1 = 2 · 10 −3 m je α 1<br />
. = 0.6183 − 0.2626i ter tan(α1 ) . = 0.6430 − 0.3742i,<br />
pri debelini d 2 = 5 · 10 −3 m je α 2<br />
. = 1.5457 − 0.6566i ter tan(α2 ) . = 0.0504 − 1.7336i in<br />
pri debelini d 3 = 10 · 10 −3 m je α 3<br />
. = 3.0913 − 1.3132i ter tan(α3 ) . = −0.0126 − 0.8656i.<br />
Dobimo vrednosti odbojnih koeficientov:<br />
R 1<br />
. =<br />
(0.1556 + 0.3714i)(0.6430 − 0.3742i) − 1<br />
(0.1556 + 0.3714i)(0.6430 − 0.3742i) + 1<br />
R 2<br />
. =<br />
(0.1556 + 0.3714i)(0.0504 − 1.7336i) − 1<br />
(0.1556 + 0.3714i)(0.0504 − 1.7336i) + 1<br />
R 3<br />
. =<br />
(0.1556 + 0.3714i)(−0.0126 − 0.8656i) − 1<br />
(0.1556 + 0.3714i)(−0.0126 − 0.8656i) + 1<br />
.<br />
= −0.5806 + 0.2304i,<br />
.<br />
= −0.1835 − 0.1799i,<br />
.<br />
= −0.4990 − 0.1583i.
2.3 Nekaj enostavnih primerov 17<br />
Nas zanima dejanska moč odboja, torej odbojni koeficient izražen v dB:<br />
R 1<br />
R 2<br />
R 3<br />
= 20log 10 (|R 1 |) . = −4.0873 dB,<br />
= 20log 10 (|R 2 |) . = −11.8022 dB,<br />
= 20log 10 (|R 3 |) . = −5.6215 dB.<br />
S samim povečanjem oziroma zmanjšanjem debeline absorberja torej ne moremo<br />
enostavno predvideti njegovega izboljšanja oziroma poslabšanja. S slike 2.5, kjer je<br />
predstavljen tudi enoplastni absorber iz materiala FM4 in debeline 1 m, je razvidno,<br />
da tudi zelo veliko povečanje debeline ne vodi nujno k dovolj dobrim absorberjem.<br />
Koristno se je vprašati, kaj določena vrednost odbojnosti pomeni v praksi. Odbojnost<br />
v deležu izračunamo preko enačbe R delez = Po<br />
P v<br />
, torej je definirana kot razmerje<br />
med odbito in vpadno močjo EM valovanja. Odbojnost v dB pa izračunamo<br />
preko enačbe R = 10 log 10 (R delez ). Razlika v faktorju 2 pri tej pretvorbi in pretvorbi,<br />
ki jo uporabljamo mi, nastane, ker mi odbojnost računamo kot razmerje jakosti električnega<br />
polja E, katerega kvadrat je sorazmeren P, moči EM valovanja. V spodnji<br />
tabeli je tako predstavljenih nekaj primerov:<br />
odbojnost (dB) odboj vpadnega valovanja (%)<br />
−3 50<br />
−7 20<br />
−10 10<br />
−13 5<br />
−20 1<br />
−30 0.1<br />
S slik 2.4 in 2.5 je razvidno, da na podlagi spreminjanja permeabilnosti težko<br />
predvidimo spreminjanje odbojnosti pri različnih frekvenčnih vrednostih in debelinah.<br />
Grafi odbojnosti se s spremembo debeline absorberja močno spreminjajo in<br />
tako se npr. na odseku, kjer je graf odbojnosti monotona funkcija, s spremembo<br />
debeline plasti spremeni v nemonotono funkcijo (glej označena pasova na slikah 2.6<br />
in 2.8). Enačbo odbojnosti bi bilo potrebno obravnavati veliko kompleksnejše, vendar<br />
se tu poraja vprašanje, ali je to v našem primeru, kjer želimo problem optimizirati<br />
z genetskim algoritmom, sploh smiselno.<br />
Z grafov je razvidno tudi, da med 16 GHz in 18 GHz prihaja do napake, saj<br />
se odbojnost dvigne nad 0 dB, kar v realnosti ni mogoče. To se zgodi pri enoplastnih<br />
absorberjih iz materiala FM2 in enoplastnih absorberjih iz materiala FM4.<br />
Na sliki 2.4 lahko vidimo, da pri teh dveh materialih na tem frekvenčnem območju<br />
pride do relativno velikih sprememb permeabilnosti. Smiselno bi bilo te vrednosti<br />
ponovno izmeriti, ker obstaja možnost, da je do napake prišlo že pri samem merjenju.<br />
Izračunane odbojnosti na tem frekvenčnem območju zato niso pravilne tudi<br />
pri večplastnih absorberjih, ki v plasti vsebujejo tak material.<br />
Slika 2.9 predstavlja odbojnost večplastnih absorberjev, sestavljenih iz treh izbranih<br />
materialov konstantne debeline in z ustreznim kovinskim premazom na koncu
2.3 Nekaj enostavnih primerov 18<br />
0<br />
−5<br />
−10<br />
odbojnost (dB)<br />
−15<br />
−20<br />
−25<br />
−30<br />
−35<br />
0 2 4 6 8 10 12 14 16 18<br />
frekvenca (GHz)<br />
FM1|FM2|FM3<br />
FM4|FM6|FM8<br />
FM3|FM4|FM5<br />
Slika 2.9: Grafi odbojnosti za večplastne absorberje, pri katerih je vsaka plast debeline<br />
5 mm, na koncu zadnje plasti pa je ustrezen kovinski premaz, ki EM valovanje<br />
popolnoma odbije.<br />
absorberja, ki preprečuje prodor EM valovanja. Odbojnost večplastnega absorberja<br />
izračunamo preko enačb iz razdelka o večplastnih absorberjih. Enačba za odbojni<br />
koeficient se tako dodatno poenostavi na<br />
R = −(M) 12 − (M) 22<br />
−(M) 12 + (M) 22<br />
.<br />
Matrika M je velikosti 2 × 2, dobimo jo preko enačbe (2.4), pri čemer je<br />
[ √ √ ]<br />
cos(k j d j µ0 ε 0 ) −iZ j sin(k j d j µ0 ε 0 )<br />
M j =<br />
− i √ √ ,<br />
Z j<br />
sin(k j d j µ0 ε 0 ) cos(k j d j µ0 ε 0 )<br />
k j = 2πν √ µ j ε j<br />
in d j debelina j-te plasti absorberja.<br />
Težava nastane, ker podatki o permeabilnostih niso enotni pri vseh materialih.<br />
Frekvenčne vrednosti so pri teh podatkih približno enakomerno razporejene<br />
na območju od 4.5 · 10 7 Hz do 1.8 · 10 10 Hz, vendar od materiala do materiala ne<br />
sovpadajo. Pomagali smo si s funkcijo Material1, ki izvede linearno interpolacijo<br />
in vrne preračunane vrednosti permeabilnosti za želene frekvenčne vrednosti. Uporabili<br />
smo enakomerno razporejene frekvenčne vrednosti po omenjenem intervalu.<br />
S tem smo podatke poenotili. Nadalje kot pri izračunu odbojnosti za enoplastni<br />
absorber na mesto ν vstavimo vektor frekvenc in na mesto µ j vektor njim ustreznih
2.3 Nekaj enostavnih primerov 19<br />
0<br />
−5<br />
−10<br />
odbojnost (dB)<br />
−15<br />
−20<br />
−25<br />
−30<br />
−35<br />
0 2 4 6 8 10 12 14 16 18<br />
frekvenca (GHz)<br />
FM3|FM4|FM5<br />
FM4|FM3|FM5<br />
FM3|FM5|FM4<br />
Slika 2.10: Grafi odbojnosti za večplastne absorberje z različnim vrstnim redom<br />
materialov FM3, FM4 in FM5, pri katerih je vsaka plast debeline 5 mm, na koncu<br />
zadnje plasti pa je ustrezen kovinski premaz, ki EM valovanje popolnoma odbije.<br />
permeabilnosti za izbran material v j-ti plasti. Prav tako dobimo vektor odbojnih<br />
koeficientov, kjer vsaka komponenta vektorja predstavlja odbojnost pri izbrani<br />
frekvenci. Enako kot pri enoplastnih absorberjih izračunamo absolutne vrednosti<br />
odbojnih koeficientov in jih izrazimo v dB (20 log 10 |R|).<br />
Na slikah 2.10 in 2.11 so predstavljeni primeri triplastnih absorberjev, ki imajo<br />
po sosednjih plasteh izmenjane materiale. Na sliki 2.12 pa so grafi triplastnih absorberjev<br />
z enakimi materiali po plasteh, vendar z izmenjanimi debelinami sosednjih<br />
plasti. Iz teh grafov je razvidno, da menjava sosednjih plasti, tako v smislu materialov<br />
kot debeline, privede do sprememb, ki lahko izboljšajo lastnosti absorberja.<br />
Vendar pa s primerjavo slik 2.13 in 2.14 ni videti, da izmenjava dveh materialov<br />
v sosednjih plasteh vodi do boljših absorberjev, kot če material v poljubni plasti<br />
enostavno naključno spremenimo v kak drug material.
2.3 Nekaj enostavnih primerov 20<br />
0<br />
−5<br />
odbojnost (dB)<br />
−10<br />
−15<br />
−20<br />
−25<br />
−30<br />
−35<br />
0 2 4 6 8 10 12 14 16 18<br />
frekvenca (GHz)<br />
FM3|FM4|FM5<br />
FM4|FM3|FM5<br />
FM3|FM5|FM4<br />
Slika 2.11: Grafi odbojnosti za večplastne absorberje z različnim vrstnim redom<br />
materialov FM3, FM4 in FM5, pri katerih so plasti od prve do tretje debeline 1 mm,<br />
2 mm in 5 mm, na koncu zadnje plasti pa je ustrezen kovinski premaz, ki EM<br />
valovanje popolnoma odbije.<br />
0<br />
−5<br />
odbojnost (dB)<br />
−10<br />
−15<br />
−20<br />
−25<br />
−30<br />
−35<br />
0 2 4 6 8 10 12 14 16 18<br />
frekvenca (GHz)<br />
1 mm|2 mm|5 mm<br />
2 mm|1 mm|5 mm<br />
1 mm|5 mm|2 mm<br />
Slika 2.12: Grafi odbojnosti za večplastne absorberje z materiali FM3, FM4 in FM5<br />
po plasteh, katerih debeline variirajo med 1 mm, 2 mm in 5 mm, na koncu zadnje<br />
plasti pa je ustrezen kovinski premaz, ki EM valovanje popolnoma odbije.
2.3 Nekaj enostavnih primerov 21<br />
0<br />
−5<br />
odbojnost (dB)<br />
−10<br />
−15<br />
−20<br />
−25<br />
−30<br />
−35<br />
0 2 4 6 8 10 12 14 16 18<br />
frekvenca (GHz)<br />
FM3|FM4|FM5<br />
FM1|FM4|FM5<br />
FM3|FM7|FM5<br />
Slika 2.13: Primerjava odbojnosti večplastnega absorberja, sestavljenega iz materialov<br />
FM3, FM4 in FM5, z odbojnostjo dveh večplastnih absorberjev, ki jima material<br />
v naključni plasti spremenimo v nov naključni material iz baze materialov. Vse plasti<br />
vseh treh absorberjev so debeline 5 mm, na koncu zadnje plasti pa je ustrezen<br />
kovinski premaz, ki EM valovanje popolnoma odbije.<br />
0<br />
−5<br />
odbojnost (dB)<br />
−10<br />
−15<br />
−20<br />
−25<br />
−30<br />
−35<br />
0 2 4 6 8 10 12 14 16 18<br />
frekvenca (GHz)<br />
FM3|FM4|FM5<br />
FM1|FM4|FM5<br />
FM3|FM7|FM5<br />
Slika 2.14: Primerjava odbojnosti večplastnega absorberja, sestavljenega iz materialov<br />
FM3, FM4 in FM5, z odbojnostjo dveh večplastnih absorberjev, ki jima material<br />
v naključni plasti spremenimo v nov naključni material iz baze materialov. Plasti<br />
vseh treh absorberjev so od prve do tretje debeline 1 mm, 2 mm in 5 mm, na koncu<br />
zadnje plasti pa je ustrezen kovinski premaz, ki EM valovanje popolnoma odbije.
Poglavje 3<br />
Reševanje enokriterijskega<br />
problema večplastnih EM<br />
absorberjev z genetskimi algoritmi<br />
Pri reševanju tega problema sta bila za splošno razumevanje genetskih algoritmov<br />
uporabljena vira [Ro02] in [Mi99], pri sami izdelavi algoritmov pa so bili v pomoč<br />
tudi [MSRM93], [HJK95] in [MD03].<br />
3.1 Terminologija genetskega algoritma<br />
Genetski algoritem je močno optimizacijsko orodje, ki posnema princip naravne<br />
evolucije. V zvezi z njim se uporablja za področje biologije značilna terminologija.<br />
Osnovna enota v genetskem algoritmu je osebek. Osebek predstavlja kandidata<br />
za rešitev problema, ki ga rešujemo z genetskim algoritmom. Lastnosti osebka so<br />
zapisane v njegovih kromosomih, katerih osnovne enote so geni. Skupino osebkov, ki<br />
obstajajo hkrati, imenujemo populacija. Običajno omenjamo populacijo staršev in<br />
populacijo potomcev. V vsakem koraku genetskega algoritma iz populacije staršev s<br />
pomočjo genetskih operatorjev določimo populacijo potomcev. Ko želimo poudariti,<br />
za katero populacijo po vrsti gre, govorimo o n-ti generaciji. S pomočjo selekcije<br />
iz populacije staršev izberemo posamezne osebke, t.i. starše, ki predstavljajo podlago<br />
za generiranje nove populacije potomcev. Pomembno je, da selekcija pogosteje<br />
izbira iz populacije boljše osebke, vendar hkrati tudi ne onemogoči izbire slabših<br />
osebkov. Nove osebke (potomce) dobimo z genetskim operatorjem prekrižanja (angl.<br />
crossover). Prekrižanje deluje na dveh osebkih populacije staršev in nam vrne dva<br />
nova osebka (potomca). Kot je značilno za genetske procese v naravi, se tudi tu<br />
z majhno verjetnostjo pojavi mutacija. Mutacija je genetski operator, ki deluje na<br />
enem samem osebku tako, da mu naključno spremeni genetski zapis kromosomov.<br />
Na sliki 3.1 je predstavljena splošna shema genetskega algoritma.
3.2 Lastnosti genetskih algoritmov 23<br />
ZAÈETEK<br />
DOLOÈI ZAÈETNO POPULACIJO<br />
OCENI NOVO POPULACIJO<br />
KONEC?<br />
NE<br />
DA<br />
KONEC<br />
SELEKCIJA IN PREKRIANJE<br />
DOLOÈI NOVO POPULACIJO<br />
MUTACIJA<br />
Slika 3.1: Shema genetskega algoritma.<br />
3.2 Lastnosti genetskih algoritmov<br />
Ko želimo narediti genetski algoritem, moramo najprej izbrati način zapisa podatkov.<br />
Za tem se moramo odločiti, kateri tip selekcije, prekrižanja in mutacije bomo<br />
uporabljali v algoritmu. Na koncu pa moramo določiti še vse parametre algoritma.<br />
Način zapisa osebka je zelo pomemben faktor, ki pogosto odloča o učinkovitosti<br />
izvajanja algoritma. Ogromno genetskih algoritmov ima osebke predstavljene z<br />
dvojiškimi nizi vnaprej določene dolžine. Tu ima vsako mesto v osebku oz. kromosomu<br />
(v teh primerih običajno govorimo samo o enem kromosomu) dve možni<br />
vrednosti: 0 in 1. Mi pa smo, zaradi naravnega načina kodiranja, lažjega prepoznavanja<br />
rešitev in tudi zaradi lastnosti programa Matlab, izbrali naravni zapis, kjer je<br />
posamezen kromosom predstavljen z vektorjem. V našem primeru lahko govorimo o<br />
dveh kromosomih. Prvi hrani informacije o izbiri materiala po posameznih plasteh<br />
in drugi informacije o debelini posamezne plasti večplastnega absorberja.<br />
Ko smo se odločili za zapis, nadaljujemo z izbiro načina selekcije. Če želimo<br />
selekcijo uspešno izvesti, moramo imeti na voljo podatke o tem, koliko je posamezen<br />
osebek dober. Pred izvedbo selekcije moramo osebke oceniti. Osebke ocenimo<br />
s kriterijsko funkcijo, ki vsakemu osebku priredi število oziroma vrednost osebka.<br />
Kriterijska funkcija je odvisna od problema in njegovega zapisa. Namen selekcije je<br />
omogočiti boljšim osebkom lažje preživetje in parjenje, kar z upanjem vodi tudi k<br />
boljšim potomcem. Če je selekcija premočna, lahko iz populacije izloči slabše osebke<br />
in oslabi raznolikost populacije. V takem primeru začnejo hitro prevladovati osebki<br />
z enakim genetskim zapisom, konvergenca se ustavi pri kakem lokalnem ekstremu<br />
in onemogoči konvergenco proti globalnemu ekstremu. Če pa je selekcija prešibka,<br />
je evolucija prepočasna. Najti je torej potrebno pravi način selekcije, ki bo pripeljal<br />
do dobrih rešitev. V uporabi so različne metode selekcije:<br />
1. Utežena selekcija z ruleto (angl. weighted roulette wheel selection) je selekcija,<br />
pri kateri je osebek izbran z verjetnostjo, ki je sorazmerna njegovi vrednosti
3.2 Lastnosti genetskih algoritmov 24<br />
kriterijske funkcije F. Lahko si jo predstavljamo kot kolo, ki je razdeljeno na<br />
toliko delov, kolikor je osebkov v populaciji (glej sliko 3.2). Velikost j-tega dela<br />
je sorazmerna kakovosti osebka, določeni s kriterijsko funkcijo F. Verjetnost<br />
p j , da bo izbran j-ti osebek, je<br />
p j =<br />
F j<br />
∑<br />
k F .<br />
k<br />
Slika 3.2: Selekcija z ruleto.<br />
2. Elitizem se uporablja kot dodatek k selekciji, pri katerem določeno število najboljših<br />
osebkov enostavno prepišemo v populacijo potomcev. S tem preprečimo<br />
izgubo najboljših rešitev. Elitizem se mnogokrat izkaže kot zelo učinkovit prijem<br />
za pospeševanje konvergence.<br />
3. Pri tekmovalni selekciji (angl. tournament selection) naključno izberemo dva<br />
osebka iz populacije staršev. Z naključnim številom r, ki je med 0 in 1, izberemo,<br />
kateri osebek bo postal starš in kateri ne. Če je r manjši od določenega<br />
parametra (npr. 0.75), izberemo boljšega, sicer pa slabšega izmed osebkov.<br />
Osebka sta lahko s ponovitvijo tekmovalne selekcije ponovno izbrana. Pri<br />
tekmovalni selekciji za razliko od utežene selekcije ne upoštevamo, koliko je<br />
določen osebek dejansko dober, temveč le, ali je boljši od drugega. Oglejmo si<br />
primer tekmovalne selekcije v primeru, ko imamo zaporedje n različnih osebkov,<br />
ki so urejeni od najboljšega do najslabšega. Med dvema naključno izbranima<br />
osebkoma je z verjetnostjo r izbran boljši osebek. Zanima nas dogodek<br />
A n,r<br />
k<br />
, ko je s tekmovalno selekcijo izbran k-ti osebek. Zanj velja naslednja<br />
verjetnost:<br />
P(A n,r<br />
k ) = 1 · (1 + 2((n − k)r + (k − 1)(1 − r))).<br />
n2 Če je r = 1 (vedno izberemo boljšega izmed osebkov), je s tekmovalno selekcijo<br />
k-ti osebek izbran z verjetnostjo:<br />
P(T n,1<br />
k<br />
) =<br />
1 + 2(n − k)<br />
n 2 .
3.2 Lastnosti genetskih algoritmov 25<br />
Če so osebki členi zaporedja naravnih števil n, n −1, . . .,1, je ta verjetnost pri<br />
velikem številu n praktično enaka verjetnosti, da z uteženo selekcijo izberemo<br />
k-ti osebek:<br />
P(Uk n ) = ∑ n − k 2(n − k)<br />
n =<br />
i=1<br />
i n 2 + n .<br />
S tekmovalno selekcijo preprečimo prehitro konvergenco algoritma.<br />
Po izbiri ustrezne selekcije nadaljujemo z izvedbo prekrižanja. Ker se v genetskem<br />
algoritmu za zapis kromosomov zelo pogosto uporablja dvojiške nize, bi na<br />
tem mestu omenili tudi osnovno idejo prekrižanja za takšen zapis. Najenostavnejše<br />
je prekrižanje z eno točko (slika 3.3). Pri tem naključno izberemo točko prekrižanja,<br />
to je mesto, od katerega naprej si starša zamenjata ves genetski zapis. Ker pa v tem<br />
starša<br />
0 1 0 1 1 0 1 1 0<br />
toèka prekrianja<br />
1 0 0 1 0 1 0 0 0<br />
potomca<br />
0 1 0 1 0 1 0 0 0<br />
1 0 0 1 1 0 1 1 0<br />
Slika 3.3: Prekrižanje z eno točko.<br />
primeru ne dosežemo vseh možnih rešitev z enako verjetnostjo, se pogosto uporablja<br />
prekrižanje z dvema točkama. Pri tem si starša izmenjata vse gene med dvema naključno<br />
izbranima točkama. Analogen način prekrižanja bi sicer lahko uporabili tudi<br />
v našem primeru, kjer bi tako križali materiale po plasteh. Zanj se nismo odločili,<br />
ker so v absorberju največ štiri, pet plasti, velikokrat pa nas je zanimal rezultat tudi<br />
pri manjšem številu plasti. Če so kromosomi zapisani v naravni obliki, je prekrižanje<br />
povsem odvisno od zapisa. Prekrižanje, ki smo ga uporabili, je podrobneje opisano<br />
v naslednjem razdelku.<br />
Čeprav je prekrižanje glavno orodje, s katerim dosežemo izboljšanje rezultatov,<br />
nam mutacija pomaga, da se ne ustavimo v lokalnem optimumu problema. Mutacija<br />
navadno spremeni naključni del kromosoma. Če so kromosomi zapisani v dvojiškem<br />
nizu, nam mutacija lahko enostavno naključni gen spremeni iz 0 v 1 ali obratno.<br />
Kot prekrižanje je tudi naša mutacija podrobneje opisana v naslednjem razdelku.<br />
Verjetnost pojavljanja mutacije se za doseganje optimalnih rezultatov prilagaja naravi<br />
optimizacijskega problema, vsekakor pa se pri pogostejšem pojavljanju osebki<br />
gradijo veliko bolj naključno.<br />
Genetski algoritmi se med sabo razlikujejo tudi po tem, ali tekom algoritma<br />
dovoljujejo nedopustne rešitve. Po delovanju genetskih operatorjev se rešitve lahko<br />
toliko spremenijo, da postanejo nedopustne. Obstaja več možnosti reševanja tega<br />
problema:<br />
1. Nekateri algoritmi v samih genetskih operatorjih poskrbijo, da rešitve ostajajo<br />
dopustne.
3.3 Genetski algoritmi za problem večplastnega absorberja 26<br />
2. Nekateri dovolijo izvedbo nedopustnih rešitev, vendar jih nato algoritem med<br />
ocenjevanjem ustrezno popravi.<br />
3. Nekateri dovolijo obstoj nedopustnih rešitev skozi celotno evolucijo, vendar se<br />
take rešitve pri vrednotenju kakovosti označijo kot zelo slabe.<br />
Mi smo problem rešili na zadnji način.<br />
Da je genetski algoritem kar se da učinkovit, je potrebno najti pravo ravnotežje<br />
med selekcijo, prekrižanjem in mutacijo. To ravnotežje je odvisno tudi od kriterijske<br />
funkcije in oblike zapisa osebkov. Med ključne parametre sodijo velikost populacije,<br />
verjetnost mutacije ipd. Zelo je pomembno, kakšne parametre izberemo, vendar<br />
recept, ki bi povedal, kakšni naj bodo, ne obstaja. Navadno se parametre določa<br />
eksperimentalno in ti so od problema do problema drugačni. Eden izmed parametrov<br />
je tudi kriterij zaustavitve algoritma, ki nam pove, kdaj naj končamo evolucijo.<br />
Najpogosteje uporabljeni zaustavitveni kriteriji so:<br />
1. V evoluciji naredimo vnaprej določeno število generacij. Rešitev, ki jo vrne<br />
algoritem, je najboljša rešitev zadnje generacije.<br />
2. Postavimo aproksimacijsko zahtevo in algoritem se konča, ko jo najboljša<br />
rešitev doseže. Tu je večinoma potrebno vsaj približno vedeti, kakšna je optimalna<br />
rešitev problema.<br />
3. Razvijamo populacije, dokler se najboljše rešitve čez nekaj zadnjih generacij<br />
ne spreminjajo več.<br />
Mi smo uporabili prvi zaustavitveni kriterij.<br />
Potrebno je poudariti, da genetski algoritem zaradi svoje strukture kot rezultat<br />
ne vrne le najboljše rešitve problema, temveč celotno populacijo. To je posebej<br />
dobrodošlo v našem primeru, kjer lahko dostopamo do več primerljivo dobrih rešitev<br />
in se na podlagi izvedljivosti, cene in želja strank tudi kasneje odločamo, katera<br />
rešitev je za nas najprimernejša. Seveda pa genetski algoritmi ne zagotavljajo najdbe<br />
optimalne rešitve. Včasih tudi dolg čas izvajanja algoritma ne vodi k dovolj dobrim<br />
rešitvam. Od danega problema in njegovega formalnega opisa je odvisno, ali bodo<br />
genetski algoritmi primerna metoda reševanja.<br />
3.3 Genetski algoritmi za problem večplastnega<br />
absorberja<br />
V tem razdelku je opisana enokriterijska optimizacija večplastnih EM absorberjev,<br />
ki smo jo implementirali v programskem paketu Matlab.<br />
Lastnosti naših materialov so podane s podatki o dielektričnosti ε in permeabilnosti<br />
µ. Dielektričnost vsebuje realen in imaginaren del in se od materiala do<br />
materiala razlikuje. Vse dielektričnosti smo zapisali v vektor, katerega dolžina je
3.3 Genetski algoritmi za problem večplastnega absorberja 27<br />
enaka številu razpoložljivih materialov. Permeabilnosti pa se razlikujejo od frekvence<br />
do frekvence. Na voljo so nam tekstovne datoteke, kjer je v prvem stolpcu<br />
podana frekvenca v Hz, v drugem stolpcu je podan realni del permeabilnosti in<br />
v tretjem imaginarni del permeabilnosti. Te permeabilnosti so bile eksperimentalno<br />
določene za različne vrednosti frekvenc, ki pa se od materiala do materiala<br />
ne pokrivajo. Vse zavzemajo frekvenčni pas od 4.5 · 10 7 Hz do 1.8 · 10 10 Hz in so<br />
določene za približno 1600 frekvenčnih vrednosti. Mi smo s funkcijo Material1 izvedli<br />
linearno interpolacijo. V vektor mi smo shranili preračunane permeabilnosti za<br />
izbrano število frekvenčnih vrednosti, ki so enakomerno porazdeljene po izbranem<br />
frekvenčnem intervalu iz omenjenega frekvenčnega pasu. Ta izbrani frekvenčni interval<br />
bomo nadalje imenovali delovni frekvenčni interval. Delovni frekvenčni interval<br />
in želeno število frekvenčnih vrednosti na njem podamo v datoteki podatki.mat.<br />
Dovolili smo možnost izbire optimizacije po dveh različnih kriterijih. V prvi nas<br />
zanima absorber, ki pri izbrani frekvenci (4 GHz) omeji odbojnost, izraženo v dB,<br />
pod izbrano vrednost (−10 dB). Iščemo pa absorber, ki ima odbojnost omejeno pod<br />
izbrano vrednost na čim širšem frekvenčnem pasu okrog te frekvence na delovnem<br />
frekvenčnem intervalu. Ta frekvenca ni nujno središče frekvenčnega območja, na<br />
katerem absorber zadosti dopustnemu pogoju. Pri drugi optimizaciji nas prav tako<br />
zanimajo absorberji, ki imajo na izbranem frekvenčnem intervalu odbojnost omejeno<br />
pod izbrano vrednost (−10 dB), vendar pa pri tem iščemo absorber čim manjše<br />
debeline. Pri izračunih smo uporabili izrojen interval, ki vsebuje le frekvenco 4 GHz.<br />
Koda programa je predstavljena tudi v dodatku B. Psevdokoda teh dveh optimizacij<br />
je sledeča:<br />
for t = 1 to st_materialov<br />
//Naložimo podatke o permeabilnostih.<br />
load(material t .txt);<br />
//Določimo vrednosti permeabilnosti µ za želene frekvenčne vrednosti<br />
//ν na izbranem intervalu s pomočjo linearne interpolacije, ki smo jo<br />
//izvedli z za različne frekvenčne vrednosti podanimi permeabilnostmi.<br />
µ(:, t) = linearna_interpolacija(material t , ν);<br />
//Določimo dielektričnosti ε posameznih materialov.<br />
ε(t) = ε t ;<br />
end;<br />
//Naključno zgradimo začetno populacijo in jo ovrednotimo.<br />
P = zacetna_populacija();<br />
f = kriterijska(P);<br />
for t = 1 to st_generacij<br />
//S pomočjo selekcije in prekrižanja zgradimo novo populacijo.<br />
P = nova_populacija(P);<br />
mutacija(P);<br />
f = kriterijska_novi(P); //Ovrednotimo na novo zgrajene osebke.
3.3 Genetski algoritmi za problem večplastnega absorberja 28<br />
end;<br />
//Narišemo grafe odbojnosti najboljših štirih osebkov.<br />
plot(P 1,2,3,4 );<br />
3.3.1 Določitev začetne populacije<br />
Začetna populacija oz. prva generacija je sestavljena iz naključnih osebkov. Za<br />
zapis populacije smo uporabili seznam matrik. Vsaka matrika predstavlja en osebek<br />
populacije. Vsaka vsebuje dve vrstici, pri čemer prva vrstica shranjuje podatke o<br />
materialih po plasteh absorberja, druga pa podatke o debelini posamezne plasti.<br />
S funkcijo, ki generira začetno populacijo, smo naredili seznam matrik ustreznih<br />
velikosti in jih napolnili z naključnimi števili med 0 in 1. Ta števila smo ustrezno<br />
popravili v oznake materialov in debeline posameznih plasti:<br />
material j = ⌊rm j ·št_materialov + 1⌋,<br />
debelina j<br />
= rd j ·max_debelina,<br />
pri čemer rm in rd predstavljata naključni števili med 0 in 1. V primeru, da je<br />
posamezna plast tanjša od 0.1 mm, smo debelino plasti postavili na 0 mm. Debelina<br />
0.1 mm namreč predstavlja mejo, do katere je plast še možno izdelati.<br />
Začetno populacijo smo zgradili na dva načina. Z nastavitvijo parametra zacetna<br />
na ’Zacetna1’ naredi funkcija Populacija populacijo osebkov, katerih debelina celotnega<br />
absorberja je manjša od izbrane debeline. Z nastavitvijo parametra zacetna<br />
na ’Zacetna2’ pa naredi populacijo osebkov, za katere velja, da je posamezna plast<br />
absorberja tanjša od izbrane debeline. V prvem in drugem primeru max_debelina<br />
predstavlja največjo možno debelino posamezne plasti, le da se v prvem primeru ta<br />
tekom izdelave posameznih plasti absorberja ustrezno manjša.<br />
3.3.2 Kriterijska funkcija<br />
S kriterijsko funkcijo ocenimo kakovost osebkov v populaciji. Kakovost osebkov se<br />
v našem primeru odraža preko odbojnosti. Odbojnost izražamo v dB, zato bolj kot<br />
je negativna, manjši je odboj. S kriterijsko funkcijo preverimo, ali osebki ustrezajo<br />
dopustnim pogojem, torej ali dosegajo zahtevano odbojnost pri danih frekvencah.<br />
Če ustrezajo, ocenimo, koliko je posamezen osebek dejansko dober glede na naše<br />
želje (iskanje čim širšega frekvenčnega območja na danem frekvenčnem intervalu,<br />
iskanje čim tanjšega absorberja).<br />
V optimizaciji za vsak osebek posebej izračunamo odbojnost pri posameznih frekvencah<br />
z izbranega intervala in preverimo, ali osebek zadosti dopustnim pogojem.<br />
Pri optimizaciji po širini frekvenčnega pasu v primeru, da osebek zadosti dopustnemu<br />
pogoju (pri izbrani frekvenci ne preseže določene odbojnosti), preštejemo<br />
število tabeliranih frekvenčnih vrednosti levo in desno od izbrane, ki pogoju še<br />
zadoščajo. To število vrnemo kot vrednost kriterijske funkcije posameznega osebka.<br />
Dopustni pogoj preverjamo okoli izbrane frekvence na delovnem intervalu. Tako
3.3 Genetski algoritmi za problem večplastnega absorberja 29<br />
osebkom, ki ne izpolnjujejo dopustnega pogoja, dodelimo vrednost 0. Osebke,<br />
ki dopustnemu pogoju zadostijo zgolj pri frekvenci, okoli katere optimiziramo, pa<br />
označimo z 1. Pri optimizaciji po debelini absorberja v primeru, da osebek zadosti<br />
dopustnim pogojem (pri frekvenčnih vrednostih z delovnega frekvenčnega intervala<br />
ne preseže določene odbojnosti), kot vrednost kriterijske funkcije vrnemo debelino<br />
absorberja, ki se običajno giblje pod 1 cm. Nedopustnim osebkom pa dodelimo<br />
vrednost 1 m in jih s tem označimo kot nedopustne.<br />
3.3.3 Selekcija in prekrižanje<br />
S funkcijo Selekcija izvedemo uteženo selekcijo z ruleto.<br />
V primeru optimizacije po širini frekvenčnega pasu za potrebe selekcije nedopustnim<br />
osebkom začasno spremenimo vrednost kriterijske funkcije v vrednost<br />
(vrednost_najboljšega · 0.1). S tem nedopustnim osebkom dodelimo večjo vrednost<br />
in tako povečamo verjetnost ohranitve njihovih genov skozi naslednje generacije.<br />
Nedopustnim osebkom določimo tako visoko vrednost zaradi dejstva, ker<br />
lahko nedopusten osebek z zelo majhno spremembo postane ne le dopusten, temveč<br />
tudi izredno dober osebek. Selekcija nam tako vrne dva starša, ki sta izbrana z<br />
verjetnostjo, sorazmerno njunima vrednostima kriterijske funkcije.<br />
Pri optimizaciji po debelini absorberja za potrebe selekcije nedopustnim osebkom<br />
spremenimo vrednost kriterijske funkcije v (0.004 ·št_plasti_v_absorberju)<br />
in nato vse vrednosti v vrednost −1 . Funkcija Selekcija z verjetnostjo, ki je obratnosorazmerna<br />
kakovostim osebkov, izbere dva starša.<br />
Iz dveh izbranih staršev naredimo dva nova potomca. Starša križamo tako, da<br />
se sprehodimo po njunih kromosomih od gena do gena. Če je naključno število<br />
r < 0.5 (r ∈ (0, 1)), prvi potomec podeduje material v plasti po prvem staršu, če pa<br />
je r > 0.5, ga podeduje po drugem staršu. Ravno nasprotno deduje drugi potomec.<br />
Debelino posamezne plasti j potomca dedujeta preko naslednjega prekrižanja:<br />
potomec1 j<br />
= r(starš1 j ) + (1 − r)(starš2 j ),<br />
potomec2 j<br />
= (1 − r)(starš1 j ) + r(starš2 j ),<br />
pri čemer je r naključno število z intervala (0, 1), potomec1 j je debelina j-te plasti<br />
prvega potomca in analogno velja za potomec2 j , starš1 j ter starš2 j .<br />
3.3.4 Določitev nove populacije<br />
Pri gradnji nove populacije kombiniramo uteženo selekcijo z ruleto in elitizem. S parametrom<br />
elitizem, ki ga določimo v datoteki podatki.mat, določimo delež osebkov iz<br />
populacije staršev, ki se bo prenesel v populacijo potomcev. Elitizmu primerno prenese<br />
funkcija Nova iz populacije staršev ustrezno število najboljših osebkov v populacijo<br />
potomcev. Ostale potomce dobi s pomočjo križanja, kot je opisano v zgornjem<br />
razdelku. Elitizem upošteva tudi kriterijska funkcija Kriterijska in preračuna samo
3.4 Rezultati 30<br />
kakovost na novo zgrajenih osebkov, kakovosti prenesenih osebkov pa enostavno<br />
prepiše.<br />
Populacijo in vektor z vrednostmi kriterijske funkcije zaradi lažjega določanja elitnih<br />
osebkov (osebkov, ki se prenesejo v naslednjo generacijo) in splošne preglednosti<br />
na koncu še uredimo po kakovosti osebkov.<br />
3.3.5 Mutacija<br />
Mutacija prvih nekaj najboljših osebkov pušča nespremenjene, ostale pa mutira z<br />
izbranim faktorjem po materialih in debelini. Faktor mutacije ravno tako podamo<br />
v datoteki podatki.mat. Ta faktor pomeni verjetnost, da se na nekem mestu zgodi<br />
mutacija, in ga določamo na podlagi konkretnega optimizacijskega problema. Če je<br />
za material v kaki plasti naključno število manjše od izbranega faktorja, ta material<br />
naključno zmutira v drug material. Če je za debelino v kaki plasti naključno število<br />
manjše od izbranega faktorja, debelina glede na naključno število r zmutira v:<br />
3.4 Rezultati<br />
debelina j = |r · 0.001 − 0.0005 +debelina j |.<br />
Program smo testirali na sistemu Intel Pentium M, s procesorjem 1.73 GHz, 1 GB<br />
RAM in operacijskim sistemom Microsoft Windows XP Professional SP2.<br />
S programom smo izvedli optimizacijo po širini frekvenčnega pasu in optimizacijo<br />
po debelini absorberja. V obeh primerih smo uporabili osnovni dopustni pogoj, da<br />
absorber pri 4 GHz zadosti pogoju −10 dB. Za določitev prve generacije smo raje<br />
uporabljali funkcijo Zacetna2. Ta namreč vsaki plasti določi debelino d z enako<br />
verjetnostjo, medtem ko pri uporabi funkcije Zacetna1 temu ni tako. Pri uporabi<br />
funkcije Zacetna1 naključna debelina prve plasti vpliva na naključno debelino druge<br />
itd.<br />
3.4.1 Optimizacija po širini frekvenčnega pasu<br />
Pri preizkušanju te optimizacije se je izkazalo, da dobimo najboljše rezultate z<br />
močnejšim elitizmom. Program smo tako nadalje preverjali pri 50 % elitizmu, kar v<br />
praksi vodi do hitrejše konvergence.<br />
Program smo preizkusili za optimizacijo eno-, dvo- in triplastnih absorberjev.<br />
Pri nastavitvah na enoplastni absorber s 50 osebki v populaciji in 30 izmenjanimi<br />
generacijami najboljši osebki močno skonvergirajo proti absorberju, sestavljenemu<br />
iz materiala FM3 in debeline 2.7 mm (glej sliko 3.4). Tak absorber dovolj dobro<br />
absorbira na približno 8.8 · 10 9 Hz velikem frekvenčnem pasu. Program je precej<br />
občutljiv na določitev maksimalne debeline posamezne plasti v začetni generaciji,<br />
vendar se je v tem primeru izkazalo, da skonvergira k enakemu absorberju tudi<br />
z variiranjem maksimalne debeline od 3 mm do 8 mm. Za izvedbo optimizacije<br />
program potrebuje približno 1 min.
3.4 Rezultati 31<br />
0<br />
−5<br />
−10<br />
odbojnost (dB)<br />
−15<br />
−20<br />
−25<br />
−30<br />
−35<br />
0 2 4 6 8 10 12 14 16 18<br />
frekvenca (GHz)<br />
1. osebek<br />
2. osebek<br />
3. osebek<br />
4. osebek<br />
Slika 3.4: Graf odbojnosti štirih najboljših osebkov zadnje, 30. generacije pri optimizaciji<br />
enoplastnega absorberja po širini frekvenčnega pasu. Vsi štirje osebki so<br />
iz materiala FM3 in debeline 2.7 mm in ustrezno (pod −10 dB) absorbirajo na<br />
približno 8.8 · 10 9 Hz velikem frekvenčnem pasu.<br />
Pri nastavitvah na dvoplasten absorber s 100 osebki v populaciji in 50 izmenjanimi<br />
generacijami program skonvergira k enoplastnemu absorberju, enake debeline<br />
in materiala. Le pri nastavitvah maksimalne debeline na 8 mm in 50 % mutaciji<br />
včasih skonvergira k dvoplastnemu absorberju, sestavljenemu iz materiala FM9 debeline<br />
3.8 mm in materiala FM6 debeline 1.7 mm (glej sliko 3.5). Program računa<br />
približno 10 min.<br />
Pri nastavitvah na triplastni absorber s 300 osebki v populaciji, 50 izmenjanimi<br />
generacijami, 5 mm maksimalne debeline posamezne plasti v začetni generaciji in<br />
10 % mutaciji skonvergira program k triplastnemu absorberju iz materialov FM3,<br />
FM9 in FM5 z debelinami 1.6 mm, 1.0 mm in 2.0 mm (glej sliko 3.6) ter k zgoraj<br />
omenjenemu dvoplastnemu absorberju. Program s takšnimi nastavitvami se izvaja<br />
približno 30 min. Oba absorberja zadostita dopustnemu pogoju na približno 10 GHz<br />
velikem frekvenčnem pasu, vendar pa omenjeni triplastni absorber absorbira pri<br />
nekoliko nižjih frekvencah kot omenjeni dvoplastni absorber.<br />
3.4.2 Optimizacija po debelini absorberja<br />
Pri optimizaciji po debelini absorberja se je izkazalo, da dobimo najboljše rezultate<br />
z malo šibkejšim, 10 % elitizmom. Vse izvedene optimizacije po debelini absorberja<br />
se končajo prej kot v 1 min.<br />
Pri nastavitvah na enoplastni absorber program močno skonvergira s pomočjo<br />
10 % mutacije k absorberju iz materiala FM6 in debeline 2.5 mm (glej sliko 3.7).
3.4 Rezultati 32<br />
0<br />
−5<br />
−10<br />
odbojnost (dB)<br />
−15<br />
−20<br />
−25<br />
−30<br />
−35<br />
1. osebek<br />
2. osebek<br />
3. osebek<br />
4. osebek<br />
0 2 4 6 8 10 12 14 16 18<br />
frekvenca (GHz)<br />
Slika 3.5: Graf odbojnosti štirih najboljših osebkov zadnje, 50. generacije pri optimizaciji<br />
dvoplastnega absorberja po širini frekvenčnega pasu. Vsi štirje osebki so<br />
dvoplastni absorberji iz materialov FM9 in FM6, debeline pa rahlo variirajo okoli<br />
3.8 mm in 1.7 mm. Vsi absorbirajo na približno 10 GHz širokem frekvenčnem pasu.<br />
0<br />
−5<br />
−10<br />
odbojnost (dB)<br />
−15<br />
−20<br />
−25<br />
−30<br />
−35<br />
0 2 4 6 8 10 12 14 16 18<br />
frekvenca (GHz)<br />
1. osebek<br />
2. osebek<br />
3. osebek<br />
4. osebek<br />
Slika 3.6: Graf odbojnosti štirih najboljših osebkov zadnje, 50. generacije pri optimizaciji<br />
triplastnega absorberja po širini frekvenčnega pasu. Vsi štirje osebki so<br />
triplastni absorberji, sestavljeni iz materialov FM3, FM9 in FM5. Debeline posameznih<br />
plasti se rahlo spreminjajo. Najboljši absorber ima plasti debelin 1.6 mm,<br />
1.0 mm in 2.0 mm. Vsi absorbirajo na približno 10 GHz širokem frekvenčnem pasu.
3.4 Rezultati 33<br />
0<br />
−5<br />
−10<br />
odbojnost (dB)<br />
−15<br />
−20<br />
−25<br />
−30<br />
−35<br />
0 2 4 6 8 10 12 14 16 18<br />
frekvenca (GHz)<br />
1. osebek<br />
2. osebek<br />
3. osebek<br />
4. osebek<br />
Slika 3.7: Graf odbojnosti štirih najboljših osebkov zadnje, 100. generacije pri optimizaciji<br />
enoplastnega absorberja po debelini absorberja. Vsi štirje osebki so iz<br />
materiala FM6 in debeline 2.5 mm.<br />
0<br />
−5<br />
−10<br />
odbojnost (dB)<br />
−15<br />
−20<br />
−25<br />
−30<br />
−35<br />
0 2 4 6 8 10 12 14 16 18<br />
frekvenca (GHz)<br />
1. osebek<br />
2. osebek<br />
3. osebek<br />
4. osebek<br />
Slika 3.8: Graf odbojnosti štirih najboljših osebkov zadnje, 100. generacije pri optimizaciji<br />
dvoplastnega absorberja po debelini absorberja. Vsi štirje osebki so dvoplastni<br />
absorberji iz materiala FM3 debeline 1.3 mm in materiala FM8 debeline<br />
0.7 mm.
3.4 Rezultati 34<br />
Pri tem smo parametre nastavili na 50 osebkov, 100 generacij in 3 mm maksimalne<br />
debeline plasti.<br />
Pri nastavitvah na dvoplastni absorber program skonvergira k dvoplastnemu absorberju<br />
iz materialov FM3 debeline 1.3 mm in FM8 debeline 0.7 mm (glej sliko 3.8).<br />
Izkazalo se je, da dobimo veliko boljšo konvergenco, če pri optimizaciji večplastnih<br />
absorberjev mutacijo povečamo na 50 %. Pri optimizaciji dvoplastnega absorberja<br />
smo ostale parametre nastavili na 100 osebkov, 100 generacij in 3 mm maksimalne<br />
debeline plasti.<br />
Za optimizacijo triplastnega absorberja smo nastavili parametre na 400 osebkov,<br />
150 generacij in 2 mm maksimalne debeline plasti, mutacijo pa smo pustili pri 50 %.<br />
Dobili smo dva primerljivo dobra absorberja. Prvi je zgoraj omenjeni dvoplastni<br />
absorber, drugi pa je tudi zelo dober triplastni absorber, sestavljen iz materialov<br />
FM2 debeline 0.8 mm, FM3 debeline 0.7 mm in FM8 debeline 0.6 mm (glej sliko 3.9).<br />
0<br />
−5<br />
−10<br />
odbojnost (dB)<br />
−15<br />
−20<br />
−25<br />
−30<br />
−35<br />
0 2 4 6 8 10 12 14 16 18<br />
frekvenca (GHz)<br />
1. osebek<br />
2. osebek<br />
3. osebek<br />
4. osebek<br />
Slika 3.9: Graf odbojnosti štirih najboljših osebkov zadnje, 150. generacije pri optimizaciji<br />
triplastnega absorberja po debelini absorberja. Prvi osebek je triplastni<br />
absorber iz materiala FM2 debeline 0.8 mm, materiala FM3 debeline 0.7 mm in<br />
materiala FM8 debeline 0.6 mm. Drugi osebek je dvoplastni absorber iz materiala<br />
FM3 debeline 1.5 mm in materiala FM8 debeline 0.6 mm. Preostala dva osebka sta<br />
prav tako dvoplastna absorberja iz istih materialov in podobnih debelin.
Poglavje 4<br />
Reševanje večkriterijskega<br />
problema večplastnih EM<br />
absorberjev z NSGA-II<br />
Problem večkriterijskega optimiziranja in genetski algoritem NSGA-II sta podrobneje<br />
opisana v delovnem poročilu [RF05] in članku [KSAM00], ki sta tudi glavna<br />
vira pri reševanju našega problema. Probleme s podobno tematiko najdemo tudi v<br />
člankih [WMG96] in [CMW05].<br />
4.1 Večkriterijska optimizacija<br />
V praksi velikokrat želimo kak problem optimizirati po različnih kriterijih. V našem<br />
primeru bi tako radi združili skupaj dve optimizaciji. Želimo si, da bi naš absorber<br />
izpolnjeval pogoj odbojnosti na čim širšem frekvenčnem območju in bil hkrati<br />
čim tanjši. Velikokrat so si kriteriji nasprotujoči, kar pomeni, da izboljšanje rešitve<br />
po enem kriteriju povzroči njeno poslabšanje po drugih kriterijih. Takrat nimamo<br />
opravka z eno optimalno rešitvijo, temveč z množico optimalnih rešitev, ki jo imenujemo<br />
vodilni sloj po Paretu. Če ne poznamo pomembnosti posameznih kriterijev,<br />
nas zanimajo rešitve s celotnega vodilnega sloja in se šele kasneje odločamo za eno<br />
izmed njih. Tako je tudi pri naši optimizaciji.<br />
Problem večkriterijske optimizacije je definiran kot problem iskanja dopustnega<br />
vektorja spremenljivk, ki optimizira vektorsko funkcijo, katere komponente so kriterijske<br />
funkcije. V našem primeru vsebuje vektorska funkcija dve kriterijski funkciji,<br />
rešitve pa morajo zadoščati le enemu dopustnemu pogoju; da pri izbrani frekvenci<br />
absorber ne preseže predpisane odbojnosti. Ker lahko vsak problem minimizacije<br />
kriterijske funkcije enostavno prevedemo v problem maksimizacije, bomo v nadaljevanju<br />
predpostavili, da želimo vektorsko funkcijo f(x) = (f 1 (x), f 2 (x)) maksimizirati<br />
po obeh komponentah.<br />
Pri enokriterijskem optimiziranju je prostor kriterijev množica realnih števil R,<br />
ki je z relacijo ≤ linearno urejena. Tako za poljubni rešitvi enokriterijskega optimiza-
4.2 Različni pristopi 36<br />
cijskega problema vedno vemo, katera rešitev je boljša oziroma ali sta rešitvi enakovredni.<br />
Pri večkriterijskem optimiziranju pa je prostor kriterijev večdimenzionalen.<br />
Tukaj za relacijo ≤ ne velja več linearna urejenost, temveč le delna urejenost. Dve<br />
rešitvi sta tako pogosto neprimerljivi. Zato si tu pomagamo s konceptom dominantnosti.<br />
Rešitev večkriterijskega optimizacijskega problema x dominira rešitev y (x ≻ y),<br />
če sta izpolnjeni naslednji zahtevi:<br />
1. Rešitev x ni slabša od rešitve y pri nobenem kriteriju:<br />
f k (x) ≥ f k (y) za vse k = 1, 2, . . ., m.<br />
2. Rešitev x je boljša od rešitve y pri vsaj enem kriteriju:<br />
f k (x) > f k (y) za vsaj en k ∈ {1, 2, . . ., m}.<br />
Slika 4.1: Primer večkriterijske funkcije f, ki tridimenzionalen prostor spremenljivk<br />
preslika v dvodimenzionalen prostor kriterijev.<br />
Na sliki 4.1 je predstavljen primer večkriterijske funkcije f, ki tridimenzionalen<br />
prostor spremenljivk preslika v dvodimenzionalen prostor kriterijev. Ko želimo<br />
funkcijo f maksimizirati po obeh kriterijih, velja za rešitev a, da dominira rešitev b,<br />
z rešitvijo e je neprimerljiva, medtem ko jo rešitvi c in d dominirata. Množica nedominiranih<br />
rešitev v izbrani množici rešitev je množica vseh tistih rešitev, ki jih ne<br />
dominira nobena rešitev iz te izbrane množice. V našem primeru sta to rešitvi c in<br />
d. Množico nedominiranih rešitev celotnega prostora dopustnih rešitev imenujemo<br />
optimalni sloj po Paretu, njegove elemente pa optimalne rešitve po Paretu.<br />
4.2 Različni pristopi<br />
Če so kriteriji večkriterijske optimizacije med seboj konfliktni, obstaja več optimalnih<br />
rešitev. Tu za določitev boljše rešitve potrebujemo dodatne informacije o
4.2 Različni pristopi 37<br />
pomembnosti posameznega kriterija. Do želene optimalne rešitve lahko pridemo<br />
preko dveh različnih pristopov, ki sta prikazana na sliki 4.2.<br />
Slika 4.2: Prednostni in idealni pristop k večkriterijski optimizaciji.<br />
Rešitev, ki jo dobimo s prednostnim pristopom, je odvisna od izbranih uteži, s<br />
katerimi smo večkriterijski problem pretvorili v enokriterijskega. Prednostni pristop<br />
tako zahteva dodatno informacijo o pomembnosti posameznega kriterija, ki pa pri<br />
nas ni vnaprej podana.<br />
Pri idealnem pristopu najprej poiščemo množico optimalnih rešitev, nato pa iz<br />
nje izberemo rešitev, ki nam najbolj ustreza. Idealni pristop je zato bolj pregleden<br />
in bolj objektiven od prednostnega pristopa. Če poznamo informacijo o kriterijih,<br />
ki nam omogočajo ciljno usmerjeno uporabiti prednostni pristop, seveda ni nobenega<br />
razloga, da bi uporabljali idealni pristop. V našem primeru pa teh informacij<br />
nimamo, saj se šele kasneje na podlagi popolnoma drugih kriterijev (zahtevnost<br />
izdelave, stroški izdelave, potrebe strank itd.) odločamo, katero optimalno rešitev<br />
bomo uporabili. Poiskati želimo čim več optimalnih rešitev, za katere želimo, da so<br />
kar se da enakomerno razporejene po prostoru kriterijev (slika 4.3). Ta dva cilja si<br />
pogosto nasprotujeta.
4.3 NSGA-II 38<br />
4.3 NSGA-II<br />
Slika 4.3: Cilja večkriterijske optimizacije.<br />
Algoritem NSGA-II (Elitist Non-Dominated Sorting Genetic Algorithm) [KSAM00]<br />
deluje podobno kot genetski algoritem za enokriterijsko optimizacijo. Oglejmo si<br />
njegovo psevdokodo:<br />
//Naključno zgradi in ovrednoti začetni<br />
//populaciji staršev P in potomcev Q.<br />
P 1 = zacetna_populacija();<br />
for t = 1 to st_generacij<br />
Q t = nova_populacija(P t );<br />
R t = P t ∪ Q t ;<br />
F = nedominirano_urejanje(R t ) //F=(F 1 , F 2 , . . .) so vsi sloji od R t .<br />
k = 1;<br />
P t+1 = ∅;<br />
//V populacijo P t+1 prepiši prvih k slojev, ki pridejo notri v celoti.<br />
while |P t+1 | + |F k | ≤ |P 1 |<br />
P t+1 = P t+1 ∪ F k ;<br />
k = k + 1;<br />
end;<br />
//Sloj, ki ne pride v celoti v populacijo P t+1 , uredi z uporabo<br />
//metrike nakopičenosti in populacijo P t+1 ustrezno dopolni z<br />
//osebki, ki so v tem sloju najmanj nakopičeni.<br />
Fill(P t+1 ,Sort(metrika_nakopicenosti(F k ), ≥));<br />
end;<br />
Prilagoditev na večkriterijsko optimizacijo je vidna le pri selekciji. Najprej staro<br />
populacijo staršev P t in njene potomce Q t združimo v skupno populacijo R t , ki jo<br />
uredimo po slojih s t.i. nedominiranim urejanjem. V novo populacijo staršev P t+1
4.3 NSGA-II 39<br />
gredo po vrsti najboljši sloji. Sloj, ki zaradi prevelike velikosti prvi v celoti ne more<br />
v novo populacijo, uredimo glede na metriko nakopičenosti. V populacijo dodamo<br />
tiste osebke iz sloja, ki so najmanj nakopičeni. Iz dobljene populacije staršev P t+1<br />
generiramo populacijo potomcev Q t+1 z uporabo tekmovalne selekcije, križanja in<br />
mutacije. Tekmovalna selekcija v našem primeru izmed dveh naključnih staršev<br />
izbere tistega, ki je v sloju z nižjo zaporedno vrednostjo. Če pa starša ležita v<br />
istem sloju, zmaga tisti, ki ima boljšo vrednost metrike nakopičenosti. Tekmovalno<br />
selekcijo ustreznokrat ponovimo in dobljene starše križamo ter mutiramo, enako<br />
kot smo to naredili pri algoritmu za enokriterijsko optimizacijo. Tako dobimo novo<br />
populacijo potomcev Q t+1 , ki jo še ovrednotimo.<br />
Ko želimo osebke urediti po konceptu dominantnosti, moramo vsak osebek primerjati<br />
z vsakim in ugotoviti, v kakšnem razmerju sta posamezna osebka. Psevdokoda<br />
nedominiranega urejanja zgleda sledeče:<br />
nedominirano_urejanje(P)<br />
F = ∅;<br />
n 1,2,...,|P | = 0; //V n p shranimo št. osebkov, ki dominirajo osebek p.<br />
S 1,2,...,|P | = ∅; //V S p shranimo osebke, ki jih osebek p dominira.<br />
for p = 1 to |P |<br />
for q = p to |P |<br />
//Če osebek p dominira osebek q, q shranimo v S p .<br />
if p ≻ q<br />
S p = S p ∪ {q};<br />
n q = n q + 1;<br />
//Če osebek q dominira osebek p, povečamo n p .<br />
else if q ≻ p<br />
n p = n p + 1;<br />
S q = S q ∪ {p};<br />
end;<br />
if n p = 0 //Če noben osebek ne dominira p,<br />
F 1 = F 1 ∪ {p}; //je ta vsebovan v 1. sloju.<br />
end;<br />
k = 1;<br />
while F k ≠ ∅<br />
H = ∅;<br />
for each p ∈ F k<br />
for each q ∈ S p //Vsakemu osebku iz S p<br />
n q = n q − 1; //zmanjšamo št. osebkov, ki dominirajo q, in<br />
if n q = 0 //tiste iz naslednjega sloja damo v pomožni H.<br />
H = H ∪ {q};<br />
end;<br />
end;<br />
k = k + 1;<br />
F k = H; //Določimo naslednji sloj.<br />
end;
4.3 NSGA-II 40<br />
Na začetku vsakemu osebku p določimo število osebkov, ki ga dominirajo (n p ),<br />
in seznam osebkov, ki jih dominira (S p ). Vse tiste osebke, ki jih ne dominira noben<br />
drugi osebek, damo v prvi sloj. Ta prvi sloj imenujemo tekoči sloj. Nadalje pri<br />
vsakem osebku p iz tekočega sloja obiščemo vse osebke q iz njegovega seznama<br />
dominiranih osebkov S p , kjer vsakemu osebku q za ena zmanjšamo število osebkov<br />
n q , ki ga dominirajo. Če pri tem n q postane enak nič, q dodamo v pomožni seznam<br />
H. Ko smo na tak način obiskali vse osebke iz tekočega sloja, smo s H določili<br />
naslednji sloj. Nedominirano urejanje nam tako vrne seznam slojev, v katerih se<br />
osebki med seboj ne dominirajo.<br />
Slika 4.4: Primer nedominiranega urejanja in metrike nakopičenosti.<br />
Na sliki 4.4 levo je prikazano nedominirano urejanje po slojih za primer populacije<br />
s sedmimi osebki. Ker pred nedominiranim urejanjem združimo populacijo<br />
staršev in potomcev, slika vsebuje štirinajst osebkov. Prvi sloj gre v celoti v novo<br />
populacijo. Ostanejo še štirje osebki, ki jih moramo izbrati iz drugega sloja. Te<br />
osebke izberemo glede na metriko nakopičenosti, kar je predstavljeno na sliki 4.4<br />
desno. Metrika nakopičenosti vedno najbolje oceni skrajne osebke v sloju. To sta<br />
osebka z največjim razponom v prostoru kriterijev. Ostale, vmesne osebke pa oceni<br />
glede na njihovo razdaljo do najbližjih sosedov. Če z algoritmom optimiziramo<br />
po m kriterijih, najprej za vsak j = 1, . . .,m uredimo vse osebke po naraščajočih<br />
vrednostih f j . Nato za vsak vmesni osebek r izračunamo razdaljo med njemu najbližjima<br />
osebkoma p in q glede na kriterij f j . Za to razdaljo d j (r) torej velja, da je<br />
f j (p) ≤ f j (r) ≤ f j (q), izračunamo pa jo preko izraza<br />
d j (r) = f j(q) − f j (p)<br />
,<br />
− f min<br />
fj<br />
max<br />
kjer sta fj<br />
max in fj<br />
min maksimalna in minimalna dosežena vrednost j-tega kriterija.<br />
Skrajnima osebkoma (glede na kriterij j) določimo največjo možno razdaljo. Metrika<br />
j
4.4 Rezultati 41<br />
nakopičenosti za osebek r je vsota teh razdalj po vseh kriterijih:<br />
c(r) =<br />
m∑<br />
d j (r).<br />
j=1<br />
Psevdokoda metrike nakopičenosti za seznam osebkov I je sledeča:<br />
metrika_nakopicenosti(I)<br />
l = |I|; //Št. osebkov v sloju.<br />
for k = 1 to l<br />
I[k] distance = 0;<br />
end;<br />
for j = 1 to st_kriterijev<br />
I = Sort(I, j); //Osebke uredimo po vrednostih kriterija j.<br />
I[1] distance = I[l] distance = ∞; //Skrajni osebki imajo prednost pred<br />
//ostalimi, kar ustrezno označimo. Notranjim osebkom pa izračunamo<br />
//metriko nakopičenosti.<br />
for k = 2 to (l − 1)<br />
I[k] distance = I[k] distance + I[k+1].j−I[k−1].j ;<br />
max(I.j)−min(I.j)<br />
end;<br />
end;<br />
Na sliki 4.4 desno je narisana metrika nakopičenosti osebka r, ki je enaka polovici<br />
obsega pravokotnika, ki ga določata sosednja osebka. V primeru s slike gredo v novo<br />
populacijo vsi osebki iz prvega sloja in štirje osebki, ki so na sliki desno pobarvani<br />
z belo barvo. Ti osebki imajo največjo vrednost metrike nakopičenosti.<br />
4.4 Rezultati<br />
Program smo testirali na sistemu Intel Pentium M, s procesorjem 1.73 GHz, 1 GB<br />
RAM in operacijskim sistemom Microsoft Windows XP Professional SP2.<br />
S programom smo izvedli dvokriterijsko optimizacijo po širini frekvenčnega pasu<br />
in debelini absorberja. Zanimali so nas absorberji, ki pri 4 GHz zadostijo −10 dB, kar<br />
je naš dopustni pogoj. Kot pri enokriterijski optimizaciji smo zaradi enakih razlogov<br />
tudi pri dvokriterijski optimizaciji NSGA-II za določitev prve populacije uporabili<br />
funkcijo Zacetna2. Spodaj navedene optimizacije enoplastnih absorberjev program<br />
zaključi v slabi minuti, dvoplastnih absorberjev v približno 40 min in triplastnih<br />
absorberjev v približno 3.5 h.<br />
Pri optimizaciji enoplastnega absorberja z NSGA-II dobimo z nastavitvami na<br />
100 osebkov, 10 generacij, 5 mm maksimalne debeline v posamezni plasti in 1 %<br />
mutacijo na robovih vodilnega sloja enako dobre osebke, kot smo jih dobili z enokriterijsko<br />
optimizacijo po širini frekvenčnega pasu in debelini absorberja. Najtanjši<br />
enoplastni absorber je iz materiala FM6 in debeline 2.5 mm. Enoplastni absorber,<br />
ki zadosti pogoju na najširšem frekvenčnem pasu okoli 4 GHz, pa je absorber iz
4.4 Rezultati 42<br />
materiala FM3 in debeline 2.8 mm (glej sliko 4.5). Na sliki 4.6 so narisani osebki<br />
zadnje, 10. generacije v prostoru kriterijev.<br />
0<br />
−5<br />
−10<br />
odbojnost (dB)<br />
−15<br />
−20<br />
−25<br />
−30<br />
−35<br />
0 2 4 6 8 10 12 14 16 18<br />
frekvenca (GHz)<br />
1. osebek<br />
2. osebek<br />
3. osebek<br />
4. osebek<br />
5. osebek<br />
6. osebek<br />
Slika 4.5: Graf odbojnosti šestih osebkov zadnje, 10. generacije pri optimizaciji<br />
enoplastnega absorberja z NSGA-II. Odbojnosti najboljših treh enoplastnih absorberjev,<br />
ki zadostijo pogoju −10 dB okoli 4 GHz na najširšem frekvenčnem pasu,<br />
in najtanjših treh enoplastnih absorberjev. Prvi trije absorberji so vsi iz materiala<br />
FM3 in debeline blizu 2.8 mm, preostali trije pa so iz materiala FM6 in debeline<br />
2.5 mm.<br />
Pri optimizaciji dvoplastnega absorberja z NSGA-II dobimo z nastavitvami na<br />
300 osebkov, 100 generacij, 5 mm maksimalne debeline in 1 % mutacijo osebke<br />
na robovih vodilnih slojev, ki so podobno dobri kot osebki, ki smo jih dobili z<br />
enokriterijsko optimizacijo. Ti osebki so zgrajeni iz istih materialov kot osebki,<br />
dobljeni z enokriterijsko optimizacijo, le da pri posameznih debelinah plasti včasih<br />
prihaja do rahlih odstopanj. Na sliki 4.7 so narisani osebki zadnje, 100. generacije v<br />
prostoru kriterijev. Na sliki 4.8 pa so predstavljeni grafi odbojnosti skrajnih osebkov<br />
vodilnega sloja.<br />
Pri optimizaciji triplastnega absorberja z NSGA-II z nastavitvami na 1000 osebkov,<br />
100 generacij, 3 mm maksimalne debeline in 1 % mutacijo smo na robovih<br />
vodilnega sloja dobili podobno dobre osebke kot pri enokriterijski optimizaciji. Nekateri<br />
osebki so zgrajeni iz materialov, kot osebki dobljeni z enokriterijsko optimizacijo,<br />
pojavili pa so se tudi novi, primerljivo dobri osebki, ki jih z enokriterijsko<br />
optimizacijo nismo dobili. Na sliki 4.9 so narisani osebki zadnje, 100. generacije<br />
v prostoru kriterijev. Na sliki 4.10 pa so predstavljeni grafi odbojnosti skrajnih<br />
osebkov vodilnega sloja.
4.4 Rezultati 43<br />
8<br />
7<br />
6<br />
debelina (mm)<br />
5<br />
4<br />
3<br />
2<br />
1<br />
0<br />
0 2 4 6 8 10 12<br />
frekvenčni pas (GHz)<br />
Slika 4.6: Osebki zadnje, 10. generacije v prostoru kriterijev pri naslednjih parametrih:<br />
enoplastni absorber, 100 osebkov v populaciji, 5 mm maksimalne debeline<br />
plasti v začetni generaciji.<br />
8<br />
7<br />
6<br />
debelina (mm)<br />
5<br />
4<br />
3<br />
2<br />
1<br />
0 2 4 6 8 10 12<br />
frekvenčni pas (GHz)<br />
Slika 4.7: Osebki zadnje, 100. generacije v prostoru kriterijev pri naslednjih parametrih:<br />
dvoplastni absorber, 300 osebkov v populaciji, 5 mm maksimalne debeline<br />
plasti v začetni generaciji.
4.4 Rezultati 44<br />
0<br />
−5<br />
−10<br />
odbojnost (dB)<br />
−15<br />
−20<br />
−25<br />
−30<br />
−35<br />
1.osebek<br />
2.osebek<br />
3.osebek<br />
4.osebek<br />
5.osebek<br />
6.osebek<br />
0 2 4 6 8 10 12 14 16 18<br />
frekvenca (GHz)<br />
Slika 4.8: Graf odbojnosti šestih osebkov zadnje, 100. generacije pri optimizaciji<br />
dvoplastnega absorberja z NSGA-II. Najboljših treh absorberjev, ki zadostijo pogoju<br />
−10 dB okoli 4 GHz na najširšem frekvenčnem pasu in najtanjših treh absorberjev.<br />
Prvi osebek je dvoplastni absorber zgrajen iz materialov FM9 in FM6 ter debelinami<br />
4.2 mm in 1.7 mm. Ta absorbira na približno 9.3 GHz širokem frekvenčnem pasu.<br />
Drugi in tretji osebek pa sta enoplastna absorberja, zgrajena iz materiala FM3 in<br />
debeline 2.8 mm, ki absorbirata na približno 8.8 GHz širokem frekvenčnem pasu.<br />
Četrti, peti in šesti osebek so dvoplastni absorberji iz materiala FM3 debeline okoli<br />
1.5 mm in materiala FM8 debeline okoli 0.6 mm.<br />
8<br />
7<br />
6<br />
debelina (mm)<br />
5<br />
4<br />
3<br />
2<br />
1<br />
0 2 4 6 8 10 12<br />
frekvenčni pas (GHz)<br />
Slika 4.9: Osebki zadnje, 100. generacije v prostoru kriterijev pri naslednjih parametrih:<br />
triplastni absorber, 1000 osebkov v populaciji, 3 mm maksimalne debeline<br />
plasti v začetni generaciji.
4.4 Rezultati 45<br />
0<br />
−5<br />
−10<br />
odbojnost (dB)<br />
−15<br />
−20<br />
−25<br />
1. osebek<br />
−30<br />
2. osebek<br />
3. osebek<br />
−35 4. osebek<br />
5. osebek<br />
6. osebek<br />
−40<br />
0 2 4 6 8 10 12 14 16 18<br />
frekvenca (GHz)<br />
Slika 4.10: Graf odbojnosti šestih osebkov zadnje, 100. generacije pri optimizaciji<br />
triplastnega absorberja z NSGA-II. Najboljših treh absorberjev, ki zadostijo pogoju<br />
−10 dB okoli 4 GHz na najširšem frekvenčnem pasu in najtanjših treh absorberjev.<br />
Prvi osebek je triplastni absorber zgrajen iz materialov FM3, FM9 in FM6. Debeline<br />
posameznih plasti so 0.6 mm, 2.1 mm in 1.6 mm. Absorber absorbira na približno<br />
11 GHz širokem frekvenčnem pasu. Drugi osebek je triplastni absorber iz materialov<br />
FM3, FM9 in FM8 ter debelin 1.2 mm, 1.4 mm in 0.7 mm v posamezni plasti.<br />
Absorber absorbira na približno 10 GHz širokem frekvenčnem pasu. Tretji osebek<br />
je triplastni absorber iz materialov FM3, FM9 in FM5 ter debelin 1.6 mm, 1.0 mm<br />
in 1.9 mm v posamezni plasti. Absorber absorbira na približno 10 GHz širokem<br />
frekvenčnem pasu. Četrti osebek je triplastni absorber iz materialov FM2, FM3 in<br />
FM8 ter debelin 0.5 mm, 0.9 mm in 0.9 mm. Peti osebek je dvoplastni absorber iz<br />
materialov FM3 in FM8 ter debelin 1.4 mm in 0.8 mm. Šesti osebek je triplastni<br />
absorber iz materialov FM6, FM3 in FM8 ter debelin 0.6 mm, 1.3 mm in 0.3 mm.
Poglavje 5<br />
Zaključek<br />
Pri optimizaciji EM absorberjev po širini frekvenčnega pasu in debelini absorberja<br />
sta obe optimizaciji, enokriterijska in dvokriterijska, dali podobne rezultate. Z enokriterijsko<br />
optimizacijo smo dobili osebke, ki so se pojavili na robovih vodilnega sloja<br />
dvokriterijske optimizacije. Težava dvokriterijske optimizacije se pokaže v zelo dolgem<br />
računanju, ko optimiziramo tri- in večplastne absorberje. To se prav tako zgodi<br />
pri enokriterijski optimizaciji, ki pa zaradi optimizacije po enem kriteriju dela hitreje.<br />
Pri hitrosti programa se še posebej pozna, ko optimiziramo po debelini absorberja,<br />
saj takrat preverimo le, ali absorber zadosti zastavljenim dopustnim pogojem, in ne<br />
računamo odbojnosti absorberja na širšem frekvenčnem območju. Program enokriterijske<br />
optimizacije bi se dalo še izboljšati. Pri optimizaciji po širini frekvenčnega<br />
pasu se lahko zgodi, da je neki osebek, ki bi z minimalno spremembo debeline postal<br />
zelo dober, označen kot nedopusten. Dopustnemu pogoju lahko namreč zadosti na<br />
zelo širokem frekvenčnem pasu, vendar ne pri frekvenci, okoli katere optimiziramo.<br />
Primer izboljšave bi bil, da preverjamo, ali osebek, ki je pri neki frekvenci prenehal<br />
zadoščati dopustnemu pogoju, zadosti dopustnemu pogoju zopet v njeni bližini. V<br />
tem primeru bi osebek primerno označili. Podobno bi ravnali z osebki, ki pogoju<br />
pri frekvenci, okoli katere optimiziramo, sploh ne zadostijo, zadostijo pa pogoju v<br />
bližini te frekvence.<br />
Program največ časa porabi za računanje odbojnosti pri posameznih frekvencah.<br />
Pri dvokriterijski optimizaciji je zahtevnost urejanja osebkov po slojih velikosti<br />
O(n 2 ), pri čemer je velikost odvisna od števila osebkov n v populaciji. Zahtevnost<br />
računanja odbojnosti pa narašča linearno z večanjem števila osebkov ali z večanjem<br />
števila plasti v absorberju, torej je velikosti O(n·št_plasti). Pri 100 osebkih in enoplastnem<br />
absorberju predstavlja časovna zahtevnost urejanja približno 1 % časovne<br />
zahtevnosti računanja odbojnosti. Tekom večanja števila osebkov in plasti pa se pri<br />
naših najzahtevnejših nastavitvah parametrov s 1000 osebki in triplastnem absorberju<br />
zgoraj omenjeni delež spremeni v kar 40 %. Pričakovano zahtevnost urejanja<br />
osebkov po slojih bi lahko občutno zmanjšali . V našem primeru, ko s kriterijsko<br />
funkcijo f(x) = (f 1 (x), f 2 (x)) ocenjujemo absorberje po širini frekvenčnega pasu na<br />
katerem dobro absorbirajo (f 1 (x)) in po debelini absorberjev (f 2 (x)), bi osebke uredili<br />
padajoče po prvi komponenti f 1 (x) in naraščajoče po drugi komponenti f 2 (x).
47<br />
Sprehod bi začeli pri najboljšem osebku po prvi komponenti in si zapomnili njegovo<br />
vrednost druge komponente. Nadaljevali bi pri naslednjem najboljšem osebku<br />
po prvi komponenti, ki pa je po drugi komponenti boljši od prejšnjega osebka, itd.<br />
Ko bi zmanjkalo osebkov za pregledovanje po prvi komponenti, bi sprehod nadaljevali<br />
ponovno na isti način, le brez že obiskanih osebkov. Čeprav se pričakovana<br />
zahtevnost takega urejanja občutno zmanjša, pa najslabša še vedno ostaja O(n 2 ).<br />
Problem optimizacije večplastnih EM absorberjev je zelo občutljiv na spremembo<br />
materiala v posamezni plasti. Če dobremu osebku v neki plasti spremenimo material<br />
v drug material, se rado zgodi, da se absorpcija zelo poslabša ali pa osebek postane<br />
celo nedopusten. Pri spremembi debeline posamezne plasti se ti prehodi dogajajo<br />
veliko bolj zvezno. Ta dva kriterija si v tem smislu nista enakovredna, kar oslabi<br />
konvergenco k najboljšim absorberjem. Kljub temu sta nam optimizaciji vrnili zelo<br />
dobre osebke, katerih lastnosti je potrebno preveriti še v praksi. Smiselno bi bilo<br />
razmisliti tudi o možnostih optimizacije tega problema s sorodnimi algoritmi, kot je<br />
algoritem ”ant colony”in podobni.
Dodatek A<br />
Spekter EM valovanja<br />
Valovna dolžina (λ) in frekvenca (ν) valovanja sta obratno sorazmerni in med njima<br />
velja enostavna pretvorba z enačbo c = λ · ν, pri čemer je c hitrost svetlobe.<br />
frekvenca<br />
(Hz)<br />
valovna<br />
dolžina (m)<br />
ime<br />
tipičen izvor<br />
10 22 3 · 10 −14 γ-žarki<br />
10 21 3 · 10 −13 γ-žarki X-žarki radioaktivni elementi<br />
10 20 3 · 10 −12 X-žarki<br />
10 19 3 · 10 −11 X-žarki rentgen<br />
10 18 3 · 10 −10 ultravijolični žarki X-žarki<br />
10 17 3 · 10 −9 ultravijolični žarki<br />
10 16 3 · 10 −8 ultravijolični žarki<br />
10 15 3 · 10 −7 vidni spekter žarnica<br />
10 14 3 · 10 −6 infrardeči žarki<br />
10 13 3 · 10 −5 infrardeči žarki ljudje<br />
10 12 3 · 10 −4 infrardeči žarki<br />
10 11 3 · 10 −3 mikrovalovi radar<br />
10 10 3 · 10 −2 mikrovalovi<br />
10 9 3 · 10 −1 mikrovalovi mikrovalovna pečica<br />
10 8 3 radijski valovi FM radio<br />
10 7 30 radijski valovi<br />
10 6 300 radijski valovi AM radio<br />
10 5 3000 radijski valovi<br />
10 4 3 · 10 4<br />
10 3 3 · 10 5
Dodatek B<br />
Koda<br />
%Primer enokriterijske optimizacije.<br />
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<br />
%Programska koda glavne zanke in funkcij, ki so v njej klicane:<br />
f=zeros(st_osebkov,1);<br />
%Naredimo prvo populacijo, ki jo ocenimo,<br />
P=Populacija(zacetna);<br />
Kriterijska(1);<br />
%in osebke uredimo po kakovosti.<br />
Q=P;<br />
if opt==1<br />
[q,index]=sort(-f’);<br />
f=(-q)’;<br />
else<br />
[q,index]=sort(-f’);<br />
f=(-q)’;<br />
end<br />
for j=1:st_osebkov<br />
P(:,:,j)=Q(:,:,index(j));<br />
end<br />
%Zaustavitveni kriterij algoritma je št. izmenjanih populacij.<br />
for st_populacij=1:st_generacij<br />
%Za vsako 10. populacijo izpišemo njeno zaporedno št.<br />
if (st_populacij/10-fix(st_populacij/10))==0<br />
st_populacij<br />
end<br />
%Naredimo populacijo potomcev.<br />
Nova;<br />
%Izvedemo mutacijo.<br />
Mutacija;<br />
%Preračunamo kakovost vseh na novo narejenih osebkov.<br />
Kriterijska(0);
50<br />
%Uredimo populacijo po kakovosti osebkov.<br />
clear Q<br />
clear index<br />
clear q<br />
Q=P;<br />
if opt==1<br />
[q,index]=sort(-f’);<br />
f=(-q)’;<br />
else<br />
[q,index]=sort(f’);<br />
f=(q)’;<br />
end<br />
for j=1:st_osebkov<br />
P(:,:,j)=Q(:,:,index(j));<br />
end<br />
end<br />
%Zanima nas dejanska širina frekvenčnega pasu.<br />
for j=1:st_osebkov<br />
%Nedopustne osebke (oz. osebke, ki zadostijo zgolj pri frekvenci, okoli<br />
%katere optimiziramo), pustimo označene z ’0Hz’ (oz. z ’1Hz’).<br />
if f(j)>1<br />
f(j)=((f(j)-1)/(natancnost-1))*(interval(size(interval,1))-interval(1));<br />
end<br />
end<br />
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<br />
%KRITERIJSKA FUNKCIJA<br />
function Kriterijska(t)<br />
%t - faktor, ki pove, ali ocenjujemo prvo populacijo ali neko kasnejšo.<br />
%t = 1 Pri ocenjevanju 1. populacije ocenimo vse osebke.<br />
%t = 0 Pri ocenjevanju 2.,3.,... populacije, osebkom, ki smo jih prenesli<br />
% z elitizmom, kakovosti le prepišemo.<br />
%Definiramo vse potrebne globalne spremenljivke.<br />
... (E, mi, ni1, ni, pogoj, elitizem, st_osebkov, st_plasti, P, f, opt)<br />
int=size(interval,1);<br />
if t==1<br />
zacetek=1;<br />
else<br />
zacetek=round(st_osebkov*elitizem);<br />
if (st_osebkov-zacetek)/2-fix((st_osebkov-zacetek)/2)==0<br />
zacetek=zacetek+1;<br />
end<br />
end<br />
for k=zacetek:st_osebkov
51<br />
M=repmat(eye(2), [1, 1, int]);<br />
alpha=zeros(int,st_plasti);<br />
calpha=zeros(int,st_plasti);<br />
salpha=zeros(int,st_plasti);<br />
for j=1:st_plasti<br />
alpha(:,j)=(2*pi*interval.*(mi(:,P(1,j,k))*E(P(1,j,k))).^0.5.*(P(2,j,k)))/3e8;<br />
calpha(:,j)=cos(alpha(:,j));<br />
salpha(:,j)=sin(alpha(:,j));<br />
for n=1:int<br />
N=M(:,:,n);<br />
M(:,:,n)=N*[calpha(n,j) -i*(mi(n,P(1,j,k))/E(P(1,j,k))).^0.5.*salpha(n,j);<br />
-i*salpha(n,j)./(mi(n,P(1,j,k))/E(P(1,j,k))).^0.5 calpha(n,j)];<br />
end<br />
end<br />
q=0;<br />
for n=1:int<br />
R(n)=(-M(1,2,n)-M(2,2,n))/(-M(1,2,n)+M(2,2,n));<br />
R(n)=20*log10(abs(R(n)));<br />
%Preverimo, ali za vsako vrednost iz intervala ustreza dopustnemu pogoju.<br />
if R(n)>pogoj<br />
q=1;<br />
end<br />
end<br />
%Če optimiziramo po debelini absorberja.<br />
if opt==0<br />
if q==1<br />
%Označimo nedopustno rešitev.<br />
f(k)=1;<br />
else<br />
%Vrnemo debelino absorberja.<br />
f(k)=sum(P(2,:,k));<br />
end<br />
%Če optimiziramo po širini frekvenčnega pasu absorberja.<br />
elseif opt==1<br />
clear y<br />
clear z<br />
if R(int1)>=pogoj<br />
f(k)=0; %Označimo nedopustni osebek.<br />
else<br />
y=int1+1;<br />
while y
52<br />
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<br />
%FUNKCIJA, KI NAREDI NOVO POPULACIJO<br />
function Nova<br />
%Definiramo vse potrebne globalne spremenljivke.<br />
... (elitizem, st_osebkov, st_plasti, P, f, opt)<br />
pop=P;<br />
f1=f;<br />
%Če optimiziramo po debelini absorberja.<br />
if opt==0<br />
%Če osebek predstavlja nedopustno rešitev, mu damo utež<br />
%(št_plasti_v_absorberju)*0.004.<br />
for n=1:st_osebkov<br />
if f1(n)==1<br />
f1(n)=0.4e-2*st_plasti;<br />
end<br />
end<br />
clear n<br />
%Ker je osebek z manjšo vrednostjo kriterijske fn. boljši, za uteži<br />
%uporabimo obratne vrednosti kriterijske fn.<br />
f1=ones(size(f))./f;<br />
%Če optimiziramo po širini frekvenčnega pasu absorberja.<br />
elseif opt==1<br />
%Če osebek predstavlja nedopustno rešitev, mu damo utež (vrednost_najboljšega)*0.1.<br />
for n=1:st_osebkov<br />
if f1(n)==0<br />
f1(n)=f1(1)*0.1;<br />
end<br />
end<br />
clear n<br />
end<br />
x=sum(f1);<br />
delne_vsote(1)=f1(1);<br />
for j=2:st_osebkov<br />
delne_vsote(j)=delne_vsote(j-1)+f1(j);<br />
end<br />
%Upoštevamo elitizem.<br />
j=round(st_osebkov*elitizem);<br />
if (st_osebkov-j)/2-fix((st_osebkov-j)/2)==0<br />
j=j+1;<br />
end<br />
while j
53<br />
end<br />
end<br />
t=round(rand)+1;<br />
P(1,k,j)=pop(1,k,s(t));<br />
P(1,k,j+1)=pop(1,k,s(3-t));<br />
%Glede na naključno št. med 0 in 1 izberemo<br />
%novo debelino posamezne plasti.<br />
for n=1:st_plasti<br />
r=rand;<br />
P(2,n,j)=r*pop(2,n,s(1))+(1-r)*pop(2,n,s(2));<br />
P(2,n,j+1)=(1-r)*pop(2,n,s(1))+r*pop(2,n,s(2));<br />
%Plasti debeline manjše od 0.1 mm ne moremo narediti.<br />
if P(2,n,j)delne_vsote(l)<br />
k=l;<br />
else<br />
j=l;<br />
end<br />
end<br />
y(n)=j;<br />
clear p<br />
clear k<br />
clear j<br />
end<br />
s=[y(1) y(2)];<br />
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
54<br />
%MUTACIJA<br />
function Mutacija<br />
%Definiramo vse potrebne globalne spremenljivke.<br />
... (E, mi, ni1, ni, pogoj, r, st_osebkov, st_plasti, P, f, opt, mutacija)<br />
int=size(interval,1);<br />
for k=6:st_osebkov %Preprečimo mutacijo prvih nekaj najboljših osebkov.<br />
x=0;<br />
%Če je naključno št. manjše od faktorja ’mutacija’, spremeni material v plasti.<br />
for j=1:st_plasti<br />
if rand
55<br />
%Če optimiziramo po debelini absorberja.<br />
if opt==0<br />
if q==1<br />
%Označimo nedopustno rešitev.<br />
f(k)=1;<br />
else<br />
%Vrnemo debelino absorberja.<br />
f(k)=sum(P(2,:,k));<br />
end<br />
%Če optimiziramo po širini frekvenčnega pasu absorberja.<br />
elseif opt==1<br />
clear y<br />
clear z<br />
if R(int1)>=pogoj<br />
f(k)=0; %Označimo nedopustni osebek.<br />
else<br />
y=int1+1;<br />
while y
Literatura<br />
[CMW05]<br />
[Go00]<br />
[HJK95]<br />
[Kl89]<br />
[KSAM00]<br />
[MD03]<br />
[Mi99]<br />
S. Cui, A. Mohan, D. S. Weile. Pareto Optimal Design of Absorbers Using<br />
a Parallel Elitist Nondominated Sorting Genetic Algorithm and the Finite<br />
Element-Boundary Integral Method. IEEE Transactions on Antennas and<br />
Propagation 53 (2005), 2099–2107.<br />
D. E. Goldberg. Genetic Algorithms in Search, Optimization and Machine<br />
Learning. 2. izdaja, Addison Wesley, 2000.<br />
C. Houck, J. Joines, M. Kay. A Genetic Algorithm for Function Optimization:<br />
A Matlab Implementation. North Carolina State University, Raleigh, NC,<br />
1995.<br />
R. Kladnik. Visokošolska fizika, 3.del, Akustika in Optika: valovni pojavi.<br />
DZS, Ljubljana, 1989.<br />
D. Kalyanmoy, A. Samir, P. Amrit, T. Meyarivan. A Fast Elitist Non-<br />
Dominated Sorting Genetic Algorithm for Multi-Objective Optimization:<br />
NSGA-II. Lecture Notes in Computer Science No. 1917, str. 849–858, Springer,<br />
2000.<br />
K. Matouš, G. J. Dvorak. Optimization of Electromagnetic Absorption in<br />
Laminated Composite Plates. IEEE Transactions on Magnetics 39 (2003),<br />
1827–1835.<br />
Z. Michalewicz. Genetic Algorithms + Data Structures = Evolution Programs.<br />
3. izdaja, Springer, New York, 1999.<br />
[MSRM93] E. Michielssen, J. M. Sajer, S. Ranjithan, R. Mittra. Design of Lightweight,<br />
Broad-Band Microwave Absorbers Using Genetic Algorithms. IEEE Transactions<br />
on Microwave Theory and Techniques 41 (1993), 1024–1031.<br />
[NK91]<br />
[RF05]<br />
[Ro02]<br />
[St95]<br />
K. Naishadham, P. K. Kadaba. Measurement of Microwave Conductivity.<br />
IEEE Transactions on Microwave Theory and Techniques 39 (1991), 1158–<br />
1164.<br />
T. Robič, B. Filipič. Večkriterijsko optimiranje z genetskimi algoritmi in diferencialno<br />
evolucijo. delovno poročilo, Inštitut Jožef Stefan, 2005.<br />
T. Robič. Genetski algoritem za problem urnika. diplomsko delo, Fakulteta<br />
za matematiko in fiziko, Univerza v Ljubljani, 2002.<br />
J. Strnad. Fizika, 2.del, Elektrika, optika. 5. izdaja, Društvo matematikov,<br />
fizikov in astronomov Slovenije, 1995.
LITERATURA 57<br />
[WMG96]<br />
D. S. Weile, E. Michielssen, D. E. Goldberg. Genetic Algorithm Design of Pareto<br />
Optimal Broadband Microwave Absorbers. IEEE Transactions on Electromagnetic<br />
Compatibility 38 (1996), 518–525.
Zahvala<br />
Zahvaljujem se vsem, ki so mi ob izdelavi<br />
diplomskega dela stali ob strani in mi kakorkoli<br />
pomagali. Posebej bi se rada zahvalila mentorju<br />
izr. prof. dr. Martinu Juvanu, ki me je skozi celotno<br />
izdelavo diplomskega dela poterpežljivo vodil<br />
in me z vprašanji opozarjal na stvari, ki bi jih<br />
sama lahko spregledala. Zahvaljujem se tudi somentorju<br />
dr. Boštjanu Vladimirju Bregarju, ki mi<br />
je potrpežljivo pomagal pri razumevanju fizikalne<br />
plati te naloge.<br />
Prav tako se zahvaljujem domačim, ki so<br />
mi skozi celotni študij stali ob strani. Posebej bi<br />
se zahvalila bratu Nikoli za nasvete pri izdelavi<br />
grafičnega vmesnika in Andreju za neprestano podporo<br />
in vzpodbudo v času izdelave tega diplomskega<br />
dela.