Rozvrhování zaměstnanců



Podobné dokumenty
Dopravní úloha. Jiří Neubauer. Katedra ekonometrie FEM UO Brno

Dualita v úlohách LP Ekonomická interpretace duální úlohy. Jiří Neubauer. Katedra ekonometrie FEM UO Brno

Kvadratické rovnice pro učební obory

Logické programování s omezujícími podmínkami. Constraint Logic Programming: CLP

(a) = (a) = 0. x (a) > 0 a 2 ( pak funkce má v bodě a ostré lokální maximum, resp. ostré lokální minimum. Pokud je. x 2 (a) 2 y (a) f.

Diferenciální počet funkcí jedné proměnné

2.8.9 Parametrické rovnice a nerovnice s absolutní hodnotou

1.3.1 Kruhový pohyb. Předpoklady: 1105

INŽENÝRSKÁ MATEMATIKA LOKÁLNÍ EXTRÉMY

Nerovnice s absolutní hodnotou

Tvorba trendové funkce a extrapolace pro roční časové řady

{ } Kombinace II. Předpoklady: =. Vypiš všechny dvoučlenné kombinace sestavené z těchto pěti prvků. Urči počet kombinací pomocí vzorce.

= musíme dát pozor na: jmenovatel 2a, zda je a = 0 výraz pod odmocninou, zda je > 0, < 0, = 0 (pak je jediný kořen)

9.2.5 Sčítání pravděpodobností I

Důkazové metody. Teoretická informatika Tomáš Foltýnek

M - Rovnice - lineární a s absolutní hodnotou

( ) Neúplné kvadratické rovnice. Předpoklady:

Lokální a globální extrémy funkcí jedné reálné proměnné

E-ZAK. metody hodnocení nabídek. verze dokumentu: QCM, s.r.o.

Soustavy lineárních rovnic

1.1.1 Kvadratické rovnice (dosazení do vzorce) I

KIV/ZI Základy informatiky. MS Excel maticové funkce a souhrny

Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky, Šumperk, Hlavní třída 31

2.7.2 Mocninné funkce se záporným celým mocnitelem

3. Ve zbylé množině hledat prvky, které ve srovnání nikdy nejsou napravo (nevedou do nich šipky). Dát do třetí

Domácí úkol DU01_2p MAT 4AE, 4AC, 4AI

Vrtání závitů bez vyrovnávací hlavičky (G331, G332)

( ) Kreslení grafů funkcí metodou dělení definičního oboru I. Předpoklady: 2401, 2208

Funkce více proměnných

Svobodná chebská škola, základní škola a gymnázium s.r.o.

4.6.6 Složený sériový RLC obvod střídavého proudu

Číselné soustavy Ing. M. Kotlíková, Ing. A. Netrvalová Strana 1 (celkem 7) Číselné soustavy

Zvyšování kvality výuky technických oborů

Obchodní řetězec Dokumentace k návrhu databázového systému

Řešení: ( x = (1 + 2t, 2 5t, 2 + 3t, t); X = [1, 2, 2, 0] + t(2, 5, 3, 1), přímka v E 4 ; (1, 2, 2, 0), 0, 9 )

Kalendář je nástroj, který vám pomůže zorganizovat si pracovní čas. Zaznamenáváme do něj události jako schůzky, termíny odevzdání práce a podobně.

INFORMACE K POKUSNÉMU OVĚŘOVÁNÍ ORGANIZACE PŘIJÍMACÍHO ŘÍZENÍ SŠ S VYUŽITÍM JEDNOTNÝCH TESTŮ

( ) ( ) ( ) 2 ( ) Rovnice s neznámou pod odmocninou II. Předpoklady: 2715

Příklady a návody. Databázová vrstva

Svobodná chebská škola, základní škola a gymnázium s.r.o. Zlomky sčítání a odčítání. Dušan Astaloš. samostatná práce, případně skupinová práce

UŽITÍ DERIVACÍ, PRŮBĚH FUNKCE

Přístupový systém VX800N. Vid

JAK PŘIDAT UŽIVATELE PRO ADMINISTRÁTORY

Zaměstnanec má dvě možnosti, jak je za tuto práci přesčas odměněn - práce přesčas je buď proplacena, nebo za práci přesčas čerpá náhradní volno.

Funkce rostoucí, funkce klesající I

Zvyšování kvality výuky technických oborů


Rostislav Horčík. 13. října 2006

Kvantové počítače algoritmy (RSA a faktorizace čísla)

Rychlý návod na použití

Kvadratické rovnice pro studijní obory

3.2.4 Podobnost trojúhelníků II

Př. 3: Dláždíme čtverec 12 x 12. a) dlaždice 2 x 3 12 je dělitelné 2 i 3 čtverec 12 x 12 můžeme vydláždit dlaždicemi 2 x 3.

