Projekt 4 Optymalizacja profilu



Podobne dokumenty
Definicja pochodnej cząstkowej

Interpretacja krzywych sondowania elektrooporowego; zagadnienie niejednoznaczności interpretacji (program IX1D Interpex) Etapy wykonania:

Laboratorium przedmiotu Technika Cyfrowa

WYKŁAD 9 METODY ZMIENNEJ METRYKI

Optymalizacja systemów

ZADANIA OPTYMALIZCJI BEZ OGRANICZEŃ

Document: Exercise*02*-*manual /11/ :31---page1of8 INSTRUKCJA DO ĆWICZENIA NR 2

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Obliczenia iteracyjne

PROJEKTOWANIE I BUDOWA

DOBÓR ŚRODKÓW TRANSPORTOWYCH DLA GOSPODARSTWA PRZY POMOCY PROGRAMU AGREGAT - 2

A B. Modelowanie reakcji chemicznych: numeryczne rozwiązywanie równań na szybkość reakcji chemicznych B: 1. da dt. A v. v t

Zapisywanie algorytmów w języku programowania

1 Metody rozwiązywania równań nieliniowych. Postawienie problemu

Optymalizacja ciągła

Projekt 1 Wymiarowanie (sizing) analiza trendów, wyznaczenie konstrukcyjnej masy startowej.

Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 11,

Microsoft EXCEL SOLVER

OPŁYW PROFILU. Ciała opływane. profile lotnicze łopatki. Rys. 1. Podział ciał opływanych pod względem aerodynamicznym

Metody numeryczne Wykład 4

Laboratorium Programowanie Obrabiarek CNC. Nr H04

Systemy liczenia. 333= 3*100+3*10+3*1

Metody numeryczne I Równania nieliniowe

Informatyka I Lab 06, r.a. 2011/2012 prow. Sławomir Czarnecki. Zadania na laboratorium nr. 6

Zadania z rysowania i dopasowania funkcji

5. Administracja kontami uŝytkowników

P r a w d o p o d o b i eństwo Lekcja 1 Temat: Lekcja organizacyjna. Program. Kontrakt.

Modelowanie przy uŝyciu arkusza kalkulacyjnego

Maciej Piotr Jankowski

Konta uŝytkowników. Konta uŝytkowników dzielą się na trzy grupy: lokalne konta uŝytkowników, domenowe konta uŝytkowników, konta wbudowane

OPTYMALIZACJA ZBIORNIKA NA GAZ PŁYNNY LPG

Modelowanie w projektowaniu maszyn i procesów cz.5

OPTYMALIZACJA KONSTRUKCJI

Układy równań liniowych. Ax = b (1)

bo od managera wymaga się perfekcji

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Matematyka stosowana i metody numeryczne

Algorytm. a programowanie -

Projekt ZSWS. Instrukcja uŝytkowania narzędzia SAP Business Explorer Analyzer. 1 Uruchamianie programu i raportu. Tytuł: Strona: 1 z 31

Ćwiczenie nr 2: ZaleŜność okresu drgań wahadła od amplitudy

Statystyka hydrologiczna i prawdopodobieństwo zjawisk hydrologicznych.

//warunki początkowe m=500; T=30; c=0.4; t=linspace(0,t,m); y0=[-2.5;2.5];

Zmienne powłoki. Wywołanie wartości następuje poprzez umieszczenie przed nazwą zmiennej znaku dolara ($ZMIENNA), np. ZMIENNA=wartosc.

Materiały do laboratorium Przygotowanie Nowego Wyrobu dotyczące metody elementów skończonych (MES) Opracowała: dr inŝ.

Aproksymacja funkcji a regresja symboliczna

Technologie informacyjne - wykład 12 -

Współpraca Integry z programami zewnętrznymi

Rozdział 6 PROGRAMOWANIE WYPUKŁE I KWADRATOWE


Co to jest algorytm? przepis prowadzący do rozwiązania zadania, problemu,

Metody systemowe i decyzyjne w informatyce

