Anna Bekus - Optymalizacja kształtu kolumny za pomocą algorytmu
Transkrypt
Anna Bekus - Optymalizacja kształtu kolumny za pomocą algorytmu
Optymalizacja kształtu kolumny za pomoca˛ algorytmu symulowanego wyżarzania Anna Bekus Wydział Inżynierii Mechanicznej i Informatyki Kierunek Informatyka, Rok III [email protected] Streszczenie Układ smukły poddany działaniu obcia˛żenia eulerowskiego traci stateczność gdy siła osiowa przekroczy wartość zwana˛ siła˛ krytyczna.˛ Optymalizacja kształtu kolumny ma na celu osiagni˛ ˛ ecie jak najwi˛ekszej wartości siły krytycznej. W tym celu układ dzielony jest na określona˛ liczb˛e cz˛eści, a optymalizacja kształtu dokonywana jest poprzez dobór średnic tych cz˛eści. Siła krytyczna wyznaczana jest z układu równań wynikajacego ˛ z warunków brzegowych odnośnie zamocowania oraz warunków brzegowych w punktach podziału układu. Równanie przest˛epne na wartość obcia˛żenia krytycznego uzyskuje si˛e poprzez przyrównanie do zera wyznacznika macierzy współczynników układu równań. Siła krytyczna jest funkcja˛ wielu zmiennych. Do znalezienia maksimum tej funkcji wykorzystany został zmodyfikowany algorytm symulowanego wyżarzania. Zastosowany w algorytmie generator sasiedztwa ˛ zmienia swoje działanie razem z funkcja˛ temperatury. 1 Wst˛ep Układ smukły, poddany działaniu odpowiednio dużej siły, nazywanej siła˛ krytyczna,˛ traci stateczność i ulega zniszczeniu. Celem niniejszej pracy jest optymalizacja kształtu kolumny w ten sposób, aby wartość siły krytycznej dla danego przypadku obcia˛żenia była jak najwi˛eksza. Ograniczenia nałożone na kształt układu to: 1. stała długość kolumny (łaczna ˛ długość wszystkich elementów opisujacych ˛ kształt); 2. stała obj˛etość kolumny (sumaryczna obj˛etość wszystkich elementów opisujacych ˛ kształt); 3. moduł Young’a taki sam dla wszystkich elementów układu; Zagadnienie optymalizacji kształtu kolumn poddanych działaniu obcia˛żenia eulerowskiego jest tematem pracy Gajewskiego i Życzkowskiego (1988r). Optymalizacj˛e kształtu kolumn poddanych działaniu obcia˛żenia śledzacego ˛ przedstawiono w publikacjach: Bogacz[2], Imiełowski i Mahrenholtz[5], Tada et al.[9], Hanaoka i Washizu[4]. W pracy [3] Bogacz et al. przedstawili wyniki badań teoretycznych i obliczeń numerycznych odnośnie do optymalizacji kształtu smukłej struktury poddanej działaniu obcia˛żenia eulerowskiego, śledzacego ˛ oraz uogólnionego z siła˛ skierowana˛ do bieguna dodatniego. 1 W niniejszej pracy opisuje si˛e metod˛e optymalizacji układu smukłego za pomoca˛ algorytmu symulowanego wyżarzania, biorac ˛ pod uwag˛e kolumn˛e poddana˛ działaniu obcia˛żenia eulerowskiego. Rozpatruje si˛e dwa warianty układów różniace ˛ si˛e warunkami brzegowyx x mi odnośnie do punktu zamocowania (zamocowanie przegubowe, sztywne utwierdzenie). Sposób zamocowania i obcia˛żenia rozpatrywanej kolumny, oraz kształt ugi˛etych osi pr˛etów przedstawiono na Rys. 1 (Por. [10]). Przyj˛eta w niniejszej pracy metoda opisu zaW(x,t) W(x,t) gadnienia, polega na podziale kolumny na b) a) mniejsze elementy, które opisywane sa˛ przez długość i średnic˛e. W zastosowanej tutaj metoRys. 1: Kolumny obcia˛żone siła˛ Eu- dzie wszystkie elementy sa˛ tej samej długości. lera. a) przegub-przegub, b) przegub- Optymalizacja kształtu sprowadza si˛e do dobosztywne ru średnic poszczególnych elementów układu, dla których otrzymuje si˛e maksymalna˛ wartość obcia˛żenia krytycznego. Takie rozwiazanie ˛ sprawia, że poszukuje si˛e globalnego maksimum funkcji siły krytycznej, która jest funkcja˛ wielu zmiennych (średnice poszczególnych elementów). P P Pmax = f (d0 , d2 , ..., dn−1 ) (1) 2 Model matematyczny układu Rozważane w pracy układy smukłe (kolumny), to układy, których zniszczenie nast˛epuje w wyniku utraty stateczności, a nie w wyniku wyt˛eżenia materiału. Kolumna poddana obcia˛żeniu eulerowskiemu traci stateczność poprzez wyboczenie (układ dywergencyjny), gdy siła osiowa przekroczy wartość zwana˛ siła˛ krytyczna.˛ Zagadnienie stateczności rozważanych kolumn opisano w pracy L. Tomskiego et al.[10], w której na podstawie metody energetycznej, polegajacej ˛ na poszukiwaniu obcia˛żenia, przy którym energia potencjalna przestaje być określona dodatnio, wyznaczane sa˛ zależności odnośnie do energii układu, równań ruchu i ich rozwiazań ˛ oraz warunków brzegowych. Analizowana w pracy kolumna dzielona jest na mniejsze elementy, opisane parametrami średnic(di ) i długości (li ). Wszystkie elementy maja˛ przekrój kołowy. Równania opisujace ˛ warunki brzegowe oraz warunki ciagłości ˛ pomi˛edzy tymi elementami tworza˛ układ równań z parametrem. Parametrem tym jest siła wewn˛etrzna w i-tym elemencie kolumny. Ze wzgl˛edu na to, że równanie różniczkowe opisujace ˛ ruch pr˛eta układu jest równaniem 4 rz˛edu, powstała w ten sposób liczba równań jest 4 razy wi˛eksza od liczby elementów, na które dzielona jest kolumna. Siła krytyczna jest wyznaczana poprzez przyrównanie do zera wyznacznika macierzy powstałej ze współczynników układu równań. Rozwiazaniem ˛ jest najmniejsza dodatnia wartość parametru, dla której wyznacznik tej macierzy jest równy zero. Wyznaczenie wartości tego parametru w sposób bezpośredni (szczególnie dla dużych macierzy) jest zadaniem bardzo trudnym. Do rozwiazania ˛ tego problemu zastosowana 2 została metoda iteracyjna. W pierwszym kroku obliczana jest wartość wyznacznika dla zadanej wartości poczatkowej ˛ siły. Nast˛epnie obliczane sa˛ wartości wyznacznika dla kolejnych wartości parametru. Za każdym razem siła zwi˛ekszana jest o 50%. Operacja ta powtarzana jest dopóki wartość wyznacznika nie zmieni swojego znaku. W ten sposób uzyskuje si˛e przedział izolacji pierwiastka. Dalsze obliczenia prowadzone sa˛ metoda˛ bisekcji, aż do uzyskania oczekiwanej dokładności. Zwi˛ekszanie siły o 50% (w poczatkowej ˛ fazie obliczeń) teoretycznie może spowodować "przeskoczenie" pierwszego, najmniejszego co do wartości miejsca zerowego. Przypadek taki może zajść gdy wartość drugiego miejsca zerowego jest mniejsza niż 150% pierwszego (poszukiwanego) miejsca zerowego. W przeprowadzonych obliczeniach, dla dużej liczby losowych danych opisujacych ˛ geometri˛e kolumny, sytuacja taka nie zaistniała ani razu. Pozwala to wnioskować, iż tak prowadzone obliczenia daja˛ wartość poprawna.˛ 3 Symulowane wyżarzanie Zastosowana w niniejszej pracy metoda symulowanego wyżarzania, to algorytm heurystyczny należacy ˛ do klasy algorytmów niedeterministycznych[8]. Metoda ta jest modyfikacja˛ algorytmu wspinaczki ("hill climbing")[7]. Nowe rozwiazanie, ˛ wybrane poprzez modyfikacj˛e rozwiazania ˛ roboczego, jest akceptowane zawsze gdy poprawia wartość funkcji oceny rozwiazania ˛ określonej wzorem (1). W przeciwnym przypadku akceptacja nast˛epuje z pewnym prawdopodobieństwem równym: pa = e −∆ f T (2) gdzie: ∆ f jest różnica˛ funkcji oceny T - parametr określajacy ˛ temperatur˛e układu Algorytm symulowanego wyżarzania wymaga zdefiniowania czterech elementów. Sa˛ nimi: • poczatkowa ˛ reprezentacja rozwiazania ˛ • generator losowych zmian w rozwiazaniu ˛ (funkcja sasiedztwa) ˛ • funkcja oceny (funkcja kosztu) • schemat chłodzenia (annealing schedule) Rdzeniem algorytmu jest procedura nazywana Metropolis, która symuluje proces wyżarzania w danej temperaturze T[8]. W procedurze Metropolis wykonywana jest, określona przez parametr M, liczba iteracji dla tej samej wartości temperatury T. Nast˛epnie temperatura jest zmniejszana zgodnie z przyj˛etym schematem chłodzenia. Liczba iteracji w kolejnych wywołaniach procedury Metropolis (M) jest zwi˛ekszana. Przedstwawiona w pracy zmodyfikowana metoda symulowanego wyżarzania, poza zmiana˛ parametrów T i M, zakłada dodatkowo modyfikacj˛e działania funkcji generujacej ˛ sasiednie ˛ rozwiazanie. ˛ W klasycznym algorytmie symulowanego wyżarzania nowe rozwiazanie ˛ jest generowane za pomoca˛ standardowej funkcji[6]. W niniejszej pracy funkcja ta zmienia swoje działanie wraz ze zmiana˛ temperatury. Modyfikacji ulega współczynnik zmiany obj˛etości (x) oraz maksymalna odległości zmienianych elementów. Parametry te, podobnie jak T i M, sa˛ modyfikowane po każdym wykonaniu procedury Metropolis. 3 2800 Si³a krytyczna [N] Kolejna˛ wprowadzona˛ mody2600 fikacja˛ algorytmu symulowanego wyżarzania jest, dokonywana ra2400 zem ze zmiana˛ wartości parametrów, zmiana liczby elemen2200 tów wchodzacych ˛ w skład układu smukłego. Każdy element kolum2000 ny dzielony jest na dwa elementy 0 10 20 30 o długościach równych połowie Czas [s] długości pierwotnego elementu. bez stosowania podzia u elementu Średnice obu elementów sa˛ rówz zastosowanym podzia em emelementu ne średnicy pierwotnego elementu. Podział taki wykonywany jest Rys. 2: Wzrost siły krytycznej po każdym wykonaniu Metropolis, jednak tylko wtedy gdy długość elementu (li ) jest wi˛eksza od zadanej długości minimalnej. W rozważanych w pracy przykładach kolumn pierwotnie zastosowano podział układu na 2 elementy. Wprowadzenie takiej modyfikacji algorytmu spowodowało znaczne przyspieszenie procesu optymalizacji kształtu (Rys. 2). Dzi˛eki pierwotnemu podziałowi na niewielka˛ liczb˛e elementów możliwe jest szybkie ustalenie zgrubnego kształtu kolumny. W końcowej fazie obliczeń, kiedy długość elementów jest mała, niewielkie zmiany kształtu powoduja˛ jego wygładzenie. 4 Funkcja sasiedztwa ˛ Bardzo istotnym elementem algorytmu symulowanego wyżarzania jest losowy wybór nowego, sasiedniego ˛ rozwiazania. ˛ Zastosowana metoda wyboru nowego kształtu polega na "przeniesieniu" pewnego procentu obj˛etości z losowo wybranego elementu do innego elementu kolumny (wybranego również w sposób losowy). Odbywa si˛e to przez zmian˛e średnic wybranych elementów. Długości pozostaja˛ nieznienione. Nowe średnice elementów obliczane sa˛ ze wzorów: p di′ = (1 − x)di (3) p ′ d j = d j + xdi (4) i, j ∈ [0..n − 1] - numery elementów, których średnice sa˛ zmieniane x ∈ (0..1) - współczynnik zmiany obj˛etości Warto zauważyć, że po "przeniesieniu" np. 5% obj˛etości z elementu A do elementu B, a nast˛epnie 5% z elementu B do elementu A uzyskany kształt nie zawsze b˛edzie taki sam jak przed wykonaniem tych operacji. Sprawia to, że algorytm nie może zrobić "kroku wstecz". 4.1 Zmienna funkcja wyboru sasiedztwa ˛ Zastosowana funkcja wyboru sasiedniego ˛ rozwiazania ˛ zmienia swoje działanie razem z funkcja˛ temperatury. Zmianie podlegaja˛ dwa parametry: 4 1. Maksymalna dopuszczalna odległość pomi˛edzy elementami, których średnice sa˛ zmieniane 2. Współczynnik zmiany obj˛etości (określajacy ˛ jaka cz˛eść obj˛etości danego elementu zostanie przeniesiona do innego elementu) Element, którego obj˛etość jest zwi˛ekszana, jest dowolnym, wybranym w sposób losowy elementem kolumny. Element którego obj˛etość jest zmniejszana jest również wybierany w sposób losowy, lecz w tym przypadku na wybór narzucone sa˛ pewne ograniczenia. W poczatkowej ˛ fazie optymalizacji wybór tego elementu może być zupełnie dowolny, natomiast w końcowej fazie możliwy jest wybór tylko jednego z dwóch elementów sasia˛ dujacych ˛ z elementem którego obj˛etość jest zwi˛ekszana. Drugi zmienny parametr, współczynnik zmiany obj˛etości, na poczatku ˛ obliczeń przyjmuje pewna˛ zadana˛ wartość. Wartość ta maleje wraz ze spadkiem temperatury układu, dopóki nie osiagnie ˛ określonej na wst˛epie wartości minimalnej. Zastosowanie takiego rozwiaza˛ nia, w połaczeniu ˛ z podziałem kolumny na coraz mniejsze cz˛eści, znacznie przyspiesza proces optymalizacji w poczatkowej ˛ fazie. 4.2 Funkcja sasiedztwa ˛ dla układu o takich samych warunkach brzegowych na obu końcach kolumny Si³a krytyczna[N] Jeśli warunki brzegowe na obu końcach kolumny sa˛ takie sa2500 me, linia ugi˛ecia jest symetryczna wzgl˛edem środka pr˛eta (Rys 1a). W zwiazku ˛ z tym można oczeki2400 wać, że optymalny kształt kolumny b˛edzie również symetryczny. 2300 Własność ta jest wykorzystywana w funkcji sasiedztwa. ˛ Elemen2200 ty, których średnice sa˛ zmieniane, 10 100 1000 sa˛ wybierane spośród połowy eleLiczba iteracji mentów tworzacych ˛ układ (elebez wykorzystania symetrii menty o numerach [0...(n/2) − z wykorzystaniem symetrii 1] ). Takie same zmiany dokonywane sa˛ w elementach symeRys. 3: Wzrost siły krytycznej trycznych wzgl˛edem środka układu. Nowe wartości średnic di′ oraz d ′j wyznaczane sa˛ ze wzorów (3) oraz (4) natomiast średnice elementów symetrycznych to: ′ dn−1−i = di′ ′ ′ dn−1− j = dj (5) (6) Przyspieszenie optymalizacji, uzyskane dzi˛eki takiemu rozwiazaniu, ˛ przedstawiona (Rys 3). 5 5 Funkcja zmiany temperatury Niezwykle istotna˛ sprawa˛ w symulowanym wyżarzaniu jest odpowiednie dobranie sposobu obniżania temperatury. Zbyt gwałtowne obniżanie temperatury odbija si˛e negatywnie na dokładności algorytmu, zbyt powolne zaś zwi˛eksza czas obliczeń [1]. Parametr temperatury wykorzystywany jest przy wyznaczaniu prawdopodobieństwa akceptacji gorszego rozwiazania ˛ (Równanie 2). Prawdopodobieństwo to jest również zależne od różnicy funkcji oceny (∆ f ). W klasycznym algorytmie symulowanego wyżarzania, gdzie działanie funkcji generacji sasiedztwa ˛ jest stałe przez cały czas działania algorytmu, wartości średnie ∆ f w każdym Metropolis sa˛ porównywalne. Zastosowanie zmiennych parametrów generacji sasiedztwa, ˛ oraz zmiana liczby elementów układu, powoduje, że średnia wartość ∆ f maleje z każdym wykonaniem Metropolis. Dla analizowanych przypadków średnia wartość ∆ f malała prawie dokładnie dwukrotnie w każdym kolejnym Metropolis. f Zmian˛e ta˛ należy uwzgl˛ednić w schemacie chłodzenia. Aby wartość ułamka −∆ T zachowywała si˛e zgodnie z przewidywaniami wartość temperatury powinna być dodatkowo zmniejszana dwukrotnie w każdym kroku. 6 Generator liczb pseudolosowych W algorytmach probabilistycznych bardzo istotna˛ rol˛e odgrywa generator liczb pseudolosowych. Jest to szczególnie ważne w algorytmach z grupy Monte Carlo, a do takich właśnie należy symulowane wyżarzanie. Do zaprezentowanych tutaj obliczeń zastosowany został generator Mersenne-Twister, który generuje niezależne zmienne losowe o rozkładzie jednostajnym. Okres ciagów ˛ liczbowych wyznaczanych przez ten generator to 19937 2 − 1. Generator ten jest uważany za jeden z najlepszych do tego typu zastosowań. 7 Przykład zastosowania W pracy przedstawiono dwa przykłady zastosowania opisanej metody. W obu przypadkach jako poczatkowy ˛ kształt kolumny przyj˛eto kształt liniowy (stała średnica na całej długości). Parametry układu przedstawione zostały w Tabeli 1: Tab. 1: Parametry analizowanego układu smukłego Długość: 1000mm Średnica układu liniowego: 10mm Obj˛etość: 78539.75mm2 Moduł Younga: 2.1 ∗ 1011 Pa 7.1 Zamocowanie przegubowe - sztywne utwierdzenie (Rys. 1b) Zastosowana optymalizacja pozwoliła na poprawienie wytrzymałości układu o prawie 34%. Zastosowany został podział na 256 elementów. Parametry układu dla takiego wariantu układu przedstawia tabela 2. Zoptymalizowany kształt układu przedstawiony jest na rysunku 4. 6 Tab. 2: Parametry układu dla wariantu zamocowanie przegubowe - sztywne utwierdzenie Długość elementu: 3.9mm Liczba elementów: 256 Siła krytyczna dla układu liniowego: 4162.68N Siła krytyczna dla układu zoptymalizowanego: 5572.77N Poprawa wartości obcia˛żenia krytycznego: 33.87% Promie r[mm] 8 6 4 2 0 0 100 200 300 400 500 D ugo 600 700 800 900 1000 l[mm] Rys. 4: Zmiana promienia kolumny w funkcji długości; (zamocowanie przegub-sztywne; podział na 256 elementów) 7.2 Zamocowanie przegubowe - zamocowanie przegubowe (Rys. 1a) Zastosowana optymalizacja pozwoliła na poprawienie wytrzymałości układu o ponad 32%. Zastosowany został podział na 128 elementów. Parametry układu dla takiego wariantu układu przedstawia tabela 3. Wykorzystana została własność symetrii kolumny wzgl˛edem środka układu. Tab. 3: Parametry układu dla wariantu zamocowanie przegubowe - zamocowanie przegubowe Długość elementu: 7.8mm Liczba elementów: 128 Siła krytyczna dla układu liniowego: 2034.83N Siła krytyczna dla układu zoptymalizowanego: 2694.19N Poprawa wartości obcia˛żenia krytycznego: 32.40% Zoptymalizowany kształt układu przedstawiony jest na rysunku 5. 8 Podsumowanie Algorytm symulowanego wyżarzania to stosunkowo prosta i skuteczna metoda poszukiwania ekstremum globalnego funkcji wielu zmiennych. Uzyskane wyniki pokazuja,˛ że metoda ta może być z powodzeniem stosowana do optymalizacji kształtu. Zaproponowane w pracy modyfikacje algorytmu powoduja˛ przyspieszenie procesu poszukiwania optymalnego rozwiazania. ˛ Rozważana metoda pozwala na łatwa˛ optymalizacj˛e kształtu kolumny dla różnych warunków brzegowych. Zmiana warunków brzegowych na jednym z końców kolumny wymaga jedynie zmiany dwóch wierszy macierzy. Przedstawiona metoda optymalizacji kształtu może być dodatkowo uzupełniona poprzez wygładzanie otrzymanego kształtu. 7 Promie r[mm] 8 6 4 2 0 0 100 200 300 400 500 D ugo 600 700 800 900 1000 l[mm] Rys. 5: Zmiana promienia kolumny w funkcji długości; (zamocowanie przegub-przegub; podział na 128 elementów) Literatura [1] J. Arabas Wykłady z algorytmów ewolucyjnych, WNT Warszawa 2001r [2] R. Bogacz, H. Irretier, O. Mahrenholtz Optimal design of structures subjected to follower forces, 1980r [3] R. Bogacz, S. Imiełowski, L.Tomski Optimization and Stability of Columns on Example of Conservative and Nonconservative Systems, 1998r. [4] M. Hanaoka, K. Washizu Optimum design of Beck’s column, 1980r [5] S.Imiełowski, O. Mahrenholtz Optimization and sensivity of stepped columns under circulatory load, 1997r [6] S. Kirkpatrick, C. D. Gelatt, M. P. Vecchi Optimization by Simsulated Annealing, 1983r [7] Z.Michalewicz, D.B.Fogel How to solve it: Modern Metaheuristics, SpringerVerlag, Berlin Heidelberg 2000r [8] Sadiq M. Sait, Habib Youssef Iterative Computer Algorithms with Applications in Engineering. Solving Combinatorial Optimization Problems, IEEE Computer Society, California 1999r [9] Y. Tada, Y. Seguchi, K.Kema Shape determination of nonconservative structural systems by the inverse variational principle, 1985r [10] Drgania i stateczność układów smukłych, Praca zbiorowa wykonana pod kierunkiem naukowym i redakcja˛ L. Tomskiego, Wydawnictwa Naukowo Techniczne, Fundacja "Ksia˛żka Naukowo-Techniczna" Warszawa 2004r. 8