1. Programování, typy programovacích jazyků, historie.

Svobodná chebská škola, základní škola a gymnázium s.r.o. pochopení pojmů a výpočtů objemů a obvodů

Rovnice s neznámou pod odmocninou a parametrem

Lineární algebra. Vektorové prostory

Nyní jste jedním z oněch kouzelníků CÍL: Cílem hry je zničit soupeřovy HERNÍ KOMPONENTY:

Čl. 1 Smluvní strany. Čl. 2 Předmět smlouvy

IMPORT A EXPORT MODULŮ V PROSTŘEDÍ MOODLE

Kapitola I - Množiny bodů daných vlastností I.a Co je množinou všech bodů v rovině, které mají od daných dvou různých bodů stejnou vzdálenost? I.

Teorie grafů. Bedřich Košata

Jan Paseka. Masarykova Univerzita Brno. 3. SOUSTAVY LINEÁRNÍCH ROVNIC p.1/57

Zřizování věcných břemen na pozemcích ve vlastnictví města Zábřeh

Pingpongový míček. Petr Školník, Michal Menkina. TECHNICKÁ UNIVERZITA V LIBERCI Fakulta mechatroniky, informatiky a mezioborových studií

Paradigmata programování 1

Nakupte více, získejte více!

Zateplovací systémy Baumit. Požární bezpečnost staveb PKO PKO PKO

Pracovní ukázka vstupního testu DSA 1.

Liga mladších žáků 2000 ( ). Utkání zahajuje ročník 2000 Liga starších žáků 1998 ( )

Cíl hry Cílem hry je získat co nejméně trestných bodů. Každá hra se skládá z deseti kol.

1. Kruh, kružnice. Mezi poloměrem a průměrem kružnice platí vztah : d = 2. r. Zapíšeme k ( S ; r ) Čteme kružnice k je určena středem S a poloměrem r.

Maják. Všeobecně. Aktivace zapojených funkcí

Téma 8. Řešené příklady

Mechanika tuhého tělesa. Dynamika + statika

PROVÁDĚCÍ PŘEDPIS K BURZOVNÍM PRAVIDLŮM

Výsledky testování školy. Druhá celoplošná generální zkouška ověřování výsledků žáků na úrovni 5. a 9. ročníků základní školy. Školní rok 2012/2013

Úpravy skříní a čelních ploch pro úchopovou lištou

PŘÍRUČKA K POUŽÍVÁNÍ APLIKACE HELPDESK

Herní plán. Magic Stars

ČL. 22 TVŮRCE TRHU, JEHO REGISTRACE, PRÁVA A POVINNOSTI Tyto technické podmínky provozu uvádějí podrobnosti k Pravidlům pro aukční obchody.

Základní chemické pojmy a zákony

Katedra matematiky Matematika a byznys Příklady odhadů a předpovědí časových posloupností

Rámcová osnova modulu

Číslo projektu: CZ.1.07/1.5.00/ Název projektu: Inovace a individualizace výuky

Modul účetnictví: Kontrolní výkaz DPH (SK) Podklady ke školení

Jan Březina. Technical University of Liberec. 17. března 2015

GYMNÁZIUM, OLOMOUC, ČAJKOVSKÉHO 9 Kriteria hodnocení pro 1. kolo přijímacích zkoušek pro školní rok 2016/17

Jakub Juránek Určete počet kvádru, jejichž velikosti hran jsou přirozená čísla nejvýše rovná deseti. Kolik je v tomto počtu krychlí?

MS WORD 2007 Styly a automatické vytvoření obsahu

Reg. č. projektu: CZ 1.04/ /A Pracovní sešit

Přijímací řízení FZV UP pro akademický rok 2016/2017

Analytická geometrie ( lekce)

Pohyb v listu. Řady a posloupnosti