Metoda określania pozycji wodnicy statków na podstawie pomiarów odległości statku od głowic laserowych

1. Znajdowanie miejsca zerowego funkcji metodą bisekcji.

Podstawowe informacje o obsłudze pliku z uprawnieniami licencja.txt

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1

MODUŁ INTERNETOWY dane statystyczne PUP

Optymalizacja ciągła

1. Podstawowe pojęcia

1 Równania nieliniowe

Technologia informacyjna

11. Blok ten jest blokiem: a. decyzyjnym b. końcowym c. operacyjnym

Szukanie rozwiązań funkcji uwikłanych (równań nieliniowych)

EKSPLOATACJA SYSTEMÓW TECHNICZNYCH - LAB. Wprowadzenie do zajęć

FUNKCJA KWADRATOWA. Zad 1 Przedstaw funkcję kwadratową w postaci ogólnej. Postać ogólna funkcji kwadratowej to: y = ax + bx + c;(

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

Metoda Karnaugh. B A BC A

Inteligencja obliczeniowa

Metody systemowe i decyzyjne w informatyce

PRZEWODNIK PO PRZEDMIOCIE

WYKORZYSTANIE NARZĘDZIA Solver DO ROZWIĄZYWANIA ZAGADNIENIA Problem przydziału

Rozdział 7 ZARZĄDZANIE PROJEKTAMI

Podstawy wykorzystania bibliotek DLL w skryptach oprogramowania InTouch

Poszukiwanie formy. 1) Dopuszczalne przemieszczenie pionowe dla kombinacji SGU Ciężar własny + L1 wynosi 40mm (1/500 rozpiętości)

KaŜdy z formularzy naleŝy podpiąć do usługi. Nazwa usługi moŝe pokrywać się z nazwą formularza, nie jest to jednak konieczne.

ROZWIĄZYWANIE RÓWNAŃ NIELINIOWYCH

Ćwiczenie 2 Numeryczna symulacja swobodnego spadku ciała w ośrodku lepkim (Instrukcja obsługi interfejsu użytkownika)

Opis postępowania przy eksportowaniu geometrii z systemu Unigraphics NX do pakietu PANUKL (ver. A)

Wstęp do metod numerycznych Zadania numeryczne 2016/17 1

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.

Instrukcja automatycznego tworzenia pozycji towarowych SAD na podstawie danych wczytywanych z plików zewnętrznych (XLS).

Metody systemowe i decyzyjne w informatyce

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.

Podczas dziedziczenia obiekt klasy pochodnej może być wskazywany przez wskaźnik typu klasy bazowej.

Rachunek prawdopodobieństwa projekt Ilustracja metody Monte Carlo obliczania całek oznaczonych

Programowanie celowe #1

ROZWIĄZYWANIE UKŁADÓW RÓWNAŃ NIELINIOWYCH PRZY POMOCY DODATKU SOLVER PROGRAMU MICROSOFT EXCEL. sin x2 (1)

K p. K o G o (s) METODY DOBORU NASTAW Metoda linii pierwiastkowych Metody analityczne Metoda linii pierwiastkowych

WSKAZÓWKI DO WYKONANIA SPRAWOZDANIA Z WYRÓWNAWCZYCH ZAJĘĆ LABORATORYJNYCH

SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD

Zakład Podstaw Konstrukcji i Maszyn Przepływowych. Politechnika Wrocławska. Wydział Mechaniczno-Energetyczny INSTRUKCJA

Egzamin z Metod Numerycznych ZSI, Egzamin, Gr. A

KADD Metoda najmniejszych kwadratów funkcje nieliniowe

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Iteracyjne rozwiązywanie równań

W naukach technicznych większość rozpatrywanych wielkości możemy zapisać w jednej z trzech postaci: skalara, wektora oraz tensora.

Ćw. nr 31. Wahadło fizyczne o regulowanej płaszczyźnie drgań - w.2

Ćwiczenie 1. Przygotowanie środowiska JAVA

