genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle...

31
Genetisk optimering af todimensionelle vingeprofiler Elvin Chen 9. april 2019 2.B — Odense Tekniske Gymnasium Dato: 9. april 2019 1

Upload: others

Post on 19-Jan-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Genetisk optimering af todimensionelle vingeprofiler

Elvin Chen

9. april 2019

2.B — Odense Tekniske GymnasiumDato: 9. april 2019

1

Page 2: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

Indhold

1 Introduktion 3

2 Problemformulering 3

3 Baggrund 3

3.1 Aerodynamiske kræfter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

3.2 Vingeprofiler og fysiske vinger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

3.3 Reynolds tal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

3.4 Numeriske simulationsmetoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

3.5 L/D-forhold og glidetallet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

3.6 Genetiske algoritmer og evolution . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

3.7 Parametrisering af vinger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

3.8 Bezierkurver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

4 Hypotese 12

5 Metoder 12

5.1 XFoil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

5.2 Design af algoritmen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

5.3 Bestemmelse af Reynolds tal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

5.4 Implementering af algoritmen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

6 Resultater 15

6.1 Udviklingshastighed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

6.2 Samme forhold som en 747 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

7 Implementering af forbedringer til algoritmen 20

7.1 Normalisering af vingeprofilen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

7.2 Begrænsning af tykkelse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

7.3 Trykfordeling og overfladens jævnhed . . . . . . . . . . . . . . . . . . . . . . . . . 22

7.4 Bedre mutationsmetode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

7.5 Udviklingshastighed og stopkriterie . . . . . . . . . . . . . . . . . . . . . . . . . . 23

8 Resultater efter forbedringer 23

9 Diskussion og perspektivering 25

9.1 Vingeprofiler i forhold til tredimensionelle vinger . . . . . . . . . . . . . . . . . . 25

1

Page 3: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

9.2 Fejlkilder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

9.3 Mulige forbedringer til algoritmen . . . . . . . . . . . . . . . . . . . . . . . . . . 25

9.4 Anvendelse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

9.5 Sammenligning med andre optimeringsmetoder . . . . . . . . . . . . . . . . . . . 26

10 Konklusion 26

A Generede flyvinger 29

A.1 Før forbedringer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

A.2 Efter forbedringer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

2

Page 4: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

1 Introduktion

Evolution og naturlig selektion er en proces, hvor de mest egnede organismer overlever og passererderes gener videre til den næste generation. Millioner af ars evolution har skabt en verden, der idag er fyldt med tilsyneladende geniale løsninger til naturens problemer. Det er alt fra fuglenesevne til at svæve til planters ydnyttelse af lys til menneskets evne til at kommunikere. Evolutionvil i mange tilfælde opna en løsning, ikke altid en optimal løsning, men stadig en fungerendeløsning.

En gruppe af optimeringsalgoritmer er inspireret af den naturlige evolution, hvor selektion,krydsning af gener og mutation simuleres digitalt. Denne metode kan bruges til at finde potentielleløsninger til problemer eller optimere allerede eksistende løsninger. En evalueringsfunktion brugestil at finde de bedst egnede i en generation, hvorefter gener krydses og muteres for at skabeindividerne i den næsten generation. Denne stokastiske proces vil over tid skabe individer, der ermere egnede til de opsatte kriterier.

Et eksempel pa et ingeniørvidenskabelig problem er optimeringen af vingeprofiler til flyvemaskiner,men ogsa turbiner og vindmøller. I alle disse eksempler er det fordelagtigt at maksimereforholdet mellem opdriften og luftmodstanden (L/D-forhold eller glidetallet). Tallet har endirekte indflydelse pa et flys brændstofforbrug, svæveevne og general effektivitet.

Fra naturens side er albatrossen et perfekt eksempel pa et dyr, der er optimeret af evolution tilsvævning. En kombination af deres aerodynamiske egenskaber og luftstrømme gør det muligtdem at svæve flere hundrede kilometer uden at sla med vingerne[9].

I denne rapport præsenteres en metode baseret pa en genetisk algoritme, der kan bruges tilat optimere todimensionelle vingeprofiler for at opna en højere L/D-forhold. Vingen beskrivesmatematisk med en sammensat Bezierkurve, og strømningerne omkring vingen simuleres medprogrammet xfoil. Udover analysen af de resulterende vinger bliver enkelte evolutionsparame-tre undersøgt, for at optimere evolutionens hastighed og resultater. Til sidst bliver udvalgtegenererede vinger sammenlignet med eksisterende naturlige og kunstige vinger.

2 Problemformulering

Projektet fokuserer primært pa hvordan det er muligt at efterligne den naturlige evolution til atløse ingeniørvidenskabelige problemer. Den valgte problemformuleringen er:

Hvordan kan man optimere en vinge eller en vingeprofil gennem brugen af genetiske algoritmer,saledes at effektiviteten og svævedistancen øges under bestemte aerodynamiske forhold, oghvordan er eventuelle resultater i forhold til eksisterende vinger?

3 Baggrund

I dette afsnit omtales relevant viden, der gør det muligt at realisere projektet og analysereresultaterne.

3

Page 5: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

Figur 1: De aerodynamiske kræfter, der pavirker en flyvemaskine. (David L. Darmofal. CCBY-NC-SA 4.0)

3.1 Aerodynamiske kræfter

Følgende overfladeintegral beskriver den aerodynamiske kraft, der pavirker et objekt,

A =

∫∫Sbody

(−pn + τ )dS (1)

Hvor A er hele den aerodynamiske kraft, p er trykket, n er enhedsvektoren vinkelret til overfladen,τ er stress fra viskositet [3].

For flyvemaskiner opløses denne aerodynamiske kraft typisk til to kræfter, der er yderst brugbaretil beregninger: Luftmodstand, D og opdriften L. Disse kræfter er vist i figur 1.

Opdriftskraften er vinkelret til strømningshastighedsvektoren (V∞). Ved en konstant indfalds-vinkel α og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed.Kraften kan beskrives med følgende formel:

L =1

2ρ∞v

2∞ACL = q∞ACL (2)

Hvor ρ∞ er densiteten, v∞ er luftstrøms-hastigheden, A er referencearealet (typisk vingernesareal), q∞ er det dynamiske tryk og CL er den enhedsløse opdriftskoefficient. Konstanten CLindeholder alle de komplekse faktorer, der har effekt pa opdriften, og værdien bliver derfor oftestbestemt eksperimentelt i en vindtunnel eller med computer-simulationer.

Opdriftskraften er forarsaget af sammenspillet mellem forskellige komplekse fysiske fænomener,men der er to simplificerede forklaringer, der hver især er ufuldstændige. Ifølge Newton’s tredjelov har hver aktion en lige stor og modsatrettet reaktion. Fordi en vinge deflekterer luftstrømmennedad, bliver den selv pavirket i den modsatte retning1. En anden forklaring bruger Bernoullisprincip, der siger, at produktet af det dynamiske tryk, q og det statiske tryk p er konstant forgnidningsfrie væsker. Eller skrevet formelt:

p+ q = p+1

2ρv2 = k (3)

1https://www.grc.nasa.gov/www/k-12/airplane/right2.html

4

Page 6: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

Figur 2: Drag polar af NACA633618-vingen.

KrumningslinjeKordelinje

Korde c

Maksimale krumning/camber

Tykkelse t

Figur 3: Eksempel pa vingeprofilen NACA-3412

Den komplette forklaring indeholder elementer af begge to.

Luftmodstanden kan bestemmes pa en lignende made, her udskiftes opdriftskoefficienten blotmed luftmodstandskoefficienten (ogsa kaldet formfaktoren) CD