Vztah mezi dvěma čísly, které se rovnají, se nazývá rovnost, jako například : ( 2) 3 = 8 4 = 2 ; 16 = 4 ; 1 = 1 a podobně. 2

2. Věková a vzdělanostní homogamie párů žijících v manželství a v nesezdaných soužitích

Isingův model. H s J s s h s

Zákonitosti, vztahy a práce s daty

Systém sociálních dávek a rodičovských příspěvků přináší rodičům v letošním roce řadu změn. Zde je jejich kompletní přehled:

Programování 4. hodina. RNDr. Jan Lánský, Ph.D. Katedra informatiky a matematiky Fakulta ekonomických studií Vysoká škola finanční a správní 2015

Transkript:

Rozvrhování zaměstnanců 23. dubna 2014 1 Úvod 2 Rozvrhování volných dnů 3 Rozvrhování směn 4 Cyklické rozvrhování směn 5 Rozvrhování pomocí omezujících podmínek

Rozvrhování zaměstnanců Jedná se o problém přípravy pracovních rozvrhů a přiřazení zaměstnanců na směny tak, aby byly pokryty požadavky na počty zaměstnanců, které se v průběhu času liší Uvažované problémy rozvrhování volných dnů (základní problém) rozvrhování směn (obecný problém) cyklické rozvrhování směn (speciální případ) Aplikace rozvrhování telefonních operátorů rozvrhování sester v nemocnici rozvrhování policejních zaměstnanců rozvrhování v dopravě (posádky letadel, řidiči autobusů)... Hana Rudová, FI MU: Rozvrhování zaměstnanců 2 23. dubna 2014

Problém rozvrhování volných dnů Nalezněte minimální počet zaměstnanců R, kteří jsou požadováni na pokrytí 7-denního týdne tak, že platí stanoven požadavek na každý pracovní den n j, j = 1... 7 n 1 je neděle, n 7 je sobota každý zaměstnanec má k 1 volných víkendů z každých k 2 víkendů každý zaměstnanec pracuje přesně 5 ze 7 dnů od neděle do soboty každý zaměstnec pracuje nejvýše 6 po sobě jdoucích dnů Hana Rudová, FI MU: Rozvrhování zaměstnanců 3 23. dubna 2014

Dolní hranice počtu zaměstnanců Omezení víkendu z k2 víkendů každý zaměstnanec pracuje k2 k1 víkendů n = max(n 1, n 7 ) (k 2 k 1 )R k 2 n, tj. k2 n R k 2 k 1 Omezení celkového požadavku 5R 7 j=1 n j, tj. R 1 5 Maximální denní požadavek 7 j=1 n j R max(n 1,..., n 7 ) Hana Rudová, FI MU: Rozvrhování zaměstnanců 4 23. dubna 2014

Algoritmus a příklad (krok 1) Den 1 2 3 4 5 6 7 Ne Po Út St Čt Pá So Zaměstnanců 3 5 5 5 7 7 3 Zaměstnanec požaduje volné 3 víkendy z 5: k 1 = 3, k 2 = 5 1 Spočítej minimální počet zaměstnanců R je rovno maximu ze tří omezení dolní hranice 5 3 R = 8 5 3 3 + 5 + 5 + 5 + 7 + 7 + 3 R = 7 5 R max(3, 5, 5, 5, 5, 7, 7, 3) = 7 R = 8, n = 3 Hana Rudová, FI MU: Rozvrhování zaměstnanců 5 23. dubna 2014

Algoritmus a příklad (krok 2) 2 Rozvrhuj volné víkendy 1 přiřaď do prvního volného víkendu prvních (R n) zaměstnanců 2 přiřaď do druhého volného víkendu dalších (R n) zaměstnanců 3 opakuj tento proces cyklicky zaměstnanec 1 je brán jako následující zaměstnanec po zaměstnanci R R n = 8 3 = 5 So Ne Po Út St Čt Pá So Ne Po Út St Čt Pá So Ne Po Út St Čt Pá So 1 X X X X X 2 X X X X X 3 X X X X X 4 X X X X X 5 X X X X 6 X X X X 7 X X X X 8 X X X Hana Rudová, FI MU: Rozvrhování zaměstnanců 6 23. dubna 2014