Zastosowanie Excela w obliczeniach inżynierskich.

Podstawy MATLABA, cd.

WYZNACZANIE PRZEMIESZCZEŃ SOLDIS

Transkrypt:

Projekt 4 Optymalizacja profilu Niniejszy projekt obejmuje optymalizację profilu płata pod względem róŝnych kryteriów, zdefiniowanych podczas wykonywania projektu. Ćwiczenie wykonywane jest w pracowni komputerowej zakładu samolotów i śmigłowców. Terminy zajęć przedstawione zostaną na wykładzie z optymalizacji. 1 Wstęp Modelowym przykładem zastosowania optymalizacji numerycznej w lotnictwie jest optymalizacja właściwości aerodynamicznych profilu. Przedstawiając zastosowanie nowych metod optymalizacji numerycznej, najczęściej wykorzystywanym przypadkiem testowym, jest właśnie optymalizacja profilu. ZaleŜnie od typu samolotu i celu jaki inŝynier chce osiągnąć, profil lotniczy moŝna optymalizować na róŝne sposoby. Poprzez minimalizację oporu, maksymalizację doskonałości w warunkach przelotowych, maksymalizację współczynnik siły nośnej podczas manewru ciasnego zakrętu, itd. Zawsze naleŝy pamiętać, Ŝe poprawa jednego parametru, odbywa się kosztem innego. W ten sposób maksymalizując współczynnik siły nośnej wzrośnie moment pochylający, a co za tym idzie potrzebne siły na usterzeniu poziomym, do zachowania równowagi samolotu i wzrost oporu całej konfiguracji. Świadomy projektant musi krytycznie podchodzić do koncepcji optymalizacji, którą wstępnie nakreślił. Musi zastanowić się, czy wybrana funkcja celu jest najlepszą z moŝliwych. Czy postawione przez projektanta zadanie optymalizacyjne daje rzeczywiste wyniki. Czy technologia wykonania, którą dysponuje jest wystarczająca do zrealizowania projektu i czy koszty realizacji nie są zbyt wysokie. 2 Opis programu i algorytmu optymalizującego Student otrzymuje do dyspozycji kod źródłowy programu OptoFoil, w celu lepszego zrozumienia zasad działania oprogramowania bazującego na gradientowych metodach optymalizacji numerycznej. Program został napisany w języku C++ i skompilowany kompilatorem gcc, w środowisku graficznym Dev-cpp. Środowisko Dev-cpp jest łatwe do opanowania i bardzo podobne do środowiska graficznego Visual Studio, znanego z ćwiczeń informatyki. Autor starał się, by kod był jak najprostszy i przejrzysty, a oprogramowanie potrzebne do kompilacji darmowe i ogólnodostępne. Algorytm zawiera wszystkie niezbędne moduły wykorzystywane w profesjonalnych programach do optymalizacji. Program moŝna dowolnie modyfikować i rozwijać, w powiązaniu z oprogramowaniem dedykowanym do analizy, w którym zaimplementowano moŝliwość wykorzystania skryptów i makr. Przykładowo: Xfoil, AVL, Panukl, SDSA, Calculix, Fluent, Ansys, itd... Metody gradientowe naleŝą do szerszej grupy kierunkowych metod poszukiwania minimum. W metodach kierunkowych wyznacza się punkt startowy, przyjęty arbitralnie, lub na podstawie jakichś przesłanek: wnioskując z analizy trendów, na podstawie doświadczenia inŝynierskiego, na podstawie wstępnych obliczeń. Im lepiej zostanie dobrany punkt startowy tym większe będzie prawdopodobieństwo znalezienia globalnego minimum, a obliczenia będą trwały krócej. Tak postawione zadanie, dla dwóch zmiennych na płaszczyźnie, z nakreślonymi izoliniami wartości funkcji celu i zaznaczonym minimum, pokazuje Rys. 1. W rzeczywistości projektant nie wie jak wyglądają izolinie wartości funkcji celu, ani gdzie znajduje się minimum, gdyŝ wtedy nie potrzebna byłaby optymalizacja. W którym kierunku naleŝałoby teraz się przemieścić (zmienić zmienne decyzyjne), aby znaleźć minimum Rys. 2. Jacek Mieloszyk Optymalizacja w projektowaniu... : Optymalizacja profilu 1/10

