Aukcja czasu jako narzędzie układania planu zajęć
Piotr Modliński p.modlinski@ia.pw.edu.pl Warszawa, 11 stycznia 2011, 5:26pm
Spis treści
1 Opis modelu 2
1.1 Model matematyczny . . . 2
1.1.1 Ograniczenia . . . 4
2 Opis implementacji 6 2.1 Sekcja „Ogólne” . . . 6
2.1.1 Zbiory . . . 6
2.1.2 Parametry . . . 6
2.2 Moduł „Zadanie MIP” . . . 6
2.3 Modul „Zadanie LP” . . . 6
1 Opis modelu
W porównaniu z modelem opisanym w pracy [4] w czasie prac zaszły pewne modyfikacje. Najważniejszą jest dodanie nowej kategorii zasobów – towarów sztucznych wymaganych dla realizacji ofert grupujących [1].
Dodatkowo zmianie uległy pewne ograniczenia, w szczególności pozwalając na uproszczenie pewnych zależności (np. brak konieczności definiowania agre- gatów składających się z tylko jednego towaru elementarnego, bądź możliwość tworzenia hierarchii agregatów, co otwiera drogę m.in. do wykorzystania on- tologii jako narzędzia wspomagającego opis ofert przez definiowanie towarów wirtualnych).
W rozdziale 2 opisane zostały szczegółowo poszczególne elementy zaimple- mentowanego w środowisku AIMMS narzędzia, tutaj przedstawiony zostanie jedynie model matematyczny, oraz zaproponowany algorytm iteracyjnego po- prawiania rozwiązania.
1.1 Model matematyczny
Mamy do czynienia z t okresami czasu równej długości1 w trakcie których teo- retycznie mogą odbywać się zajęcia. Do tego dochodzi pokaźny zbiór zasobów (towarów) I, który podzielony został na kilka rozłącznych podzbiorów:
Zbiór towarów elementarnych IE zawiera wszystkie zasoby, które w rze- czywistości są wykorzystywane, tj. w szczególności wszystkie grupy stu- denckie, pracowników prowadzących zajęcia, poszczególne sale zajęciowe, ewentualny dodatkowy sprzęt wymagany na zajęciach, jak np. projektory, czy laptopy
Zbiór towarów wirtualnych IW jest to zbiór agregatów – grup towarów ele- mentarnych, w ramach których są one nierozróżnialne z punktu widzenia wymagań2
Zbiór towarów sztucznych IS opisuje konkretne operacje, które muszą być wykonane w ramach danego zadania3. Co istotne, nie jest to po pro- stu wprowadzanie sztucznego fragmentu do zadania, ale jest czymś, co faktycznie odzwierciedla rzeczywistość. W modelu pełni funkcję towaru sztucznego, stąd ta nazwa.
Kolejnym elementem jest zbiór ofert J . Jest on bardzo ściśle powiązany ze zbio- rem towarów4. Podobnie podzielony został na kilka rozłącznych podzbiorów z
1dla potrzeb układania planu zajęć będzie to godzina lekcyjna, godzina zegarowa, bądź dwie godziny jak w przypadku WEiTI PW
2np. sala wykładowa, dowolna z kilku konkretnych fizycznie na uczelni występujących, czy laptop, ale bez znaczenia, czy jest to konkretnie HP, DELL, czy IBM. Dotyczy to także osób – np. towarem wirtualnym może być doktorant, czy asystent, który może prowadzić ćwiczenia z jakiegoś przedmiotu; grupowane mogą być także grupy studenckie – np. wszystkie grupy wchodzące w skład danej specjalności
3np. aby przyjęte zostało zadanie rozumiane jako „Programowanie” musi odbyć się wykład, ćwiczenia i laboratoria dla każdej z grup studenckich. Wówczas sztuczne towary odpowiadały będą poszczególnym elementom, tj. wykładowi, ćwiczeniom dla 1 grupy, dla 2 grupy, . . . , dla n-tej grupy, oraz laboratoriom dla każdej z grupy oddzielnie
4także nazwy tych zbiorów są nieprzypadkowe – oferty niejako definiują towary o tej samej nazwie, wprowadzają je na rynek – oferty elementarne wprowadzają towary elementarne, oferty wirtualne towary wirtualne, a oferty sztuczne są konieczne do zdefiniowania sztucznych towarów
czego każdy ma określone przeznaczenie, oraz inne własności:
Zbiór ofert elementarnych JE obejmuje oferty polegające na zgłoszeniu do- stępności danego towaru elementarnego w danej chwili czasu.
Zbiór ofert wirtualnych JW zawiera w sobie wszystkie definicje agregacji – zarówno towarów elementarnych w wirtualne, jak i wirtualnych w wirtu- alne „wyższego rzędu”.
Zbiór ofert sztucznych JS to zbiór definicji wymagań dla poszczególnych to- warów sztucznych – jest bardzo ściśle powiązany z kolejnym zbiorem, gdyż stanowi dla niego niezbędną podstawę.
Zbiór ofert rzeczywistych JR jest konkretnym już określeniem wymagań w języku towarów sztucznych. Oferta tutaj by mogła wyglądać w analogii do przypisu 3 na stronie 2 następująco: 1 szt. wykładu, po 1 szt. ćwiczeń dla każdej z grup i po 1 szt. laboratoriów dla każdej z grup.
Wszystkie oferty za wyjątkiem ofert rzeczywistych związane są silnie z czasem – przyjęte są do wykonania w konkretnym momencie. Oferty rzeczywiste są tu wyjątkiem o tyle, że bardzo często wykonanie wszystkich elementów wchodzą- cych w ich skład jest o tyle niepożądane, co niemożliwe (np. ta sama grupa w tym samym czasie nie może być jednocześnie na wykładzie, ćwiczeniach i laboratorium).
Do powyższych dochodzi szereg parametrów opisujących poszczególne oferty.
Całość składa się na macierz A, która dzieli się na szereg elementów związanych z konkretnymi podzbiorami ofert i towarów – por. rysunek 1, na którym przed- stawiono także macierz B – macierz ograniczeń ilościowych, o której będzie
mowa niżej♠. ♠FIXME:
Zamienić słowo ńiżejńa link do konkretnego miejsca, w którym będzie mowa o ograniczeniach
Poszczególne elementy macierzy A mają odmienne przeznaczenie, zatem i ich struktura się różni. Poniżej pokrótce przedstawiono wszystkie podmacierze:
Aee Macierz −I – służy jedynie wprowadzeniu poszczególnych towarów ele- mentarnych na rynek. Jedna oferta odpowiada pojedynczemu towarowi w jednej chwili5
Aew Macierz określająca strukturę towarów – określa, które towary elementarne są elementem których ofert wirtualnych. Z samego kształtu oferty wirtu- alnej wynika, że w każdej kolumnie Aew może występować tylko jeden niezerowy element.
Aes Możliwe do wykorzystania gdyby jakaś oferta sztuczna wymagała konkret- nego towaru elementarnego6. W praktyce zawsze można ominąć przez utworzenie odpowiednich agregatów składających się z jednego towaru elementarnego. Zakładamy, że jest to macierz zerowa.
Aer Analogicznie, jak w przypadku Aes macierz zerowa.
Awe Macierz zerowa.
5użyte zostało określenie „chwila”, ponieważ mowa tu o pojedynczym, niepodzielnym okre- sie. W praktyce nie chodzi o punkt na osi czasu, ale o odcinek, który nie może zostać podzie- lony.
6np. wykład prowadzony przez tego konkretnie profesora, który nie może zostać zastąpiony
Oferty
je jw js jr
A ee A ew A er
Towary ieiwis
min Σ
max Σ
A es
A we A ww A ws A wr A se A sw A ss A sr
B
EB
WB
SRysunek 1: Struktura ofert i towarów występujących w modelu
Aww Oferty wprowadzające na rynek towary wirtualne. W podejściu „klasycz- nym”7w każdej kolumnie (odpowiadającej pojedynczej ofercie wirtualnej) występuje dokładnie jeden niezerowy (równy −1) element – odpowiada- jący agregatowi zawartemu w ofercie. W przypadku hierarchicznym ele- menty niezerowe są dwa – jeden równy 1 opisujący towar agregowany, oraz równy −1 opisujący towar agregujący.
Aws Wymagania ofert sztucznych – ta macierz jest właściwym miejscem opisu wymagań dla poszczególnych operacji. Elementy tej macierzy mogą przyj- mować wartości całkowite dodatnie.
Awr Macierz zerowa Ase Macierz zerowa Asw Macierz zerowa
Ass Macierz przeciwna do macierzy jednostkowej (−I).
Asr Macierz określająca które operacje (s) są wymagane do wykonania zadania (r).
1.1.1 Ograniczenia
W modelu występuje szereg ograniczeń.
7tj. jednopoziomowa struktura agregacji – towary elementarne zawarte bezpośrednio w towarach wirtualnych
Pierwszym jest ograniczenie na sumę towarów elementarnych. Ponieważ ca- łość zadania zapisanego jest w postaci rynkowej, każdy pojedynczy towar8musi się bilansować – towar nie może zostać kupiony, jeśli nie został najpierw sprze- dany, a nie może też zostać sprzedany więcej niż raz jeśli nie został wcześniej kupiony (wprowadzony na rynek może zostać tylko raz, potem można nim je- dynie obracać). Towary elementarne sprzedawane są w ofertach elementarnych i kupowane w wirtualnych, ale mogą też być wykorzystywane w ofertach sztucz- nych, żeby uniknąć tworzenia agregatów składających się z jednego tylko towaru elementarnego, zatem te trzy elementy wchodzą do sumy.
∀ie∈IE∀t
X
j∈JE∪JW∪JS
Aiej· Xjt= 0 (1)
Drugim jest ograniczenie bilansujące towary wirtualne. Towary sprzeda- wane9są w ofertach wirtualnych – niejako zamieniane na towary elementarne. W podejściu z jednopoziomową strukturą w ofertach wirtualnych są jedynie sprze- dawane, dla struktury wielopoziomowej mogą być i kupowane i sprzedawane.
Towary te wykorzystywane są natomiast w konkretnych ofertach sztucznych do realizacji poszczególnych operacji. Mamy zatem:
∀iw∈IW∀t X
j∈JW∪JS
Aiwj· Xjt= 0 (2)
Trzecim warunkiem jest ten, by każda operacja wykonywana była w określo- nym czasie – dokładnie w jednej chwili. W związku z tym oferta sztuczna może zostać albo odrzucona, albo przyjęta tylko raz, w jednej konkretnej chwili:
∀js∈JS
X
t
Xjst∈ {0, 1} (3)
Ostatni warunek łączy ze sobą wykonanie zadania (oferta rzeczywista) i po- szczególnych operacji. Ponieważ zadanie nie jest zlokalizowane w czasie, oferta rzeczywista przyjęta jest wtedy i tylko wtedy, kiedy przyjęte są wszystkie wy- magane oferty sztuczne, zatem:
∀is∈IS
X
t
X
js∈JS
Aisjs· Xjst
+ X
jr∈JR
Aisjr· Xjr = 0 (4)
Do tego dochodzą jeszcze wymagania na całkowitoliczbowość (właściwie to zerojedynkowość) poszczególnych zmiennych określających przyjęcie, lub odrzu- cenie danej oferty, zatem:
∀j∈JE∪JW∪JS∀t Xjt∈ {0, 1} (5)
∀jr∈JR Xjr ∈ {0, 1} (6)
8właściwie para (towar, chwila czasu)
9wprowadzane na rynek
2 Opis implementacji
Model zaimplementowano w środowisku pakietu AIMMS (por. [2]). Ponieważ nazwy i przeznaczenie zaimplementowanych obiektów niemal dokładnie odpo- wiadaja elementom modelu opisywanym w rozdziale 1, nie będzie tu szczegó- łowo omawiane ich zastosowanie, a jedynie to, co jest istotne z punktu widzenia implementacji.
Heurystyka opiera się na przełączaniu pomiędzy modelem ciągłym i dyskret- nym, a także na „zamrażaniu” pewnych zmiennych. W związku z powyższym wyróżnione zostały trzy fragmenty przedstawione w kolejnych punktach. Na końcu przedstawiono mechanizm korzystający z poszczególnych modułów.
2.1 Sekcja „Ogólne”
W tym miejscu zawarte zostały elementy wspólne dla obu metod rozwiązywania.
Są to zbiory, oraz parametry.
2.1.1 Zbiory
Wyszczególnić należy trzy zasadnicze zbiory, z czego dwa są rozbite na frag- menty:
s czas jest zbiorem kolejnych rozważanych okresów czasu. Nie ma wpływu na kształt innych zbiorów, ani parametrów, jednak występuje w obliczeniach gdyż od niego zależy w dużej mierze tak rozmiar zadania jak i możliwości jego rozwiązania
s towary to zbiór (nadzbiór) wszystkich towarów biorących udział w zadaniu.
W jego ramach wyróżnić można następujące podzbiory:
s towEl – zbiór towarów elementarnych s towWirt – zbiór towarów wirtuualnych s towSzt – zbiór towarów sztucznych
s oferty to podobnie, jak w poprzednim przypadku zbiór ofert zawierający kilka podzbiorów:
– zbiór ofert elementarnych – zbiór ofert wirtualnych – zbiór ofert sztucznych – zbiór ofert rzeczywistych
2.1.2 Parametry
W tym miejscu zawarte są parametry odpowiadające poszczególnym fragmen- tom macierzy A, zatem kolejno: Aee(ie,je), Aew(ie,jw), Aes(ie,js), Aer(ie,jr), Awe(iw,je), Aww(iw,jw), Aws(iw,js), Awr(iw,jr), Ase(is,je), Asw(is,jw), Ass(is,js), Asr(is,jr). Wartości domyślne określone zostały na 0, wiele z macierzy jest wy- pełnionych samymi zerami. Dla czytelności modelu podjęto jednak decyzję o implementacji całej macierzy A.
2.2 Moduł „Zadanie MIP”
2.3 Modul „Zadanie LP”
2.4 Algorytm poszukiwania rozwiązania
Algorytm opiera się na wielokrotnym rozwiązywaniu zadania ciągłego, które jest zadaniem łatwym (problem liniowy z liniowymi ograniczeniami) i szybko rozwiązywalnym. Opiera się także na następujących spostrzeżeniach:
1. Dobrobyt wyznaczony dla zadania ciągłego zawsze będzie niegorszy niż dla zadania dyskretnego (w szczególności rozwiązanie dyskretne jest również poprawnym rozwiązaniem dla zadania ciągłego).
2. Wartość dobrobytu dla zadania dyskretnego w każdym przypadku będzie wartością całkowitą, zatem może być oszacowane z góry przez bF ( ˆX)c, gdzie ˆX jest rozwiązaniem optymalnym zadania ciągłego, a F ( ˆX) warto- ścią funkcji celu w tym punkcie.
3. ♠ ♠FIXME:
tu może jeszcze coś dopiszę
Literatura
[1] Coś, gdzie jest opis ofert prostych, zintegrowanych i grupujących w M3 [2] www.aimms.com
[3] E. Toczyłowski, ODS-4: Zadania unimodularne, materiały wykładowe z przedmiotu Optymalizacja dyskretna i sieciowa, PW, Warszawa, 2004 [4] Materiały konferencyjne BOS 2010