Algoritmus (krok 3) 3 Urči dodatečné páry volných dnů celkový počet volných dnů: 2R (každý má dva dny v týdnu volné) (R n) volných sobot a (R n) volných nedělí je už určeno (2R 2n) 2n volných dnů musí být přiřazeno S j přebytek zaměstnanců v j-tém dni S j = R n j pro j = 2,..., 6 S 1 = n n 1 S 7 = n n 7 7 S j = j=1 6 (R n j ) + n n 1 + n n 7 = j=2 = 5R 7 j=1 n j + 2n 2n z omezení celkového požadavku 5R 7 j=1 n j 0 Hana Rudová, FI MU: Rozvrhování zaměstnanců 7 23. dubna 2014

Algoritmus a příklad (krok 3) Iterativně konstruuj seznam n párů volných dnů: 1 vyber den k takový, že S k = max(s 1,..., S 7 ) 2 vyber libovolný i k takový, že S i > 0 jestliže S i = 0 pro všechna i k, nastav i = k 3 přidej pár (k, i) do seznamu a sniž S i a S k o 1 Opakuj tento postup n-krát páry stejných volných dnů (k, k) mohou být na konci seznamu Příklad: Ne Po Út St Čt Pá So Den 1 2 3 4 5 6 7 S j 0 3 3 3 1 1 0 2 2 1 2 0 1 seznam párů volných dnů (n = 3): (Po,Út), (Út,St), (Út,St) Hana Rudová, FI MU: Rozvrhování zaměstnanců 8 23. dubna 2014

Algoritmus (krok 4) 4 Přiřazení párů volných dnů v týdnu 1 1 rozděl zaměstnance do kategorií (i = 1) Kategorie Víkend i Týden i Víkend i + 1 T1 volný nejsou třeba volné dny volný T2 volný 1 volný den potřeba zaměstnaný T3 zaměstnaný 1 volný den potřeba volný T4 zaměstnaný 2 volné dny potřeba zaměstnaný T 3 + T 4 = n (plyne z týdne i) T 2 + T 4 = n (plyne z týdne i + 1) T 2 = T 3 páruj T2 a T3 2 přiřaď páry volných dnů nejprve přiřaď páry volných dnů T4 zaměstnancům přiřaď T3 a T2: T3 je dřívější den páru, T2 je pozdější Hana Rudová, FI MU: Rozvrhování zaměstnanců 9 23. dubna 2014

Algoritmus (krok 5) 5 Přiřazení párů volných dnů v týdnu i 1 rozděl zaměstnance do kategorií 2 přiřaď páry volných dnů 1 pokud existuje pár stejných prvků (k, k) týden i je rozvrhován stejně jako týden 1, nezávisle na týdnu (i 1) 2 pokud jsou všechny páry různé všichni zaměstnanci typu T3 a T4 v týdnu i jsou přiřazeni stejnému páru volných dnů, který dostali od týdne (i 1) T4 má oba dny volné T3 dostane dřívější den z určeného páru Hana Rudová, FI MU: Rozvrhování zaměstnanců 10 23. dubna 2014

Příklad (krok 4+5) Kategorie Víkend i Týden i Víkend i + 1 T1 volný nejsou třeba volné dny volný T2 volný 1 volný den potřeba zaměstnaný T3 zaměstnaný 1 volný den potřeba volný T4 zaměstnaný 2 volné dny potřeba zaměstnaný Seznam párů volných dnů (n = 3): A:(Po,Út), B:(Út,St), C:(Út,St) So Ne Po Út St Čt Pá So Ne Po Út St Čt Pá So Ne 1 X T1 X X T2 X A 2 X T1 X X T2 X B 3 X T2 X A T3 A X X 4 X T2 X B T3 B X X 5 X T2 X C T3 C X X 6 T3 A X T1 X X X 7 T3 B X T1 X X X 8 T3 C X T2 X C Hana Rudová, FI MU: Rozvrhování zaměstnanců 11 23. dubna 2014

Příklad II. (pár stejných volných dnů) Den 1 2 3 4 5 6 7 Ne Po Út St Čt Pá So Zaměstnanců 1 0 3 3 3 3 2 Zaměstnanci požadují 1 volný víkend ze 3 [ ] 3 2 R = 3 R k2 n 3 1 k 2 k 1 [ ] 1 + 0 + 3 + 3 + 3 + 3 + 2 R = 3 R 1 7 5 5 j=1 j n R max(1, 0, 3, 3, 3, 3, 3, 2) = 3 R max(n 1,..., n 7 ) R = 3, n = 2 Hana Rudová, FI MU: Rozvrhování zaměstnanců 12 23. dubna 2014