Rys. 1 Izolinie wartości funkcji celu, z zaznaczonym minimum i punktem startowym. Rys. 2 Poszukiwanie kierunku optymalizacji Wykonuje się małe kroki próbne, na podstawie których liczone są wartości funkcji celu, po wykonaniu kroku. Następnie, w zaleŝności od zaimplementowanego algorytmu poszukiwania kierunku, ustalany jest kierunek zmian Rys. 3. Metody zerowego rzędu (bezgradientowe), korzystają jedynie z informacji o wartościach funkcji celu po wykonaniu kroków próbnych. Metody gradientowe pierwszego rzędu wyliczają pochodne kierunkowe pierwszego stopnia, dające informację o szybkości spadku wartości funkcji celu w danym kierunku. Natomiast metody gradientowe drugiego rzędu liczą równieŝ pochodne kierunkowe drugiego stopnia co daje informację o charakterystyce spadku wartości funkcji celu. Więcej informacji o funkcji celu powoduje szybsze zbieganie się algorytmu optymalizującego, ale zdobycie informacji moŝe być bardzo kosztowne obliczeniowo. Wyliczenie numerycznych pochodnych kierunkowych stopnia pierwszego wymaga wywołania w programie funkcji celu dla kaŝdej zmiennej, rezultatem będzie wektor pochodnych kierunkowych. Chcąc uzyskać wartości drugiej pochodnej naleŝałoby wywołać funkcję celu jeszcze wielokrotnie, gdyŝ rezultatem jest symetryczna macierz pochodnych drugiego rzędu, łącząca zaleŝności kaŝdej zmiennej z kaŝdą. Istnieją metody typu adjoint, uzyskujące informację o gradientach funkcji celu w trakcie pojedynczej analizy zagadnienia i nie zaleŝą od ilości zmiennych decyzyjnych. Jacek Mieloszyk Optymalizacja w projektowaniu... : Optymalizacja profilu 2/10

Niestety metoda adjoint wymaga bezpośredniej integracji z kodem źródłowym do analizy numerycznej. Rys. 3 Wyznaczanie kierunku poszukiwań minimum funkcji celu. Mając wyznaczony kierunek, w którym chcemy poszukiwać minimum, naleŝy podjąć decyzję jak duŝy wykonać krok w wyznaczonym kierunku. Zbyt krótkie kroki spowodują, Ŝe algorytm będzie się zbiegał bardzo długo, za długie, Ŝe moŝna ominąć minimum, które załoŝyliśmy, iŝ jest w pobliŝu punktu startowego. Do określenia optymalnej długości kroku przeprowadza się poszukiwanie jednokierunkowe. Zakładamy, Ŝe nowe wartości zmiennych decyzyjnych będą wynikały ze wzoru (1), gdzie p k jest wyznaczonym uprzednio wektorem kierunku, x k to wektor zmiennych decyzyjnych, α k poszukiwany skalar wzmocnienia, które definiuje długość kroku, oraz indeks k mówiący o aktualnie wykonywanej iteracji. x = x + p k + 1 k α k k (1) Nowe wartości zmiennych decyzyjnych wyliczane są poprzez dodanie do starych zmiennych decyzyjnych iloczynu wektora kierunku zmian p k i wzmocnienia α k. W ten sposób zakładamy, Ŝe nowe wartości zmiennych decyzyjnych zaleŝą jedynie od wzmocnienia α k, gdyŝ p k zostało juŝ jednoznacznie określone. Co za tym idzie funkcja celu jest funkcją jednej zmiennej, dlatego nazywamy ten proces poszukiwaniem w jednym kierunku Rys. 4. W celu jak najszybszego znalezienia optymalnego kroku, zmiany funkcji celu, w zaleŝności od α k, aproksymuje się krzywą drugiego, lub nawet trzeciego stopnia i znajduje się jej minimum. Procedury poszukiwania optymalnego kroku są jednymi z najbardziej zagnieŝdŝonych w kodzie programu i często powtarzanych, dlatego muszą być bardzo efektywne. Jacek Mieloszyk Optymalizacja w projektowaniu... : Optymalizacja profilu 3/10