D =1

2ρ∞v

2∞ACD = q∞ACL (4)

Denne kraft virker er parallel i forhold til strømningshastigheden.

Luftmodstanden kan yderligere opdeles i to slags: den inducerede luftmodstand forarsaget afluftstrømme omkring tredimensionelle vinger (uddybet i næste underafsnit) og parasitluftmod-stand (eng: parasitic drag), som er forarsaget af objektets form. Mængden af de forskellige slagsluftmodstand kommer an pa strømningshastigheden. Ved lave hastigheder dominerer induceredeluftmodstand, mens parasitluftmodstand dominerer ved højere hastigheder.

Som sagt har indfaldsvinklen en virkning pa de to vigtigste aerodynamiske kræfter, og der findesderfor et standard-diagram kaldet et “drag polar” til visningen af afhængigheden. Et eksempelpa sadan et diagram er vist i figur 2.

3.2 Vingeprofiler og fysiske vinger

Vingeprofiler er todimensionelle tværsnit af fysiske vinger. Disse tværsnit kan beskrives af enrække parametre, hvoraf de vigtigste er tykkelsen t, længden pa korden c og mængden af krumning.Hos de symetriske vingeprofiler er der ikke en krumning, og vingen er derfor symetrisk omkringkorden. Omvendt har de asymetriske vingeprofiler en krumning[1]. Krumningslinjen, ogsa kendtsom “mean camber line” er linjen der bliver dannet, nar middelpositionen af øverste og nedersteflade bestemmes. Det er hovedsageligt krumningen, krumningslinjens form og fordelingen aftykkelsen der bestemmer vingeprofilets opdrift og andre aerodynamiske egenskaber[2, ss. 179–181].Et eksempel pa en vingeprofil er tegnet pa figur 3, hvor de vigtigste begreber er angivet.

5

Page 7: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

Figur 4: Forskellige slags vingefaconer. (David L. Darmofal. CCBY-NC-SA 4.0)

Under analysen af en vingeprofil kan den anses som værende en vinge med en uendelig længde,hvor luften kun kan passere over og under vingen. Ved at omskrive udtryk (2) og (4) kanvingeprofilernes aerodynamiske koefficienter beskrives med følgende udtryk:

cl =L

q∞Scd =

D

q∞S(5)

Bemærk, at det lille c bruges til koefficienterne for at vise, at værdierne er for vingeprofilerog uendelige vinger. Koefficienterne bestemmes normalt ved at placere et vingesegment medkonstant korde i en vindtunnel, hvor vingen strækker sig fra den ene væg til den anden for atmodellere uendelige vinger[2, s. 186].

Fysiske vinger kan opsta i forskellig former, og de har derfor ogsa selv nogle vigtige parametre.Noget af det, der bestemmer effektiviteten af vingen i forhold til vingeprofilen, er sideforholdet,AR (fra engelsk, aspect ratio), der er defineret som:

AR =b2

A(6)

Hvor b er vingefanget og A er vingens areal. Hos nogle vinger varierer korden som en funktionaf afstanden til flyets skrog. F.eks. løber den ikoniske delta-vinge ud i en spids, og danner entrekant. Vingerne pa passagerfly er ogsa i mindre grad pileformet og vinklet for aerodynamiskearsager. Nogle eksempler pa vingefaconer er vist i figur 4.

Under en vinge er der højtryk, mens der over vingen er lavtryk. Dette medfører, at luften underen vinge har en tendens til at bevæge sig uden om siden af vingen og over. Denne bevægelseaf luft skaber en roterende hvivel efter vingens spidser, kaldet “wingtip vortices” pa engelsk.Den kinetiske energi i disse hvirvelstømme stammer fra flyets, hvilket betyder, at der opstar eninducerede luftmodstand, defineret som følgende:

CD,i =C2L

πeAR(7)

Hvor e er Oswald-effektiviteten (typisk mellem 0.85 og 0.95). Ligningen viser, at opdriftskoef-ficienten og sideforholdet har en afgørende effekt pa den inducerede luftmodstand. Ved højeindfaldsvinkler, hvor opdriftskoefficienten er høj, spiller den inducerede luftmodstand en størrerolle. Luftmodstandskoefficienten for en tredimensional er summen af luftmodstanden fra formenog den inducerede luftmodstand:

CD = cd +C2L

πeAR(8)

6

Page 8: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

Hvirvelerne trækker den omgivende luft med sig, skaber lille nedadgaende nedstrømning. Det be-tyder, at vingens effektive indfaldsvinkel er mindre end den geometriske. Opdriften og opdriftsko-efficienten af tredimensionelle flyvinger vil derfor altid være mindre end opdriftskoefficienten afdens vingeprofil[2, ss. 216–220].

3.3 Reynolds tal

Reynolds tal er vigtige dimensionsløse tal, der blandt andet beskriver mængden af turbulensi et fysisk system. Tallet er defineret som forholdet mellem de inertielle kræfter og de viskosekræfter:

Re =ρvL

µ(9)

Hvor ρ er densiteten af væsken, v er den relative hastighed mellem objektet og væsken, L ersystemets karakteristiske længde, der beskriver størrelsesforholdet og µ er væskens dynamiskeviskositet. Fordi den kinematiske viskositet er defineret som ν = µ

ρ og L typisk sættes til vingenskorde c under analysen af vingeprofiler, kan Re alternativt defineres som,

Re =vc

ν(10)

For passagerfly i normal flyvehøjde, er Re typisk mellem 106 og 108. Hvis malet er at modellereflyets aerodynamik i eksempelvis en vindtunnel eller computer, er det vigtigt, at Re er ens.Derudover skal de selvfølgelig have samme form og betingelser for grænselaget (no-slip condition).Pa den made skabes der dynamisk similiaritet mellem de to modeller, hvor væskestrømningerneer identiske. Hvis objektet er transonisk eller supersonisk, skal Mach-tallet ogsa være ens, dashock-bølgerne pavirker aerodynamikken.[6]

3.4 Numeriske simulationsmetoder

I aerodynamik bruges numeriske simulationsmetoder ofte til at forudsige hvordan et aerodynamiskobjekt vil opføre sig i en vindtunnel.

Nogle softwarepakker løser Navier-Stokes’ ligning for at simulere væskestrømningerne. En andenmetode gør brug af en række paneler, der modellerer vingeprofilen. Denne metode bliver brugt afprogrammet xfoil, som først blev udviklet af MIT-professoren Mark Drela i 1980’erne[4]. Selvomprogrammet er forholdsvis gammelt, indeholder det mange avancerede og nyttige funktioner tilanalyse af vinger. Programmet understøtter simulationer med og uden viskositet.

3.5 L/D-forhold og glidetallet

Ved at tage forholdet mellem opdriften og luftmodstanden, far man den sakaldte L/D-forholdeller L/D ratio pa engelsk. Denne værdi er tæt knyttet med et flys brændsstofeffektivitet ogsvæveevne.2. Under udviklingen af specielt svævefly er det derfor fordelagtigt at optimerevingeprofilens L/D forholdet. Endvidere omtaler man det sakaldte glidetal, som er forholdetmellem den afstand et fly kan flyve uden motorkraft og højdeændringen[5]. En flyvemaskinemed et glidetal pa 30 vil altsa dale med 1 m, hver gang den svæver 30 m. Hos tredimensionelle

2https://www.sciencedirect.com/topics/engineering/lift-to-drag-ratio

7

Page 9: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

flyvemaskiner er disse værdier i teorien lig med hinanden, og betegnelsen “glidetal” bruges derforogsa til L