Příklad II. (dokončení) R n = 3 2 = 1 víkendů volných So Ne Po Út St Čt Pá So Ne Po Út St Čt Pá So Ne 1 X X 2 X X 3 X X Ne Po Út St Čt Pá So Den 1 2 3 4 5 6 7 S j 1 3 0 0 0 0 0 0 2 1 0 Seznam párů volných dnů (n = 2): A:(Ne,Po), B:(Po,Po) So Ne Po Út St Čt Pá So Ne Po Út St Čt Pá So Ne Po 1 X T2 X B T4 A A T3 B 2 T3 B X T2 X B T4 A A 3 T4 A A T3 B X T2 X B Hana Rudová, FI MU: Rozvrhování zaměstnanců 13 23. dubna 2014

Diskuse k algoritmu Každý zaměstnanec má alespoň k 1 víkendů z k 2 víkendů volných Každý zaměstnanec pracuje přesně 5 dnů v týdnu od neděle do soboty Žádný zaměstnanec nepracuje více než 5 po sobě jdoucích dnů, pokud jsou všechny páry volných dnů různé Lze také ukázat, že žádný zaměstnanec nepracuje více než 6 po sobě jdoucích dnů, když jsou některé páry volných dnů stejné Algoritmus dává dolní hranici na počet zaměstnanců Algoritmus přiřazuje volné dny, než aby se snažil splnit minimální denní požadavky Hana Rudová, FI MU: Rozvrhování zaměstnanců 14 23. dubna 2014

Rozvrhování směn Problém rozvrhování volných dnů různé vzorky jsou přiřazovány v rámci cyklu cena přiřazení zaměstnance ke vzorku není závislá na vzorku vzorky mají stejnou cenu řešení problému relativně snadné cíl: minimalizace celkového počtu zaměstnanců Směna: množina period, kdy zaměstnanec pracuje často je směna chápána jako množina po sobě jdoucích period př. denní směna 6:00-18:00, noční směna 18:00-6:00 Problém rozvrhování směn cyklus je dán předem např. 1 den je cyklus, časová jednotka (perioda) je hodina je dáno několik vzorků směn s odlišnou cenou cíl je minimalizovat celkovou cenu Hana Rudová, FI MU: Rozvrhování zaměstnanců 15 23. dubna 2014

Značení m period V periodě i, i = 1,..., m je potřeba b i zaměstnanců n vzorků směn Každý zaměstnanec přiřazen právě jednomu vzorku Vzorek směny j je vektor (a 1j, a 2j,..., a mj ) a ij = 1: i je pracovní perioda a ij = 0: jinak Cena přiřazení zaměstnance na směnu j: c j x j : proměnná reprezentující počet zaměstnanců přiřazených ke směně j Cíl: minimalizace celkové ceny přiřazených zaměstnanců Hana Rudová, FI MU: Rozvrhování zaměstnanců 16 23. dubna 2014

Model celočíselného programování Minimalizace c 1 x 1 + c 2 x 2 + + c n x n za předpokladu a 11 x 1 + a 12 x 2 + + a 1n x n b 1 a 21 x 1 + a 22 x 2 + + a 2n x n b 2 a m1 x 1 + a m2 x 2 + + a mn x n b m x j 0 j = 1,..., n kde x 1,..., x n jsou celá čísla V maticovém zápisu: minimalizace c x za předpokladu Ax b x 0 Problém je NP-těžký, nicméně A má často speciální tvar např. směna je dána jako kontinuální posloupnost 1 platí: řešení tohoto lineárního programu je vždy celočíselné Hana Rudová, FI MU: Rozvrhování zaměstnanců 17 23. dubna 2014