Rys. 4 Wyznaczanie optymalnego kroku Trzeba zapewnić zmniejszenie wartości funkcja celu w kaŝdej iteracji, a dodatkowo, Ŝe algorytm będzie się szybko zbiegał. W tym celu stosuje się warunki (Armijo, Wolfa), które po spełnieniu zatwierdzają ostatni wykonywany krok z próbnym α k. Zmienne decyzyjne są uaktualniane według wzoru (1) i wyliczana jest nowa wartość funkcji celu. W ten sposób otrzymany został nowy punkt startowy Rys. 5, do którego ponownie stosuje się opisywaną procedurę. Rys. 5 Wyznaczenie nowego punktu startowego 4 Nakładanie ograniczeń na funkcję celu Optymalizacja w zastosowaniach inŝynierskich często wymaga nałoŝenia ograniczeń, w celu otrzymania poprawnych i moŝliwych do zrealizowania rozwiązań. Ograniczenia moŝna wprowadzić w dwojaki sposób, bezpośrednio lub przy pomocy funkcji kary. W naszym przykładzie zajmiemy się funkcją kary, która jest dość intuicyjna w zastosowaniu. Polega na zastąpieniu pierwotnej funkcji celu nową funkcją, która jest sumą pierwotnej funkcji celu i wartości funkcji kary (2). JeŜeli ograniczenia nie są naruszone, to wartość funkcji celu wynosi Jacek Mieloszyk Optymalizacja w projektowaniu... : Optymalizacja profilu 4/10

zero. Takie podejście sprawia, Ŝe zadanie z ograniczeniami transformowane jest do zadania bez ograniczeń z nową funkcją celu. F + CELU NEW = FCELU FKARA (2) MoŜna dokonać generalnego podziału na metody funkcji kary wewnętrzne i zewnętrzne. Wewnętrzne funkcje kary nigdy nie przekraczają załoŝonej granicy i jednocześnie nie pozwalają zbliŝyć się do granicy nawet jeśli minimum znajduje się na niej. Dodatkowo tego rodzaju funkcje kary najczęściej realizowane są przez funkcje logarytmiczne, co moŝe skutkować nieciągłością pochodnych nowej funkcji celu na granicy i problemy ze zbieŝnością. Zewnętrzna funkcja kary najczęściej realizowana jest poprzez funkcję kwadratową z zachowaniem ciągłości pierwszej pochodnej na granicy, innymi słowy funkcja kary jest styczna do pierwotnej funkcji celu. Nadal mogą jednak występować nieciągłości pochodnych wyŝszego rzędu i stwarzać problemy w metodach wykorzystujących drugie pochodne, na przykład w klasycznej metodzie Newtona. Wadą funkcji zewnętrznych jest to, Ŝe najczęściej ograniczenia nieznacznie są przekraczane, jeśli minimum leŝy blisko granicy Rys. 6. Rys. 6 Zewnętrzna i wewnętrzna funkcja kary Zastosowanie klasycznej zewnętrznej kwadratowej funkcji celu, dla zadania zdefiniowanego jako (3), wyraŝa wzór (4). F CELU min F CELU dla x > g (3) = F + 1 c 2 ( ) 2 x NEW CELU, gdzie c = max[ g x,0] (4) µ Naruszanie granic moŝna zmniejszyć, ale wiąŝe się to z narastającymi problemami z ciągłością funkcji i ze zbieŝnością. Parametr µ we wzorze (4) kontroluje promień styczności funkcji kary do funkcji celu Rys. 7. Im mniejsze µ tym dokładniej zdefiniowana granica i większe problemy ze zbieŝnością, a im większe µ tym bardziej rozmyta granica i mniej problemów ze zbieŝnością algorytmu optymalizacji. Jacek Mieloszyk Optymalizacja w projektowaniu... : Optymalizacja profilu 5/10