D .

Fordi den matematiske formulering af L og D indeholder de samme variabler (dynamisk tryk ogareal), gælder det at L

D = CLCD

.

3.6 Genetiske algoritmer og evolution

Genetiske algoritmer er som sagt inspireret af naturlige selektion og evolution. Dannelsen af enny generation kan opdeles i en række processer:

• Selektion af de mest egnede.

• Krydsning af gener

• Mutation af gener

Under selektionen udvælges et antal individer i den nuværende generation. Udvælgelsen kanforega pa forskellige mader, hvor de mest kendte er roulette-metoden, hvor individernes score erdirekte proportional med chancen for overlevelse. En anden metode rankerer individerne efterevalueringsresultatet, og udvælger dem baseret pa deres rank alene[10]. Her fokuseres pa metodeto, da der i tilfælde at flyvinger ikke er en stor relativ forskel mellem individerne. Følgendeudtryk kan bruges til at beskrive chancen for udvælgelsen af det n-te individ.

pn = (1− pc)n · pc (11)

Hvor pc er chancen for udvælgesen af det første individ. Fordi det er en eksponentiel funktion,er der igen pc chance for at det andet individ vælges, hvis det første ikke gør.

Krydsning af gener kan enten være baseret pa genvis tilfældig udvælgelse, eller en krydsningved et eller flere bestemte punkter. I nogle tilfælde, hvor værdierne er kontinuerte, er det ogsamuligt at interpolere værdierne fra de to. Tilfældig udvælgelse kan opskrives pa følgende made,

G′(n) =

