Algorytmy genetyczne, optymalizacja sieci omputerowych Krzysztof Pytel Grzegorz Klua Jerzy Kisilewicz*** ZASTOSOWANIE ALGORYTMÓW GENETYCZNYCH DO OPTYMALIZACJI SIECI KOMPUTEROWYCH W artyule zaproponowano wyorzystanie algorytmów genetycznych do minimalizacji średniego opóźnienia paietu w sieci omputerowej. Dla zapewnienia więszej zbieżności algorytmu zastosowano zmodyfiowany algorytm genetyczny, wyorzystujący sterowni rozmyty oceniający poszczególnych osobniów w populacji. W zależności od oceny osobnia modyfiowane jest prawdopodobieństwo jego selecji do puli rodzicielsiej, dzięi czemu do puli rodzicielsiej powinno trafić więcej osobniów dobrze przystosowanych a mniej słabiej przystosowanych. Metoda ta pozwala na wyorzystanie wiedzy zgromadzonej przez algorytm genetyczny we wcześniejszych pooleniach do przewidywania ierunu, w tórym powinno zmierzać rozwiązanie optymalne. 1. WSTĘP Optymalizacja sieci omputerowych posiada duże znaczenie pratyczne. Podstawowym celem optymalizacji sieci jest zapewnienie jej sprawnego i efetywnego funcjonowania. W artyule przeanalizujemy możliwość zastosowania algorytmów genetycznych, w tórych zastosowano sterownii rozmyte do wspomagania ewolucji osobniów do rozwiązywania zadań optymalizacji sieci omputerowych. Do testów wyorzystano zadanie minimalizacji średniego opóźnienia paietu. Zadanie to opisane zostało w pracy [2]. Wyższa Szoła Humanistyczno-Eonomiczna w Łodzi ul Rewolucji 1905 nr 64, 90-222 Łódź, e-mail: pytel_@poczta.onet.pl Społeczna Wyższa Szoła Przedsiębiorczości i Zarządzania, ul. Sieniewicza 9, 90-113 Łódź, e-mail: lua_g@sop.swspiz.pl *** Politechnia Wrocławsa, ul. Wybrzeże Wyspiańsiego 27, 50-370 Wrocław, e-mail: isilewicz@zss.pwr.wroc.pl
W dalszych rozważaniach przyjmiemy, że dana jest sieć reprezentowana przez graf właściwy i zorientowany G(N w, L, C l ), gdzie: N w jest zbiorem węzłów reprezentujących przełącznii, L jest zbiorem łuów reprezentujących łącza natomiast C l jest wetorem wag. Wagi łuów mogą reprezentować odległości, opóźnienia, przepustowości lub inną wybraną miarę. Oznaczmy: - łu o początu w węźle x i ońcu w węźle y, gdzie x, y Nw, c( x, C l - przepustowość łuu, f - przepływ w łuu. 2. ZADANIE MINIMALIZACJI ŚREDNIEGO OPÓŹNIENIA PAKIETU R = [ r mxn Oznaczmy przez ij ] r macierz z zewnątrz wprowadzanych natężeń oraz ij średnie natężenie strumienia danych ierowanych z węzła i do węzła j. Poszczególne rij sładnii możemy ponumerować od 1 do q. Z -tym sładniiem związana będzie s para węzłów i u jao źródło i ujście. Przez r oznaczmy średnie natężenie -tego r = rij i = s sładnia tzn. gdzie j = u,. Przepływem wielosładniowym w sieci S realizującym macierz z zewnątrz wprowadzanych natężeń R nazywamy zespół funcji f : L R + {0} = 1,..., q, (1) tórych wartości f = 1,..., q przypisane poszczególnym łuom spełniają następujący uład warunów: r x = s f f ( y, x) = r dla x = u A( x) y B ( x) 0 w pozostaych przypadach y dla (2) dla ażdego x N, =1,... q. - 2 -
Zbiór A( x) = { y : y N i } jest zbiorem węzłów sieci, do tórych prowadzą łui wychodzące z węzła x, zbiór B( x) = { y : y N i } jest zbiorem węzłów sieci, do tórych prowadzą łui sierowane do węzła x. Problem minimalizacji średniego opóźnienia paietu polega na minimalizacji funcji T = 1 γ f L c( x, f, (3) gdzie: γ = q r i i= 1 - jest natężeniem sumarycznego strumienia paietów wprowadzanych do sieci, przy spełnieniu warunów: r x = s f f ( y, x) = r dla x = u A( x) y B ( x) 0 w pozostaych przypadach y dla (4) dla ażdego x N, =1,... q, f 0 dla ażdego, =1,...,q, f c( x, dla ażdego. 3. ALGORYTM GENETYCZNY WYKORZYSTANY DO OPTYMALIZACJI ŚREDNIEGO OPÓŹNIENIA PAKIETU Algorytmy genetyczne umożliwiają wyszuiwanie przybliżonych rozwiązań złożonych problemów optymalizacyjnych. Swoje istnienie zawdzięczają obserwacji i próbie naśladowania naturalnych procesów zachodzących w świecie organizmów żywych - ewolucji i związanej z nią naturalnej selecji występującej w populacjach żywych osobniów. Algorytmy genetyczne operują na całych populacjach rozwiązań zwanych osobniami. Rozwiązania odowane są w strutury zwane ciągami odowymi. Algorytm genetyczny poszuuje coraz lepszych rozwiązań, generując olejne ich poolenia. Pierwsze poolenie tworzy się losowo lub wybiera w inny sposób. Dla ażdego olejnego poolenia wybiera się pewną liczbę osobniów najlepiej przystosowanych (proces selecji lub reproducji). Osobnii te są ojarzone - 3 -
w pary (losowo), po czym następuje wymiana (wymieszanie się) materiału genetycznego rodziców, w wyniu czego otrzymujemy dwa nowe ciągi odowe (odpowiadające genotypowi dzieci). Więcej informacji na temat algorytmów genetycznych można znaleźć w literaturze [1, 3]. W esperymencie tym rozwiązywano zadanie testowe przy pomocy algorytmu genetycznego wyorzystującego logią rozmytą do modyfiowania prawdopodobieństwa selecji. Schemat bloowy zmodyfiowanego algorytmu genetycznego poazany został na Rys.1. START Wybór populacji początowej Ocena stopnia przystosowania T WARUNEK ZATRZYMANIA N Wyprowadzenie "najlepszego" osobnia Analiza prawdopodobieństwa selecji dla ażdego osobnia populacji (blo logii rozmytej) STOP Selecja do puli rodzicielsiej Utworzenie nowej populacji poprzez operatory rzyżowania i mutacji Rys.1. Zmodyfiowany algorytm genetyczny Fig. 1. Modified genetic algorithm Sterowni rozmyty (na schemacie bloowym na ciemnym tle) ocenia ażdego osobnia w populacji i wyznacza dla niego współczynni adaptacji prawdopodobieństwa selecji. Do wyznaczenia współczynnia adaptacji wyorzystywane są: - przyrost funcji przystosowania populacji (oreśla szybość zmian funcji przystosowania) µ ( T ) ( T 1) pop = µ pop µ pop, (5) - 4 -
- wsaźni stopnia przystosowania osobnia (oreśla na ile dany osobni jest lepszy niż przeciętn W = µ µ os ( T ) ( T ) os pop. (6) Zmodyfiowane prawdopodobieństwo selecji osobnia obliczane jest na podstawie wzoru: ps ' = ps * wps dla =1...N (7) gdzie: ps' - zmodyfiowane prawdopodobieństwo selecji osobnia, ps - prawdopodobieństwo selecji osobnia, wps - współczynni prawdopodobieństwa selecji osobnia wyznaczony przez sterowni rozmyty. Więcej informacji o algorytmach genetycznych, w tórych zastosowano sterowni rozmyty do modyfiacji prawdopodobieństwa selecji osobniów można znaleźć w pracy [4]. 4. EKSPERYMENT Esperyment polegał na optymalizacji przepływu wielosładniowego bez rozgałęzień. Jao ryterium optymalizacji przyjęto średnie opóźnienie paietu. W zadaniu testowym optymalizowano sieć sładającą się z 58 węzłów. Łui pomiędzy węzłami posiadają różną przepustowość przy czym nie wszystie węzły połączone są bezpośrednio. Z zewnątrz wprowadzono do sieci obciążenie z 9 sładniów o różnym natężeniu. Dla ażdego ze sładniów zdefiniowano po 8 dopuszczalnych tras. Esperymenty przeprowadzono na omputerze AMD Athlon 1.33 GHz pracującym pod ontrolą systemu RedHat Linux. Czas potrzebny do znalezienia rozwiązania optymalnego wynosił od 0,58 do 2,31 [s]. Przyjęto następujące parametry algorytmu genetycznego: - geny reprezentowane są przez ciągi 9 liczb z przedziału <0, 7>, - funcja przystosowania dla osobnia obliczana na podstawie zależności (3), - prawdopodobieństwo rzyżowania 0,8, - prawdopodobieństwo mutacji 0,15, - liczebności populacji 25. - 5 -
Wyres na Rys. 2. poazuje wartość funcji przystosowania osobnia (średniego opóźnienia paietu) oraz średnią wartość przystosowania dla populacji dla pierwszych 200 pooleń algorytmu. 1000 Śerdnie opóźnienie paietu 950 900 850 800 750 Najlepszy dotychczasowy osobni Średnia w populacji Linia trendu dla średniej w polulacji 700 0 50 100 150 200 Liczba pooleń Rys. 2. Wartość funcji przystosowania osobniów (średniego opóźnienia paietu) Fig. 2. Fitness function of individuals (average delay of pacet) Wniosi i spostrzeżenia 1. Algorytm genetyczny znalazł rozwiązanie optymalne testowego problemu. 2. Średnia wartość funcji optymalizowanej w pierwszym pooleniu wynosiła 963 a wartość optymalna 732, co oznacza, że algorytm znalazł rozwiązanie o ooło 24% lepsze od rozwiązania początowego (wartość odniesiona do wartości początowej). 3. Algorytmy genetyczne mogą być zastosowane do zadań optymalizacji sieci o więszej liczbie węzłów i sładniów. Możliwe jest również orzystanie z innych ryteriów optymalizacji np.: przepustowości sieci, oszt budowy, oszt orzystania z usług omuniacyjnych. Problem optymalizacji przepływu wielosładniowego jest zadaniem trudnym do rozwiązania metodami tradycyjnymi ze względu na bardzo dużą przestrzeń rozwiązań. Dla przyjętych w esperymencie warunów czas potrzebny na obliczenie wszystich możliwych rozwiązań (metoda brute force) wynosi ooło 3,5 godziny. - 6 -
Przepustowości łączy oferowanych przez firmy teleomuniacyjne są wielościami zmieniającymi się soowo, ponadto poszczególne sładnii przepływu mogą wyorzystywać te same łącza, co powoduje że funcja optymalizowana nie jest funcją ciągłą. W algorytmach genetycznych często stosowana jest zasada mówiąca o tym, że mutacja powodująca niewielie zmiany funcji optymalizowanej (potome jest podobny do rodzica) jest bardziej prawdopodobna niż mutacja powodująca duże zmiany. Zasada ta ułatwia dostrojenie algorytmu. W problemie optymalizacji przepływu trudno jest ustalić, tóra mutacja spowoduje niewielie zmiany funcji optymalizowanej. Dlatego w esperymencie zastosowano model mutacji, w tórym mutowany gen przyjmuje dowolną spośród dopuszczalnych wartości genu z jednaowym prawdopodobieństwem. Zastosowanie sterownia rozmytego modyfiującego prawdopodobieństwo selecji pozwoliło na zmniejszenie o ooło 15% liczby pooleń potrzebnych do uzysania rozwiązania, co w onsewencji spowodowało srócenie czasu działania algorytmu o ooło 6,5% w stosunu do lasycznego algorytmu genetycznego. 5. LITERATURA [1] GOLDBERG D.E., Algorytmy genetyczne i ich zastosowania, Wydawnictwa Nauowo Techniczne, Warszawa 1998. [2] KASPRZAK A., Rozległe sieci omputerowe z omutacją paietów. Oficyna Wydawnicza Politechnii Wrocławsiej, Wrocław 1999. [3] MICHALEWICZ Z., Algorytmy genetyczne + strutury danych = programy ewolucyjne, Wydawnictwa Nauowo Techniczne, Warszawa 1999. [4] PYTEL K., KLUKA G., Wyorzystanie logii rozmytej do wspomagania ewolucji osobniów w algorytmach genetycznych, w Studia z Automatyi i Informatyi tom 27, Poznańsie Towarzystwo Przyjaciół Nau, Poznań 2002. THE APPLICATION OF THE MODIFIED GENETIC ALGORITHMS TO OPTIMIZATION OF COMPUTER NETWORKS In the article we proposed the application of the genetic algorithms to the minimization of the average delay of pacet in the computer networ. We use the modified genetic algorithm, that employs the fuzzy logic controller for evaluating of all individuals in the population to increase algorithm convergence. In the dependence from the estimation of the individual, the controller modifies the probability of his selection to the parents' pool, so to the parents' pool should be chosen more of above-average and less wea individuals. This method lets on the utilization of the aggregated nowledge by the genetic algorithm in earlier generations to foreseeing of the direction, wherein should aim evolution. The modified genetic algorithm gives better results in the shorter time than the elementary algorithm and can be used also to the optimization of large networs. - 7 -