µ 3 µ 3 < µ 2 < µ 1 µ 2 µ 1 Rys. 7 Definicja obszaru rozwiązań W bardziej wyrafinowanych algorytmach optymalizacji z ograniczeniami, wykorzystuje się metodę funkcji kary ze współczynnikami Lagrange a, która przy pomocy mnoŝników Lagrange a, dostosowuje odpowiednio parametr µ, w kolejnych iteracjach. Początkowo µ ma duŝą wartość co zapewnia brak problemów ze zbieŝnością. W miarę jak iteracja postępuje i zbliŝamy się do minimum kroki algorytmu są coraz mniejsze. MoŜna więc zmniejszyć parametr µ zwiększając dokładność wyznaczania granicy, bez naraŝania się na problemy ze zbieŝnością. Metoda współczynników Lagrange a sama odpowiednio dostosowuje wartość parametru µ na podstawie historii iteracji. Ostatnią waŝną sprawą jest kryterium stopu, tzn. momentu w którym uznaje się, Ŝe funkcja celu została wystarczająco dobrze zoptymalizowana, lub dalsze zmiany są tak powolne, iŝ ponosimy zbyt duŝe koszty obliczeniowe. Kryterium stopu moŝna zdefiniować poprzez z góry określoną liczbę iteracji, lub warunki matematyczne, na przykład poprzez brak zmian funkcji celu, lub zerowanie się pochodnych kierunkowych. Schemat na Rys. 8 przedstawia kompletny algorytm optymalizacji zastosowany w programie OptoFoil. 5 Przebieg ćwiczenia - zadania do wykonania Student ma do dyspozycji kod źródłowy programu OptoFoil, z którym musi się zapoznać, a następnie odpowiednio modyfikować w trakcie ćwiczenia, dostosowując do zadań jakie ma do wykonania. Dzięki dostępnemu kodowi źródłowemu, ma moŝliwość zapoznania się z prostym algorytmem optymalizacyjnym, który moŝe być wykorzystany do praktycznych zadań. Ćwiczenie polegające na optymalizacji profilu lotniczego pod róŝnymi względami. Jacek Mieloszyk Optymalizacja w projektowaniu... : Optymalizacja profilu 6/10

Rys. 8 Schemat optymalizacyjny Projekt składa się z pięciu etapów. W pierwszym z nich student uczy się zasady na jakiej działa program OptoFoil pisząc skrypt. W pozostałych czterech student musi przeprowadzić optymalizację profilu uwzględniając cel optymalizacji. Następnie opracować wyniki i odpowiedzieć na pytania zawarte w opisie etapów ćwiczenia projektu. 5.1 Optymalizacja profilu zmienne decyzyjne Zmienne decyzyjne do optymalizacji profilu zostały zdefiniowane jak na Rys. 9. Rysunek ten w górnej części przedstawia rozkład grubości i krzywiznę szkieletowej dla przykładowego Jacek Mieloszyk Optymalizacja w projektowaniu... : Optymalizacja profilu 7/10