{G1(n), if R < 0.5

G2(n), otherwise(12)

Hvor R er et tilfældigt tal mellem 0 og 1, G(n) er det n-te gen i det nye genom. Fordi dennemetode kombinerer elementer fra forskellige individer, er der sandsynlighed for udforskning afnye løsningsmetoder. Denne metode kan dog ogsa medføre individer, er ikke er i stand til atoverleve.

Hvis krydsning ved at punkt bruges, vil alle gener før et punkt, c, i afkommets genom stammefra den ene forældre, mens de resterende fra den anden forældre. Konceptet er illustreret i figur5. Det kan ogsa beskrives med følgende udtryk,

G′(n) =

{G1(n), if n < p

G2(n), otherwise(13)

Værdien for p kan være et tilfældigt tal mellem 0 og antallet af punkter.

Disse processer bliver gentaget igen og igen, indtil det ønskede resultat opnas.

Under implementationen af genetiske algoritmer er det muligt at fastsætte nogle parametre ellerkonstanter, der har en virkning pa konvergenshastigheden, diversiteten, og effektiviteten. Et

8

Page 10: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

Figur 5: Tegning, der viser genetisk krydsning/crossover (Thomas Hunt Morgan, 1916, publicdomain)

af de vigtigste faktorer er mængden og omfanget af mutationerne. I biologiske organismer erchancen for mutationen af et enkel basepar i stabile genomer omkring 10−10 for hver celledivision.Der findes dog gener, hvor værdien ligger i størrelsesordenen 10−5 3. Biologiske mutationer kanhave forskellige konsekvenser. Basepar i et genom kan blive ændret (f.eks. fra A til C), selvomantallet forbliver det samme. Der kan ogsa opsta tilføjelser eller fjernelser af basepar. Underdesignet af en genetisk algoritmer er det vigtigt at overveje bade mutationsmetoderne i brug,samt chancen for mutationen af et gen. Valget af den genetiske kode har ogsa en afgørende effektpa algoritmens effektivitet. I nogle problemer er det muligt at bruge en lang række diskreteværdier som 1 og 0 i genomet. Her kan mutationen være en tilfældig ændring af værdien. Tilandre problemer er kontinuerte værdier foretrukne, hvor værdien af generne er afgrænset i etinterval. Det er stadig muligt at bruge diskrete værdier som et genom til en række kontinuerteværdier (sa generne bliver oversat til en slags fænotype), men dette er ofte ikke nødvendigt ellerpraktisk i simple genetiske algoritmer. En anden metode er at lægge et tilfældigt tal til genetsoprindelige værdi, hvilket er opskrevet her.

r ∈ R,−1 ≤ r ≤ 1 (14)

g′ = g + r · s (15)

Hvor r er et tilfældigt tal, s er den maksimale mutationsstørrelse og g er værdien af genet. Enalt for lille værdi for s medfører en alt for langsom evolution, mens en for høj værdi er ustabil.Mutationsstørrelsen kan sammenlignes med læringshastigheden i maskinlæring (typisk α), hvorstørrelsen har et lignende effekt pa udviklingen/læringen. Et genetisk algoritme, der gør brug afen statisk mutationsstørrelse kan forbedres ved at gøre brug af en dynamisk mutationsstørrelseog mutationshastighed. I starten er det vigtigt at udforske et bredt spektrum af mulige løsninger,som senere kan finjusteres.

En anden vigtig faktor er antallet gener, samt antallet af de basale enheder i hvert gen. Hvisantallet af gener er for høj, evolutionshastigheden være meget lav.

3https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2836558/

9

Page 11: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

P0

P1

P2

Figur 6: Konstruktionen af en kvadratisk Bezier-spline

3.7 Parametrisering af vinger

For at optimere en flyvinge er det først nødvendigt at være i stand til at beskrive vingen medparametre. Det gør et muligt for et menneske eller et computerprogram at ændre pa værdierneog ændre den resulterende form. Til dette formal er der mange eksisterende metoder. Den mestkendte er nok NACA-serien af flyvinger, som opskrives med fire cifre, f.eks. NACA-2412. Deførste to cifre beskriver mængden af camber som en procent af vingens korde, det næste talbeskriver positionen med maksimum camber i tiendedele. De sidste to tal beskriver vingensmaksimale tykkelse som en procent af vingens korde. Ved at indsætte værdierne i en rækkeligninger, er det muligt at konstruere vingeprofilen[8]. Der er siden udviklingen af de fire-cifredeNACA-vinger i starten af 1900-tallet blevet udviklet 5- og 6-cifrede definitioner, hvor der flereparametre indgar.4.

Definitionerne og beskrivelsen af vingeprofiler kan ga fra de helt simple (f.eks. fire-cifrede NACA-vinger), der kan modificeres i begrænset opfang, til eksempelvis splines, der kan beskrive enhvertænkelig form. En form for parametriske kurver kaldes Bezierkurver, der ligesom splines kanbeskrive stort set enhver form. Ulempen ved brugen af splines og Bezierkurver er, at der findeslangt flere mulige kombinationer, hvilket kan føre til en langsom udviklingshastighed med dengenetiske algoritme. Dette er dog ogsa en fordel, da enhver tænkelig vingeprofil i teorien kanbeskrives. Bezierkurver og deres egenskaber uddybes i følgende underafsnit.

3.8 Bezierkurver

En Bezierkurve er en kontinuer kurve, der er beskrevet med mindst to endepunkter og nuleller flere kontrolpunkter. Den resulterende Bezierkurve starter og slutter ved endepunkterne ogkurven bliver “tiltrukket” af kontrolpunkterne.

Den simpleste Bezierkurve beskrives med to punkter, P0 og P1, og er matematisk identisk medet linjestykke, der gar mellem de to punkter. Den kan opskrives pa følgende made (Bemærk: Idette projekt anvendes todimensionelle koordinater/stedvektorer):

~B(t) = (~P1 − ~P0)t+ ~P0 = (1− t)~P0 + t ~P1, 0 ≤ t ≤ 1 (16)

~B(t) bevæger sig altsa fra ~P0 til ~P1, nar værdien af t gar fra 0 til 1. I en andengradsbezierkurve(vist i figur 6) er der tre punkter. Ved brug af De Casteljau’s algorithm bliver der mellem ~P0 og~P1 konstrueret en førstegradsbezierkurve, og det samme foretages mellem punkt ~P1 og ~P2. Derinterpoleres igen mellem de to førstegradsbezierkurver5. Udtrykket for en andengradsbezierkurve

4https://people.clarkson.edu/∼pmarzocc/AE429/The%20NACA%20airfoil%20series.pdf5https://pomax.github.io/bezierinfo/

10

Page 12: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

har derfor følgende form.

~B0,1(t) = (~P1 − ~P0)t+ ~P0, 0 ≤ t ≤ 1 (17)

~B1,2(t) = (~P2 − ~P1)t+ ~P1, 0 ≤ t ≤ 1 (18)

~B0,1,2(t) = (~P1,2 − ~P0,1)t+ ~P0,1 (19)

Substitution og omskrivning

~B0,1,2(t) = (((~P2 − ~P1)t+ ~P1)− ((~P1 − ~P0)t+ ~P0))t+ (~P1 − ~P0)t+ ~P0, ≤ t ≤ 1 (20)

~B0,1,2(t) = (1− t)2 ~P0 + 2(1− t)t ~P1 + t2 ~P2 ≤ t ≤ 1 (21)

En generel rekursiv formel baseret pa De Casteljau’s algorithm kan opskrives for en Bezierkurveaf enhver grad. Lad n være antallet af kontrolpunkter og ~P0, ~P1 . . . ~Pn−1 være kontrolpunkterneskoordinater. Funktionen skaber to sæt af punkter, et sæt med alle undtagen det sidste kontrol-punkt, og et sæt med alle undtagen det første: ~P0 . . . ~Pn−2 og ~P1 . . . ~Pn−1. Bezierkurven udregnesfor disse sæt rekursivt, indtil det kun er enkelte punkter.

~B~P0(t) = ~P0 (22)

~B~P0... ~Pn−1(t) = (1− t) ~B~P0... ~Pn−2

(t) + t ~B~P1... ~Pn−1(t) (23)

Pa den made er det muligt at skabe Bezierkurver med arbitrære antal kontrolpunkter. Selvommetoden er simpel, betyder antallet af iterationer, at algoritmen er langsom, speciel hvis derer mange kontrolpunkter. Tidskompleksiteten ligger pa O(n2). En alternativ metode baseretpa Bezierkurver til skabelsen af komplekse former er at opdele formen i en række sammensat-te førstegrads- eller andengradsbezierkurver. Ved at sammensætte let udregnelige kurver ermetoden skalerbar. Det medfører ogsa, at den resulterende sammensatte kurve ligger tætterepa kontrolpunkternes positioner end hvis n-te grads Bezierkurve anvendes. Til den endeligealgoritme til parametriseringen af vingen fokuseres der derfor pa sammensatte kurver.

Vingens form skal helst ikke have skarpe kanter. Den sammensatte Bezierkurve kræver altsaG1-kontinuitet, hvor den differentierede kurve skal være kontinuer. Dette gælder, hvis linjenmellem to kontrolpunkter, der omgiver et knudepunkt, skærer selve knudepunktet. Med andre ord,kurvens tangent ved sammenslutningspunktet mellem to delkurver skal skære de kontrolpunkter,der ligger umiddelbart før og efter sammenslutningspunktet. Dette gælder fordi en Bezierkurvestangent ved et endepunkt altid skærer det tætteste kontrolpunkt. En simpel made, hvorpa enjævn sammensat Bezierkurve, der opfylder de opstillede kriterier kan skabes, er ved at konstruereen række midtpunkter mellem kontrolpunkterne pa følgende made

Lad n være antallet af kontrolpunkter, og ~P0, ~P1, ~P2, . . . ~Pn−1 kontrolpunkternes koordinatet.Den i-te kontrolpunkt er altsa ~Pi−1. Midtpunktet mellem ~Pi og ~Pi+1 defineres som ~Qi:

~Qi ≡~Pi + ~Pi+1

2(24)

For alle de midterste kontrolpunkter, altsa ~P1, ~P2, . . . ~Pn−2, gælder det, de at de omgivet af tomidtpunkter, ~Qi−1 og ~Qi. Her bruges midtpunkterne som endepunkterne i en mindre 2.grads-bezierkurve, og ~Pi bruges som kontrolpunktet for segmentet.

seg ~Bi(t) = ~B ~Qi−1, ~Pi, ~Qi(t), i ∈ [1, 2, . . . n− 2] (25)

Den resulterende sammesatte Bezierkurve skærer alle de konstruerede midtpunkter.

Det første og det sidste kontrolpunkt er ikke omgivet af to midtpunkter midtpunkt, og her erdet derfor kun muligt at skabe en 1.gradskurve, et linjestykke, der forbinder endepunktet ogmidtpunktet. Den føromtalte metode er vist grafisk i figur 7.

11

Page 13: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

P0

P1

P2

P3

Q0

Q1

Q2

Figur 7: Konstruktionen af en sammensat Bezierkurve

4 Hypotese

Jeg vil forsøge at gøre brug af en selvudviklet genetisk algoritme til at optimere vingeprofilermed udgangspunkt i en geometrisk NACA-vinge til at “kick-starte” processen. Hvis algoritmenvirker som planlagt, forventer jeg, at programmet iterativt forbedrer vingeprofilens design overtid.

Fordi formen af vingen og de aerodynamiske faktorer, der indgar i Reynolds tal, har en effekt paopdrift og luftmodstand, forventes det, at variationen af disse ændrer algoritmens slutresultat.

Konkret kan der kigges pa eksisterende vinger, bade menneskeskabte og naturlige, for at fa enmulig ide af hvad algoritmen kommer frem med. Mange fugle, specielt trækfugle, er udviklet tilsvæve over lange afstande med det laveste energiforbrug. Eksempelvis er albatrosser kendte forderes lange vinger. Det forventes, at en vinge genereret under samme aerodynamiske vilkar, vilhave nogle similariteter.

Det er muligt, at algoritmen kommer til at overoptimere, hvis fysiske begrænsninger ikkeimplementeres. Det er eksempelvis ikke muligt at have en virkelig vinge med en tykkelse pa 0.

Jeg forventer, at algoritmen vil generere nogle vingeprofiler, der minder lidt om de asymetriskevingeprofiler, man kan finde i levende organismer eller i eksisterende flyvinger. Der vil dog væreafvigelser pa grund af de todimensionelle flyvinger, der ikke bliver pavirket af andre effekter ogeffektivitetstab. Fordi krumningslinjen har den største effekt pa de aerodynamiske egenskaber,kan det være, at algoritmen “vælger”6 at pabegynde optimeringen med denne, og efterfølgendefinjustere fordelingen af tykkelsen.

5 Metoder

5.1 XFoil

Xfoil bruges under simulationsprocessen til bestemmelsen af de genererede vingeprofilers aerody-namiske koefficienter.

Xfoil kontrolleres gennem en række kommandoer, som kan bruges til at generere en lift-dragpolar for en given vingeprofil ved at beregne opdrift og luftmodstand ved flere vinkler. Følgengekommandoer bruges7:

6Algoritmen kan betegnes som en hill-climbing-algoritme, der bruger tilfældighed til at finde det næste trin.Generelt vil algoritmen derfor vælge at ændre den parameter, der har en størst effekt.

7http://web.mit.edu/aeroutil v1.0/xfoil doc.txt

12

Page 14: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

• LOAD (Abn en fil med et sæt koordinater)

• NORM (Normaliser vingen til intervallet 0 ≤ xi ≤ 1)

• PANE (Interpoler til et passende antal punkter.)

• OPER (Ga til simulationsfunktionen)

• Visc (Simuler med viskositet)

• Re <num> (sæt Reynolds tal)

• M <num> (sæt mach-tallet)

• PPAR (Gem simulationsresultaterne)

• ASEQ <num> <num> <num> (Simuler for en sekvens af vinkler.)

Disse kommandoer bruges til at læse og analyse en .dat-fil med et sæt af koordinater.

5.2 Design af algoritmen

Selve den genetiske algoritme blev struktureret omkring en løkke, der iterativt gentager simula-tionen for hver generation. Flowdiagrammet pa figur 8 viser de forskellige trin i algoritmen.

Algoritmen blev indelt i en række logiske dele. Et Python-modul blev skrevet med navnetxfoil.py, som fungerer som en bro mellem Python og xfoil.

Helt over ordnet er programmet opdelt i følgende dele:

1. Bro til xfoil, der kan bruges til at lave aerodynamiske simulationer.

2. Klasse, hvor vingeprofilernes egenskaber og funktioner defineres.

3. Funktioner, der udfører de forskellige dele af den genetiske algoritme: selektion, krydsningog mutation.

Til den genetiske algoritme blev krydsningen og skabelsen af et afkom udført ved at tage denøvre flade fra den ene forældre og den nedre flade fra den anden. Det sikrer, at der ikke er etpunkt pa vingen, hvor tykkelsen pludselig ændrer sig.

5.3 Bestemmelse af Reynolds tal

For at bestemme Re for et fly, der bevæger sig med en bestemt hastighed og befinder sig i enbestemt højde, er det nødvendigt at finde viskositeten af væsken. Værdien af denne kan estimeresved hjælp af den internationale standardatmosfære (ISA), som er en model, der blandt andetbeskriver den atmosfæriske temperatur, tryk og densitet helt op til en højde pa ca. 60 km[6].Nar temperaturen er kendt, kan Sutherlands ligning anvendes til bestemmelsen af viskositeten8:

8http://www-mdp.eng.cam.ac.uk/web/library/enginfo/aerothermal dvd only/aero/fprops/propsoffluids/node5.html

13

Page 15: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

Skab populationmed NACA-vinge

Evaluer alle individer

Vælg mest eg-nede individer

Optimal nok?Færdig

Xfoil

Kryds de mestegnede individer

Muter generne

nej

ja

Figur 8: Overordnet struktur af hele algoritmen

14

Page 16: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

µ =b · T

32

T + S(26)

Hvor b = 1,458 · 10−6 kg

m·s·K12

og S = 110,4K.

Til analysen af vingeprofiler er det, som tidligere omtalt, praktisk at finde vingens korde samtflyets flyvehastighed. Disse værdier er ofte tilgængelige eller kan regnes baseret pa data frainternettet.

Alle de nødvendige værdier indsættes til sidst i formlen,

Re =vc

ν(27)

5.4 Implementering af algoritmen

Implementeringen i python blev struktureret efter den planlagte algoritme, og den blev derforopdelt i forskellige filer. Følgende liste beskriver kort, hvilke funktioner de vigtigste filer har.

• xfoil.py: Fordi xfoil ikke har et API, er det ikke muligt at bruge det direkte fra python.Denne fil indeholder kode, der sender kommandoer til xfoil’s kommandointerface samtaflæser data.

• CompBezier.py: Kode til generering af sammensatte Bezierkurver.

• Airfoil.py: Indeholder en class til de genetiske flyvinger og funktioner til at gemme/af-læse disse. Alle funktioner, der omhandler individuelle vingeprofiler er implementeret her.Det er blandt andet logikken bag mutationerne og valideringsfunktioner.

• genetics.py: Indeholder implementeringen af den genetiske algoritme. Koden i denne filretter sig primært mod hele populationer, hvilket inkluderer selektionsprocessen.

• aerotools.py: Funktioner til udreging af Reynolds tal samt kode til udregning af atmos-færiske data med den internationale standardatmosfære.

• visualize.py: En hjælpefil, der er i stand til at visualisere udviklingen af vingeprofilernegennem en animation.

Under evolutionsprocessen blev hver individ i hver generation eksporteret og gemt som en fil. Paden made er det muligt at analysere alle individerne enkeltvis, hvis det skulle være nødvendigt.

6 Resultater

Den udviklede genetiske algoritme blev brugt til at optimere vingeprofiler med udgangspunkt iNACA-0012. Vingeprofilerne blev simuleret med følgende Re: 1 · 105, 1 · 106, 1 · 107, 5 · 107, 108,hvilket pavirker resultatet fra den genetiske algoritme. Nogle udvalgte resultater fremvises her,mens resten kan findes i bilaget. I nogle tilfælde gav xfoil forkerte værdier for luftmodstanden,hvilket gav en beregnet L/D pa flere tusinde. Disse værdier er fjernet i ekstreme tilfælde før deindtegnes i graferne, og de fjernede værdier er markeret med et brud i graden.

Under evolutionsprocessen blev L/D-forholdene samt vingernes koordinatsæt gemt for hvertindivid i hver generation. Resultaterne tager udgangspunkt i disse datasæt.

15

Page 17: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

6.1 Udviklingshastighed

Under optimeringen af algoritmen blev mutationsstørelsen ændret for at finde effekten paudviklingshastigheden. Re blev her sat til 1 · 105, hvilket omtrent svarer til en fugl. Figur 9viser effekten af mutationsstørrelsen (her blev mutationschancen sat til 0.15). De resulterendeflyvinger efter 500 generationer er vist i figur 10.

Analysen af udviklingshastigheden viser, at der er en klar fordel i at vælge den korrektemutationsstørrelse og mutationschance. Hvis værdien af mutationsstørrelsen S er for lav, vil detmedføre en meget langsom udviklingshastighed, hvilket kan ses pa den bla kurve pa figur 9. Hvisværdien er for høj, skaber det instabilitet og misdannenede individer, hvilket er tilfældet medS = 0,008. Det er tydeligt pa figur 10, at den sorte vingeprofil har faet en darlig mutation. Enpassende værdi for S medfører derimod til en forholdsvis hurtig udvikling, uden at der dannesalt for mange negative mutationer. I dette tilfælde er det omkring S = 0,004, som næsten harsamme udviklingshastighed som S = 0,008, men med langt færre problemer.

0 100 200 300 400 500 600 700 800

30

40

50

60

70

80

90

100

110

Generation

L/D

L/D vs gen

S = 0,002S = 0,004S = 0,006S = 0,008

Figur 9: Sammenligning af forskellige værdier for mutationsstørelse, S (Note: brud i linjen er fraugyldige resultater)

16

Page 18: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

Figur 11: Albatrossens vinge og vingeprofil

0,0020,0040,0060,008Start

Figur 10: Generation 500 med forskellige værdier for mutationstørrelse

Fordi Re brugt her svarer til dem hos fugle, kan de sammenlignes med fuglevinger. Det er oplagtat kigge pa albatrossen, da det er en fugl, der er optimeret til svævning. Albatrossens modelleredevingeprofil er vist i figur 11. 9

Her findes der mange ligheder mellem den røde vingeprofil i figur 10 og albatrossens vingeprofil.De har begge en tydelig krumning, og de er begge forholdsvis tynde i forhold til vinger optimeretfor højere Reynolds tal.

6.2 Samme forhold som en 747

I en af forsøgene blev Reynolds tal for en Boeing 747-400 brugt til simulationerne. Flyet haren AR pa 7,7 og et vingefang pa 70,67 m. Det giver en gennemsnitlig korde pa 9,1 m. Vedhjælp af den internationale standardatmosfære til estimeringen af den dynamiske viskositetog luftdensiteten pa en højde pa 12 km, samt en hastighed pa 259,167 m

s blev Re bestemt til51 518 000. Det afrundes til Re = 5 · 107. Mach-tallet er omkring 0,86, men fordi xfoil ikke eregnet til beregningen med transoniske hastigheder, bruges 0,7 i stedet. 10 I denne simulationblev værdien af S sat til 0,004, mens værdien af mutationschancen blev sat til 0,05.

Den bedste værdi og medianen af L/D-forholdet er vist som en funktion af tid i figur 12. Grafen

9https://www.researchgate.net/figure/Views-of-the-albatross-a-airfoil-b-wing-and-c-bird fig1 32093508910http://janes.migavia.com/usa/boeing/boeing-747-400.html

17

Page 19: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

viser, at størstedelen af udviklingen foregar i de første 100 generationer. Efterfølgende opstar dernogle problemer med den bedste flyvinge, der muligvis bliver overoptimeret.

0 50 100 150 200 250 300 350 400

100

200

300

400

500

Generation

L/D

L/D vs gen

BedsteMedian

Figur 12: L/D-forhold som en funktion af generation.

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

−0.1

0

0.1

x

y

Gen 0Gen 100Gen 350

Figur 13: Optimeret til Re = 5 · 107 og Mach=0.7

Bemærk: selvom grafen viser en L/D-forhold pa over 200, er det praktisk set umuligt at opnadisse værdier. Med fysiske tredimensionelle flyvemaskiner ligger de højeste nuværende værdier paca. 70-80. Eksempelvis har Boeing 747 et svæve-forhold (hvilket svarer omtrent til L/D-forholdet)pa omkring 1711. Det stammer fra blandt andet fra luftmodstanden forarsaget af resten af flyet.

11http://large.stanford.edu/courses/2013/ph240/eller1/

18

Page 20: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

−0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1

−0.1

0

0.1

x

y

BOEING BACXXX

Figur 14: Vingeprofilen af boeing 747-400

Den genererede vingeprofil kan sammenlignes med vingeprofilen i den rigtige 74712 13. En versionaf vingen er vist i figur 14. Som der kan ses, er der bade tydelige forskelle og ligheder mellem deto vinger. Den genererede vinge har en skarp krumning nær vingens bagkant. Den genereredevinger er derudover en smule tykkere i forkanten. Til fælles er begge vingeprofiler asymetriske.Den genererede vingeprofil har faktisk mere tilfælles med de sakaldte superkritiske vingeprofiler,der bruger en krumning til at mindske luftmodstand forarsaget af chockbølger, nar flyet ertransonisk. Et eksempel pa en superkritisk flyvinge er vist i figur 1514. Denne similiaritet kandog ikke være opstaet pa grund af de transoniske chockbølger, da xfoil ikke kan simulere disseog fordi mach-tallet blev sat til 0.7. I stedet kan det være, at krumningen fungerer som en slags“high lift device”, der skaber mere opdrift.

−0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1

−0.1

0

0.1

x

y

whitcomb-il

Figur 15: Whitcomb Integral Supercritical Airfoil

Figur 16 viser en graf over trykkoefficienten over og under vingeprofilen som en funktion afpositionen langs korden. Billedet viser, at krumningen i bagkanten er med til at skabe mereopdrift, da forskellen i trykkoefficient er større det sted.

12Moderne flyvinger bruger ikke den samme konstante vingeprofil gennem hele vingen. Firmaerne offentliggørerderudover sjældent deres vingeprofiler.

13http://airfoiltools.com/airfoil/details?airfoil=bacxxx-il14http://airfoiltools.com/airfoil/details?airfoil=whitcomb-il

19

Page 21: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

Figur 16: xfoil-analyse af den genererede vingeprofil.

7 Implementering af forbedringer til algoritmen

Pa grund af problemet med ujævne overflader har jeg valgt at implementere en række ændringeri algoritmen, for at finde ud af hvordan de vil pavirke de resulterende vingeprofiler.

7.1 Normalisering af vingeprofilen

Tidligere var det xfoil, der tog sig af normaliseringen af vingeprofilen før simulationerne, hvorforkanten blev placeret i origo og kordens længde blev sat til 1. Fordi nogle af de planlagteforbedringer kræver en normaliseret vinge før simulationerne, blev en simpel algoritme imple-menteret i kode til formalet. Først bestemmes forkanten og bagkantens koordinater ved at itereregennem alle koordinaterne og holde styr pa henholdsvis det koordinat med den laveste og denhøjeste x-værdi. Lad ~Pf være forkantens stedvektor og ~Pb være bagkantens stedvektor. Kordenslængde bestemmes ved at finde forskellen mellem forkanten og bagkantens x-koordinat:

c = x~Pb− x~Pf

(28)

Vingeprofilens kontrolpunkter transformeres ved at flytte punkterne, sa ~Pf er i origo, hvorefteralle punkters stedvektor skaleres, sa korden bliver 1.

~Pi,normaliseret =1

c(~Pi − ~Pf ) (29)

20

Page 22: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

7.2 Begrænsning af tykkelse

En af de tidligere problemer der opstod, var vingeprofiler med en tykkelse pa 0 eller tæt pa0. Den eksisterende tykkelsesbegrænsningsalgoritme er primitiv, da den kun forhindrer, atkontrolpunkterne skærer hinanden i y-retningen.

For at udvide denne funktion er det nødvendigt at finde tykkelsesfordelingen, altsa t som enfunktion af x. Af praktiske arsager anvendes de interpolerede koordinater. Der konstrueres førsten række linjestykker mellem hvert koordinat. For at finde tykkelsen ved xi bruges følgendemetode: Alle koordinatpar itereres igennem for at finde ud af hvor den vertikale linje x = xiskærer linjestykket. Fordi vingen har en øvre og en nedre flade, er der i alt to skæringer (set bortfra enkelte undtagelser). y-koordinaten for de to skæringer bestemmes, hvorefter udregningen aftykkelsen er triviel: t = yøvre − ynedre.15

Ved at bestemme t ved forskellige punkter er det muligt at skabe en tykkelsesfordeling. For atskabe en minimumstykkelse kræves en funktion, der er i stand til at beskrive minimumstykkelsesom en funktion af korden. Minimumstykkelsen kan ikke være en konstant, da vingeprofilertypisk tynder ud i bagkanten. Helvigvis findes der allerede sadan en funktion i form af defirecifrede NACA-vingers definition[8]. Følgende udtryk afledt af NACA-vingens definitionbeskriver tykkelsen som en funktion af positionen langs korden:

tNACA(x) = 10tmax(0,2969x0,5 − 0,1260x− 0,3516x2 + 0,2843x3 − 0,1015x4) (30)

Hvor tmax er vingens maksimale tykkelse. En arbitrær valg af tykkelsen kan være 0,05 gangekordens længde (bemærk: Det valgte udgangspunkt til den genetiske algoritme NACA 0012,med en maksimal tykkelse pa 0,12 gange kordens længde).

For at bestemme hvorvidt et individ har en gyldig tykkelse, kan programmet finde ud af om derer punkter, hvor t < tNACA gælder. Figur 17 viser tykkelsesfordelingen af en tidligere genereretvingeprofil samt den valgte grænse.

0 0.2 0.4 0.6 0.8 1

0

5

·10−2

x

t

x vs t

tNACAt

Figur 17: Tykkelsesfordelingen af flyvinge fra det opdaterede program.

Figuren viser, at vingeprofilen ikke er gyldig ifølge de nye kriterier.

15Teknisk set burde tykkelsen bestemmes som den mindste afstand fra øvre flade til nedre flade, hvilket ikkealtid er ortogonal med x-aksen. Den præsenterede metode giver dog en approximation, der fungerer til formalet.

21

Page 23: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

7.3 Trykfordeling og overfladens jævnhed

Et af problemerne der opstod i programmet var dannelsen af ujævne overflader, der førertil en ujævn trykfordeling. Disse to problemer kan delvist løses ved at inkorporere et andetoptimeringskriterie, der beskriver hvor jævn overfladen er. For at opstille dette kriterie krævesen metode, der er i stand til at evaluere vingeprofilens overflade, og generere en numerisk“jævnhedsværdi”. Det er ogsa vigtigt, at en smule ujævnhed ikke pavirker evalueringsresultatetalt for meget. Følgende metode blev implementeret for at gøre netop det:

Først opdeles vingeprofilens kontrolpunkter i øvre og nedre, hvorefter punkterne interpoleresmed parametriseringsmetoden. Numerisk differentiation anvendes til at estimere tangentenshældning som en funktion af afstanden til forkanten.

d

dxf(x) ≈ f(xi+1)− f(xi)

∆x(31)

En regressionsanalyse foretages derefter med en tredjegradspolynomium, og bestemmelseskoeffi-cient, R2 beregnes. R2 giver en indikation om hvor jævn overfladen af vingeprofilen er. Brugenaf tredjegradspolynomiet betyder, at vingeprofilen stadig kan have lidt ujævnhed i form afkrumninger, uden at det pavirker R2 særlig meget.

0 0.2 0.4 0.6 0.8 1

−0.4

−0.2

0

0.2

0.4

x

dy

x vs dy

Figur 18: Den differentierede underside af en tidligere genereret flyvinge.

For at teste den opstillede metode blev en tidligere genereret flyvinge analyseret (Den rødevist i figur 10), hvilket producerede datapunkterne vist i figur 18. Den stiplede røde linje ertredjegradsligningen fra regressionsanalysen. Metoden bruges pa bade oversiden og undersiden,hvorefter R2-værdierne kombineres gennem et geometrisk gennemsnit:

J =√

(R2)1 · (R2)2 (32)

Værdien af J ligger mellem 0 og 1. For den føromtalte vingeprofil ligger værdien pa 0,95. For atgøre værdien til en del af evalueringskriterierne, kan den blot ganges sammen med de alleredeeksisterende kriterier.

22

Page 24: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

Figur 19: Vingeprofil optimeret til Re = 1e5 af den tidligere version af programmet

7.4 Bedre mutationsmetode

Første version af computerprogrammet gjorde brug af en simpel mutationsmetode, hvor kon-trolpunkternes x-koordinat og y-koordinat blev ændret separat med en ensartet tilfældig værdi.Men fordi problemet omhandler todimensionelle koordinater, er det mere passende at ændrekoordinaten som en samlet enhed. Af den grund blev følgende mutationsmetode implementeret iden nyeste version af programmet.

Lad ~P være en stedvektor, der repræsenterer et kontrolpunkts position og 0 ≤ θ ≤ 2π en tilfældigvinkel.

r =

(sin θcos θ

)(33)

~Pefter = ~P + r · S ·X (34)

(35)

Hvor S er mutationsstørrelsen og X er en tilfældig værdi genereret efter normalfordelingen.Brugen af normalfordelingen medfører, at antallet af sma ændringer øges, samtidig med at derstadig kan opsta enkelte større mutationer.

7.5 Udviklingshastighed og stopkriterie

For at overvage udviklingshastigheden (malt i evalueringspoint per generation), er det ikkenok at tage ændringen per generation, da mængden af støj bliver for høj. I stedet kan en slagsgennemsnit over de sidste n generationer udregnes ved at foretage en linear regression, hvorhældningskoefficienten bestemmes. n blev arbitrært sat til 20 generationer, da værdien giveren god balance mellem mængden af støj og hvor opdateret værdien er. Observationer efterigangsættelse af optimeringsprogrammet viste, at udviklingshastigheden starter højt, i nogletilfælde pa over 1 evalueringspoint/gen. Set bort fra enkelte stigninger af udviklingshastigheden,har den en tendens til at falde over tid. I de fleste test la værdien pa under 0.05 points/gen efteromkring 500 generationer.

Det er derfor muligt at standse optimeringen automatisk, hvis evalueringsresultatet forbliverunder en valgt grænse over et stykke tid.

8 Resultater efter forbedringer

Et par vingeprofiler blev genereret med samme Reynoldstal som tidligere for at undersøgehvordan ændringerne i programmet har pavirket de resultarende vingeprofiler.

Den første vingeprofil er optimeret til Re = 1e5, og resultatet efter 500 generationer er vist ifigur 20.

23

Page 25: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1

−0.1

0

0.1

0.2

x

y

Gen 500

Figur 20: Vinge optimeret til Re = 1e5 med forbedringer

Subjektivt er det tydeligt, at denne vingeprofil har en mere jævn overflade i forhold til dentidligere version. Det samme viser den tidligere omtalte “jævnhedsværdi”, som ligger pa 0,986 iforhold til 0,95.

Pa grund af tykkelsesbegrænsningerne er der ikke steder pa vingeprofilen, hvor tykkelsen er nuleller tæt pa nul. Figur 21 viser, at tykkelsesbegrænsningen fungerer, da tykkelsesfordelingen erover den valgte grænse.

0 0.2 0.4 0.6 0.8 1−2

0

2

4

6

8·10−2

x

t

x vs t

tNACAt

Figur 21: Tykkelsesfordelingen af flyvinge fra det opdaterede program.

Igen blev en vingeprofil optimeret til høje Reynoldstal, som svarer til dem man finder hoskommercielle flyvemaskiner. Resultatet efter 500 generationer er vist i figur 22.

24

Page 26: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

−0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1

−0.1

0

0.1

0.2

x

y

Gen 500

Figur 22: Vinge optimeret til Re = 5e7 med forbedret program.

Figuren viser, at der igen opstar en mærkværdig høj krumning i bagkanten. Forbedringerne hardog medført, at overfladen er mere jævn, og tykkelsen er mere realistisk.

Andre vingeprofiler genereret med det opdaterede program er vist i bilaget.

9 Diskussion og perspektivering

9.1 Vingeprofiler i forhold til tredimensionelle vinger

De fundne værdier for L/D-forholdet gælder kun i tilfælde af uendelige lange vinger. I vir-keligheden vil der, som sagt i baggrundsafsnittet, være andre faktorer som hvirvler, der øgerluftmodstanden og sænker opdriften. Derudover vil flyets skrog bidrage til luftmodstanden. Derer i denne rapport derfor ikke lagt stor fokus pa selve værdien af L/D, men i stedet pa hvordanoptimeringen af denne vil øge effektiviteten.

9.2 Fejlkilder

Xfoil er ikke egnet til simulationer i ved transoniske og soniske hastigheder. Manglen pa cho-ckbølger er derfor en stor fejlkilde ved simulationer med et højt mach-tal.

En anden fejlkilde er xfoils præcision. Det mest optimale vil selvfølgelig være brugen af en fysiskvindtunnel, men det er ikke praktisk set muligt med en genetisk algoritme. I nogle tilfælde erxfoil ikke i stand til at udregne en præcis værdi for opdriften og luftmodstanden, specielt vedhøje indfaldsvinkler.

Nogle muterede vingeprofiler havde en tendens til at “snyde” xfoil, og fa programmet til at tro,at der næsten ikke var noget luftmodstand. Der var derfor tidspunkter hvor værdien af L/Dblev flere tusinde gange det fysisk mulige.

9.3 Mulige forbedringer til algoritmen

Alternativt til den konstante mutationsstørrelse og mutationschance er det muligt at variere demsom en funktion af generationen eller som en funktion mængden af udvikling. Det kan medføreen hurtig udvikling i starten, som senere finjusteres ved at sænke mutationsstørrelsen.

25

Page 27: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

En anden forbedring er brugen af en bedre evalueringsfunktion til rankeringen af individerne. Idenne undersøgelse bruger den genetiske algoritme kun en variabel - L/D-forholdet (og dermedsvæveevnen og brændstofforbrug), men hos virkelige flyvemaskiner er der andre faktorer, derspiller mindst lige sa stor en rolle. Det kan eksempelvis være mængden af opdrift under lettelse.Derudover kan værdien af L/D ved flere forskellige indfandsvinkler og hastigheder være en delaf en helhedsvurdering.

Det vil ogsa være oplagt at bruge matematiske modeller, der beregner L/D-forholdet af tredi-mensionelle vinger, og bruge disse værdier i evalueringsalgoritmen. Det vil sandsynligvis givemere realistiske resultater.

Selvom den nuværende genetiske algoritme fungerer, er det dog stadig muligt at finjustere nogleaf udviklingsparametrene som mutationer og krydsning af generne.

9.4 Anvendelse

En genetisk algoritme som den, der blev præsenteret i denne rapport kan helt klart anvendesindenfor ingeniørvidenskaben. Der har ogsa været historiske eksempler pa anvendelsen af dissefør i tiden, hvor problemet er ikke-lineært, blandt andet optimeringen af antenner hos NASA[7].

En genetisk algoritme er specielt brugbar i starten af optimeringsprocessen, hvorefter de resulte-rende løsninger bliver bearbejdet med andre værktøjer eller manuelt. Metoden kan i teorien letadapteres til problemer, der kan beskrives med en række parametre, tal eller koordinater. Et andetaerodynamisk eksempel kan være optimeringen af luftmodstanden hos biler. Algoritmen kansandsynligvis ogsa bruges til at optimere formen af produkter for at mindske materialeforbrug.

9.5 Sammenligning med andre optimeringsmetoder

Selvom den genetiske algoritme brugt i dette projekt fungerer, er den ikke optimal til optimeringenaf virkelige flyvinger. Da genetiske algoritmer kan betegnes som naive, forsøger de kun at optimerefor det fastsatte mal, uden at overveje potentielle problemer. Sammenlignet med andre inversedesign-metoder, er der klare ulemper ved denne genetiske algoritme. Før det første er den flerestørrelsesordener langsommere i forhold til nogle andre, og nogle af resultaterne er præget afoverfitting. Dog vinder den genetiske algoritme i simplicitet, da implementeringen af den ikkekræver avancerede forhandsviden om teoretisk aerodynamik.

10 Konklusion

I denne rapport er en metode til optimeringen af flyvinger gennem brugen af Bezierkurver oggenetiske algoritmer blevet præsenteret. Det lykkedes den genetiske algoritme at optimere vingenover flere hundrede generationer efter de opsatte kriterier, der i dette tilfælde er forholdet mellemopdriftskoefficienten og luftmodstandskoefficienten. Det er derfor teoretisk set muligt for etsvævefly at bruge de fundne flyvinger.

Dog er der stadig problemer med den benyttede metode, da algoritmen i øjeblikket kun optimererefter generelle todimensionelle flyvinger i stedet for en fysisk vinge med en bestemt længdeforhold.Alligevel viser resultaterne, at genetiske algoritmer kan bruges til at give et bud pa en muligløsning, selv af folk, der ikke tidligere har haft erfahring med manuelt design af flyvinger.

26

Page 28: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

Nogle af de genererede flyvinger, specielt ved lave Reynolds tal, minder om dem man naturligtfinder hos fugle.

Alt i alt synes jeg, at projektet lykkedes og at problemformuleringen er besvaret. Selvomalgoritmen ikke skaber de mest optimale vinger som muligt, er det alligevel en passende modelfor den naturlige evolution. Undersøgelsen har vist, at valget af mutationsparametrene er kritisk,da de direkte pavirker udviklingshastigheden og kvaliteten af resultatet. Endvidere kan denudviklede algoritme adapteres til andre parametriserede problemer, der kan evalueres numerisk.

27

Page 29: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

Litteratur

[1] Thor Paulli Andersen. Opdrift og modstand pa et vingeprofil. Aarhus Universitet. url:http://scitech.au.dk/fileadmin/site%5C files/science.au.dk/SRP-VejlIng/Opdrift%5C og%5C modstand%5C paa%5C et%5C vingeprofil%5C 01.pdf (senest bes. 23.02.2019).

[2] John David. Anderson. Introduction to flight. McGraw-Hill, 2000, ss. 178–182.

[3] David L. Darmofal. Introduction to Aerodynamics. Sep. 2018. url: https://www.edx.org/course/introduction-to-aerodynamics.

[4] Mark Drela. “XFOIL: An analysis and design system for low Reynolds number airfoils”. I:Low Reynolds number aerodynamics. Springer, 1989, ss. 1–12.

[5] Flyteknik: Aerodynamik. Jernindustriens forlag, 1984.

[6] Jacco M. Hoekstra m.fl. Introduction to Aeronautical Engineering. Sep. 2018. url: https://www.edx.org/course/introduction-to-aeronautical-engineering.

[7] Gregory Hornby m.fl. “Automated antenna design with evolutionary algorithms”. I: Space2006. 2006, s. 7242.

[8] Eastman N. Jacobs, Kenneth E. Ward og Robert M Pinkerton. The characteristics of 78related airfoil sections from tests in the variable-density wind tunnel. 1935. url: https://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/19930091108.pdf.

[9] Vance A Tucker og G Christian Parrott. “Aerodynamics of gliding flight in a falcon andother birds”. I: Journal of Experimental Biology 52.2 (1970), ss. 345–367.

[10] Patrick Winston. 13. Learning: Genetic Algorithms. Jan. 2014. url: https://www.youtube.com/watch?v=kHyNqSnzP8Y.

28

Page 30: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

A Generede flyvinger

A.1 Før forbedringer

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

−0.1

0

0.1

x

y

Gen 500

Figur 23: Vinge optimeret til Re = 1e6

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

−0.1

0

0.1

x

y

Gen 500

Figur 24: Vinge optimeret til Re = 1e7

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

−0.1

0

0.1

x

y

Gen 500

Figur 25: Vinge optimeret til Re = 1e8

29

Page 31: Genetisk optimering af todimensionelle vingepro ler...vinkel og konstant densitet, er den ideelle opdrift proportional med den kvadreret hastighed. Kraften kan beskrives med f˝lgende

Elvin Chen 2.B Odense Tekniske Gymnasium

A.2 Efter forbedringer

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1

−0.1

0

0.1

0.2

x

y

Gen 500

Figur 26: Vinge optimeret til Re = 1e6

−0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1

−0.1

0

0.1

0.2

x

y

Gen 500

Figur 27: Vinge optimeret til Re = 1e7

−0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1

−0.1

0

0.1

0.2

x

y

Gen 500

Figur 28: Vinge optimeret til Re = 1e8

30