Krzysztof Malinowski Piotr Arabas Jacek Błaszczyk Andrzej Karbowski Mariusz Kamola Michał Karpowicz Rozszerzony konspekt przedmiotu Sieci i sterowanie systemów Warszawa 2009 Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego
2 Jednostki dydaktyczne przedmiotu: wykład 2, ćwiczenia -, laboratorium -, projekt 2 proponowane punkty ECTS: 5 Streszczenie (cel i zakres przedmiotu) Przedmiot ma pokazać słuchaczom w jaki sposób, wobec potrzeby poprawy czy wręcz optymalizacji działania, radzić sobie ze złożonością strukturalną i wymiarem w przypadku różnych dużych systemów, w szczególności systemów sieciowych charakteryzujących się dużą liczbą powtarzalnych elementów i przepływów. Rozpatrywane są sieci przesyłu danych, sieci zaopatrzenia, a także inne systemy i zagadnienia optymalizacji o złożonym charakterze. Wykład dzieli się na trzy bloki tematyczne: A) systemy złożone, zagadnienie dekompozycji, koordynacja, dwupoziomowe metody optymalizacji i hierarchiczne struktury sterowania, B) przykłady studialne pokazujące zastosowanie metod i struktur hierarchicznych, ukazujące także potrzebę stosowania innych podejść, takich jak agregacja w różnych ujęciach, uciąglanie zmiennych dyskretnych i inne, C) zagadnienia teorii gier i projektowania mechanizmów decyzyjnych w sytuacji współistnienia podmiotów posiadających własne cele działania lecz korzystających z wspólnych zasobów. Wykład Blok A: systemy złożone, zagadnienie dekompozycji, koordynacja, dwupoziomowe metody optymalizacji i hierarchiczne struktury sterowania (6 wykładów, pierwsze zadanie projektowe: przykład zastosowania koordynacji iteracyjnej) 1. Wprowadzenie; zadania i systemy złożone, atrybuty złożoności: rozległość przestrzenna, wyodrębnione elementy wzajemnie na siebie oddziałujące, mniej lub bardziej autonomiczni decydenci lokalni, wiele zmiennych decyzyjnych/opisujących, lokalne i nadrzędne cele działania); koordynacja jako mechanizm zapewniania harmonii w systemie: koordynacja iteracyjna i periodyczna; agregacja jako mechanizm upraszczania złożonych zadań; rola przykładu różnorodne sposoby radzenia sobie ze złożonością: systemy sieciowe (w tym Internet: zagadnienie sterowania intensywnością transmisji oraz routing), systemy wodne (sterowania fala powodziową, zaopatrzenie w wodę: optymalizacja pracy stacji uzdatniania wody i pomp). 2. Koordynacja iteracyjna: dekompozycja zadania decyzyjnego (zadanie optymalizacji złożonego systemu, zmienne lokalne i oddziaływania interakcyjne, lokalne i globalne ograniczenia zasobów; bezpośrednie i pośrednie instrumenty koordynacji; Metoda Bezpośrednia i Metoda Cen, metody mieszane. 3. Metoda Bezpośrednia: zadania lokalne i zadanie koordynacji, ograniczenia na poziomie lokalnym i nadrzędnym, własności funkcji celu koordynatora, iteracyjna aproksymacja tej funkcji; przykłady wykorzystania Metody Bezpośredniej: zadanie alokacji budżetu na reklamę pomiędzy produkty oraz środki reklamy. 4. Optymalizacja hierarchiczna metodą Bendersa oraz Bendersa-Kelleya. Dekompozycja zadania optymalizacji w oparciu o metodę prymalno-dualną punktu wewnętrznego. 5. Metoda Cen (MC): zadania lokalne i zadanie koordynacji, własności zadania koordynacji: istnienie rozwiązań, funkcja dualna i luka dualności, algorytmy koordynacji; przykłady wykorzystania MC: zadanie sterowania szybkością transmisji w sieci danych, bilansowanie mocy w systemie energetycznym. Metoda Cen z wykorzystaniem sprzężenia od sterowanego
3 systemu statycznego (w stanie ustalonym), zastosowanie do sterowania szybkością transmisji. 6. Koordynacja periodyczna; podstawowa struktura systemu dwupoziomowego z koordynacją periodyczną: podział kompetencji pomiędzy ośrodki decyzyjne, opóźnienia informacyjne i decyzyjne, mechanizmy lokalne (reguły decyzyjne różnego typu) i mechanizm koordynacji (periodyczne strojenie mechanizmów lokalnych z uwzględnieniem działania całości systemu), rola symulacji komputerowej. Blok B: przykłady studialne pokazujące zastosowanie metod i struktur hierarchicznych, ukazujące także potrzebę stosowania innych podejść ( 5 wykładów, drugie zadanie projektowe dla części słuchaczy) 1. Przykład sterowania systemem z wykorzystaniem koordynacji iteracyjnej i algorytmów heurystycznych: Sterowanie ruchem w sieci danych, zadanie łącznego doboru szybkości transmisji źródeł oraz doboru ścieżki (routing); sformułowanie zadania optymalizacji mieszanej i jego złożoność; hierarchiczny algorytm heurystyczny wykorzystujący dobór wag łączy przy pomocy MC, a następnie przypisujący łącza do poszczególnych ścieżek. 2. Przykład wykorzystania koordynacji periodycznej: sterowanie systemem zbiorników retencyjnych podczas przejścia fali powodziowej, warianty mechanizmu lokalnego, reprezentacja tego mechanizmu na poziomie koordynatora, zadanie doboru parametrów reguł lokalnych; sprawdzenie działania struktury sterowania w drodze symulacji komputerowej. 3. Przykład sterowania siecią zaopatrzenia w wodę (1): periodyczna optymalizacja pracy pomp w dużym systemie wodociągowym; zadanie minimalizacji kosztów energii elektrycznej w przypadku złożonej taryfy: model hydrauliczny sieci, ograniczenia, duża liczba zmiennych decyzyjnych i wiele zmiennych opisujących, zadanie mieszane (zmienne o wartościach ciągłych i dyskretnych). Sposoby radzenia sobie ze złożonością tego zadania sterowania (optymalizacji): agregacja w różnych ujęciach (w tym agregacja urządzeń), uciąglanie zmiennych, dezagregacja. 4. Przykład sterowania siecią zaopatrzenia w wodę (2):sposób rozwiązania: sformułowanie zadania uproszczonego potrzebnego do wyznaczenia przybliżonych profili wypełnienia zbiorników w dłuższym okresie, zadanie z modelem hydraulicznym sieci z krótszym horyzontem i agregacją pomp, zadanie dezagregacji: harmonogramy pompowania; weryfikacja harmonogramów poprzez symulację pracy systemu. 5. Przykład systemu wspomagającego wycenę usług telekomunikacyjnych z uwzględnieniem mechanizmów rynkowych i zapobiegania przeciążeniom sieci. Konstrukcja modelu produktów: rozbicie na modele składowe i zastosowanie agregacji dla uproszczenia opisu. Identyfikacja modelu: iteracyjne dostrajanie, rozwiązanie problemu początkowego braku danych. Omówienie możliwych właściwości zadania optymalizacji i sposoby doboru odpowiednich metod rozwiązania.
4 Blok C: zagadnienia teorii gier i projektowania mechanizmów decyzyjnych (3 wykłady, drugie zadanie projektowe dla części słuchaczy) 1. System złożony z podsystemów autonomicznych mających własne cele działania i decydentów świadomych swojego wpływu na decyzje innych podmiotów; sytuacja gry decyzyjnej: modele gry i punkty równowagi; rozwiązania efektywne (optymalne w sensie Pareto); zagadnienie projektowania mechanizmu decyzyjnego. 2. Problem realizacji (implementacji) rozwiązań efektywnych (referencyjnych) w punkcie równowagi. Implementacja rozwiązań referencyjnych w strategiach niezdominowanych: własności mechanizmu Vickreya-Clarke'a-Grovesa. Implementacja rozwiązań referencyjnych w punkcie równowagi Nasha: mechanizmy efektywne i subefektywne 3. Algorytmy (koordynacji iteracyjnej) wyznaczające rozwiązania gier decyzyjnych: równowaga w strategiach niezdominowanych, równowaga Nasha. Uwaga: wykład 15 przeznaczony jest na zreferowanie przez zespoły słuchaczy wykonujących drugie zadanie projektowe podstawowej koncepcji realizacji projektu; w razie potrzeby nastąpi podział na mniejsze grupy seminaryjne. Projekt Pierwsze zadanie projektowe dotyczyć będzie analizy a następnie rozwiązania zadania optymalizacji z wykorzystaniem metody z koordynacją iteracyjną zadań lokalnych. Przewiduje się wykonanie zadania projektowego przez zespół dwuosobowy. Drugie zadanie projektowe dotyczyć będzie zagadnienia związanego ze sterowaniem (optymalizacją działania) systemu sieciowego lub zagadnienia związanego z projektowaniem mechanizmów decyzyjnych. Przewiduje się wykonanie zadania projektowego przez zespół dwuosobowy lub trzyosobowy. Propozycje przykładów zadań projektowych: - optymalizacja przepływu w sieci (aukcja PSP, "metoda cen uwikłanych", inne), - mechanizmy reagowania na ataki sieciowe, - badanie warunków efektywności punktów równowagi Nasha, - mechanizm routingu międzydomenowego (rozszerzenie protokułu BGP), - gry routingowe, cena anarchii, podział kosztów tranzytu, - aukcje licencji na częstotliwości radiowe (Milgroma, Ausubela), - ewolucja topologii sieci (network formation games), - mechanizmy szeregowania zadań (przydziału zadań do procesorów), - mechanizmy giełdowe (aukcje dwustronne). Literatura Do wykładu zostanie przygotowany zestaw folii (slajdów). Poszczególne zagadnienia będą odnosić się do wskazanych fragmentów podanych poniżej książek lub, szczególnie w przypadku wykładów w części B oraz zadań projektowych, do wskazanych artykułów lub raportów
1. W. Findeisen, F. N. Bailey, M. Brdyś, K, Malinowski, P. Tatjewski, A. Woźniak, Control and Coordination in Hierarchical Systems, Wiley, 1980. 2. Fudenberg, Drew, and Tirole, Jean: Game Theory, The MIT Press, 1991 3. Hassan Mahbub, Jain Raj, Wysokowydajne sieci TCP/IP, Helion 2004 4. L. Lasdon, Optimization Theory for Large Systems, Dover Publications, 2002. 5. Myerson, Roger B.: Game Theory: Analysis of Conflict, Harvard University Press, 1991 6. J. Nocedal, S. Wright, Numerical Optimization, 2nd edition, Springer, 2006. 5