profilu NACA 23012, co w połączeniu daje rzeczywisty profil zobrazowany w dolnej części rysunku. Zmienne decyzyjne są to odpowiednio: X[0] maksymalna grubość profilu X[1] maksymalna strzałka ugięcia profilu X[2] połoŝenie maksymalnej grubości profilu X[3] połoŝenie maksymalnej strzałki ugięcia dla profilu Rys. 9 Zmienne decyzyjne dla optymalizacji profilu 5.2 Skrypt obsługujący Xfoil-a Utwórz nowy katalog XfoilScript i przekopiuj do niego program Xfoil. Następnie w nowym katalogu utwórz plik tekstowy z rozszerzeniem skryptu XfoilScript.cmd. Zapisz w pliku linijkę kodu: xfoil < xfoil_input.txt > xfoil_log.txt Ten krótki skrypt uruchamia Xfoil-a i wczytuje plik wsadowy xfoil_input.txt, a następnie tworzy drugi plik logu xfoil_log.txt pochodzący z Xfoil-a. Plik wsadowy to zbiór poleceń do wykonania dla programu Xfoil, który wygląda dokładnie tak jakbyśmy korzystali z programu w sposób interaktywny i zapisywali kaŝdą zadaną komendę. Utwórz taki plik wsadowy, metodą prób i błędów, korzystając z logu Xfoil-a, sprawdzając co poszło nie tak. Ostatecznie rezultatem dobrze działającego skryptu powinny być wyniki analizy aerodynamicznej dla kąta natarcia α = 3deg i Re = 200000 zapisane w pliku tekstowym. 5.3 Przebieg ćwiczenia Ćwiczenie ma na celu przedstawienie sposobów optymalizacji profilu płata samolotu oraz pokazanie róŝnic w rozwiązaniach wynikających z definicji celu optymalizacji. Ćwiczenie składa się z czterech etapów 1) Uzyskania największej doskonałości profilu L/D MAX, 2) Minimalizacji współczynnika oporu i momentu pochylającego dla załoŝonego współczynnika siły nośnej, 3) Maksymalizacji współczynnika siły nośnej i minimalizacja momentu pochylającego dla stałego kąta natarcia, 4) Minimalizacji współczynnika oporu dla stałego współczynnika siły nośnej. Jacek Mieloszyk Optymalizacja w projektowaniu... : Optymalizacja profilu 8/10

1. Optymalizacja doskonałości profilu NACA 23012 Otwórz plik OptoFoil.cpp. Uruchomione zostanie środowisko graficzne Dev-cpp. W pliku znajduje się funkcja main i algorytmy optymalizujące, oraz algorytm funkcji celu, wywoływany w odpowiednich momentach. Procedury funkcji celu generują plik wsadowy dla programu Xfoil z odpowiednio modyfikowanymi parametrami i zmiennymi. Plik wsadowy jest zapisywany, a następnie uruchomiony zostaje program Xfoil, poprzez proces systemu Windows, na którego zakończenie czeka OptoFoil. Kiedy Xfoil skończy obliczenia nadpisuje plik z wynikami i zamyka się. OptoFoil wczytuje nowe wyniki zwracając wartość funkcji celu. UŜytkownik moŝe zmodyfikować funkcję celu, która jest zdefiniowana w ostatniej linijce funkcji double Xfoil(double *X). Początkowe ustawienia programu (dla pierwszego etapu ćwiczenia) nie powinny wymagać modyfikacji. Analizowany profil: NACA23012 Wektor zmiennych wejściowych: X = {0.12; 0.0184; 0.3; 0.149} Kąt natarcia dla profilu: α = 3deg Funkcja celu: maksymalizacja doskonałości, C D /C L MAX NaleŜy skompilować i uruchomić program. Wynikiem jest program OptoFoil.exe. Pojawiły się równieŝ pliki generowane przez OptoFoil Log.txt z zapisem przebiegu optymalizacji, Results.txt z wynikami optymalizacji po kaŝdej iteracji, Xfoil.txt z automatycznie wygenerowanym skryptem, XfoilLog.txt z logiem programu Xfoil. Proszę otworzyć pliki Log.txt i Results.txt i prześledzić proces optymalizacji. Odpowiedz na pytania: Jakie zmiany zaszły w geometrii profilu? - Porównaj geometrię na rysunku. Wykonaj obliczenia charakterystyk profilów uŝywając Xfoil-a i przedstaw na wykresie. Czym róŝnią się charakterystyki, jakie wnioski moŝesz wyciągnąć? 2. Minimalizacja współczynników C D i C M profilu NACA 2412 dla stałego C L = 0.6 Kolejne zadanie/etap polega na zminimalizowaniu oporu i momentu pochylającego profilu dla stałej wartości współczynnika siły nośnej C L = 0.6. Uruchom program Xfoil wygeneruj profil NACA2412 i sprawdź jakie powinny być początkowe wartości zmiennych geometrycznych definiujących profil, zaktualizuj je w pliku OptoFoil.cpp. W pliku Xfoil.cpp zmodyfikuj nazwę analizowanego profilu, zmień polecenie definicji kąta natarcia a na współczynnik siły nośnej cl. Zdefiniuj nową funkcję celu. Kiedy optymalizacja się zakończy otwórz plik z wynikami. Jak zachowują się zmienne decyzyjne? Niektóre z nich mają mniejszy wpływ na wynik. Wyłącz je i przeprowadź optymalizację ponownie. Odpowiedz na pytania: Jak bardzo zmienił się wynik końcowy po wyłączeniu zmiennych, czy moŝne z tego powodu odnieść jakieś korzyści? Co stało się z momentem pochylającym profilu i geometrią profilu? 3. Maksymalizacja współczynnika C L i minimalizacja współczynnika C M dla stałego kąta natarcia α = 3 deg dla profilu NACA 2412 Cofnij zmiany dotyczące ograniczenia ilości zmiennych. Zmodyfikuj odpowiednio funkcję celu. Zmień polecenie definicji współczynnik siły nośnej cl, na kąt natarcia a dla 3 stopni. Jacek Mieloszyk Optymalizacja w projektowaniu... : Optymalizacja profilu 9/10