Příklad: rozvrhování směn v obchodě (kontinuální posloupnost 1) Obchod otevřen od 10:00 do 21:00 5 vzorků (typů) směny Vzorek Doba Hodin Cena 1 10-18 8 50 2 13-21 8 60 3 12-18 6 30 4 10-13 3 15 5 18-21 3 16 Požadavky na počet zaměstnanců v obchodě Hodina 10 11 12 13 14 15 16 17 18 19 20 Počet zaměstnanců 3 4 6 4 7 8 7 6 4 7 8 Lineární relaxace c = (50, 60, 30, 15, 16) A = Řešení (x 1, x 2, x 3, x 4, x 5 ) = (0, 0, 8, 4, 8) 1 0 0 1 0 1 0 0 1 0 1 0 1 1 0 1 1 1 0 0 1 1 1 0 0 1 1 1 0 0 1 1 1 0 0 1 1 1 0 0 0 1 0 0 1 0 1 0 0 1 0 1 0 0 1 b = Hana Rudová, FI MU: Rozvrhování zaměstnanců 18 23. dubna 2014 3 4 6 4 7 8 7 6 4 7 8

Cyklické rozvrhování směn Cyclic Staffing Problem Další problém rozvrhování směn, který je polynomiálně řešitelný Cíl: minimalizace ceny přiřazení zaměstnanců do m period za předpokladu dostatečné množství zaměstnanců každou periodu i vzhledem k b i každý zaměstanec pracuje k po sobě jdoucích period a je volný následujících m k period Poznámka k číslování period po periodě m opět následuje perioda 1 Příklad: (3, 5) problém A = 1 0 0 1 1 1 1 0 0 1 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 Hana Rudová, FI MU: Rozvrhování zaměstnanců 19 23. dubna 2014

Řešení problému cyklického rozvrhování směn Nejedná se o problém s kontinuálními 1 Lze ukázat: řešení lineární relaxace problému je velmi blízké řešení celočíselného programu A tedy: následující algoritmus vede k optimálnímu řešení Algoritmus 1 řešením lineární relaxace dostaneme x 1,..., x n pokud jsou x 1,..., x n celá čísla máme řešení, jinak 2 vytvoř linerární programy LP a LP s následujícími přidanými omezeními LP : x 1 + + x n = x 1 + + x n LP : x 1 + + x n = x 1 + + x n LP vždy nalezne optimální celočíselné řešení LP nemusí být řešitelný LP řešení optimální pro LP pokud má LP celočíselné optimální řešení, pak optimální řešení LP je lepší z řešení LP a LP Hana Rudová, FI MU: Rozvrhování zaměstnanců 20 23. dubna 2014

Programování s omezujícími podmínkami: globální podmínky Připomenutí: all_different(list) všechny proměnné různé serialized(starts,durations) disjunktivní rozvrhování cumulative(starts,durations,resources,limit) reprezentace kumulativního zdroje disjoint2(rectangles) nepřekrývání obdélníků reprezentace alternativního i kumulativního zdroje Omezení na počet prvků: global_cardinality(list,[key-count _]) omezení na počet prvků daného typu v seznamu pro každý prvek Key-Count seznamu KeyCounts platí: Count prvků seznamu List se rovná klíči Key každé Key je celé číslo a vyskytuje se mezi klíči maximálně jednou?- A in 1..3, B in 1..3, global_cardinality( [A,B], [1-N,2-2]). A = 2, B = 2, N = 0 Hana Rudová, FI MU: Rozvrhování zaměstnanců 21 23. dubna 2014

global cardinality Vytvoření rozvrhu pro zaměstnance pracující na směny A = {R,D,N,Z,V} = {1,2,3,4,5}... ráno, den, noc, záloha, volno P = {Petr,Pavel,Marie,... } W = {Po,Út,St,Čt,... } Petr R N V R Pavel R Z R N Marie N V D D... Matice doménových proměnných: PetrPo, PetrUt,..., PavelPo,... Hana Rudová, FI MU: Rozvrhování zaměstnanců 22 23. dubna 2014

global cardinality II Každý den: minimální a maximální počet zaměstnanců každou směnu R1 in MinRano1..MaxRano1, D1 in MinDen1..MaxDen1,... global_cardinality( [PetrPo,PavelPo,MariePo,... ], [1-R1,2-D1,...,5-V1] ) Pro každého zaměstnance: minimální a maximální počet typu směny za týden R2 in MinRano2..MaxRano2, D2 in MinDen2..MaxDen2,... global_cardinality( [PetrPo,PetrUt,...,PetrNe], [1-R2,2-D2,...,5-V2] ) Hana Rudová, FI MU: Rozvrhování zaměstnanců 23 23. dubna 2014