Odpowiedzieć na pytania: Jak bardzo zmienił się współczynnik siły nośnej i momentu pochylającego. Czy moŝna jakoś regulować, czy waŝniejsze jest uzyskiwanie duŝych współczynników siły nośnej, czy minimalizowanie momentu pochylającego? Zaproponuj jakieś rozwiązanie. Jak wygląda rozkład ciśnienia na profilu i geometria profilu po optymalizacji, pokaŝ na rysunku. 4. Minimalizacja współczynnika oporu profilu NACA 0012 dla stałej wartości współczynnika siły nośnej C L = 0.1 Wykonaj zadanie analogicznie do poprzednich. Ustaw nowe wartości początkowe zmiennych decyzyjnych, analizowany profil, odpowiedni współczynnik siły nośnej i zmodyfikowaną funkcję celu. Zredukuj ilość zmiennych jedynie do grubości. Prawdopodobnie w tej chwili nie są otrzymywane satysfakcjonujące rezultaty, czy w pliku Results.txt zauwaŝasz coś charakterystycznego? Spróbuj rozwiązać ten problem. Teraz algorytm powinien się juŝ dobrze zbiegać, ale czy rezultaty z inŝynierskiego punktu widzenia Cię satysfakcjonują? Grubość profilu jest bardzo mała, dopisz funkcję kary w pliku Xfoil.cpp, tak Ŝeby grubość profilu były nie mniejsza niŝ 8%. Odpowiedzieć na pytania: Jaką grubość ma profil bez zastosowania ograniczeń. Opisać wpływ ograniczenia dla róŝnych µ. 6 Sprawozdanie W sprawozdaniu z projektu nr 4 naleŝy: Przedstawić wyniki optymalizacji dla poszczególnych etapów ćwiczenia, Odpowiedzieć na pytania postawione przy kaŝdym z etapów ćwiczenia, Przedstawić własne wnioski z ćwiczenia Sprawozdanie z ćwiczenia powinno zostać zwrócone w terminie maksymalnie dwóch tygodni od wykonania ćwiczenia. Literatura: 1. H.C. Skip Smith, The Illustrated Guide to Aerodynamics, TAB Books, McGraw- Hill, Inc., 1992 2. J. Nocedal, S. J. Wright, Numerical Optimization, Springer 1999 3. Numerical optimization techniques for engineering design Jacek Mieloszyk Optymalizacja w projektowaniu... : Optymalizacja profilu 10/10