This commit is contained in:
Margot Sauter 2022-11-09 18:06:10 +01:00
parent 7cb96051a3
commit 8ff6ffa559
4 changed files with 84 additions and 94 deletions

View File

@ -8,98 +8,92 @@ config:
task_re: "[ ,/]+" task_re: "[ ,/]+"
tasks: tasks:
hotemetoten: hotemetoten:
personen: [MrNGm, Pepper, Joost, Annelies] personen: [Lyra, mrngm, Quis]
workload: 4 workload: 4
req: [1, 1, 1] req: [1, 1, 1]
hardcode: hardcode:
- MrNGm - Lyra
# - Pepper - mrngm
- Joost - Quis
- Annelies
lookup: [hotemetoten] lookup: [hotemetoten]
superkok: superkok:
req: [1, 1, 1] req: [1, 1, 1]
personen: [lynn, pepper, Wassasin] personen: [MacGyver, Loki, Pepper]
workload: 4 workload: 4
lookup: [superkok] lookup: [superkok]
hardcode: hardcode:
- MacGyver
- Loki
- Pepper - Pepper
- Wassasin snijden:
- lynn req: [2, 5, 3]
drankmanagen: workload: 2
req: [1, 1, 1] personen: iedereen
personen: [MacGyver] lookup: [snijden]
workload: 1
lookup: [drankmanagen]
koken: koken:
req: [2, 3, 2] req: [2, 3, 2]
workload: 3 workload: 3
personen: liefhebbers personen: liefhebbers
lookup: [koken, kookhulp, hulpkoken] lookup: [koken, kookhulp, hulpkoken]
afwassen:
req: [3, 6, 6]
workload: 2
personen: iedereen
lookup: [afwassen]
schoonmaken: schoonmaken:
req: [3, 4, 4] req: [2, 4, 4]
workload: 2 workload: 2
personen: iedereen personen: iedereen
lookup: [schoonmaken] lookup: [schoonmaken]
snackdealen: snackdealen:
req: [4, 5, 5] req: [2, 4, 4]
workload: 1 workload: 1
personen: iedereen personen: iedereen
lookup: [hapjes, snackdealen] lookup: [hapjes, snackdealen]
fotograferen: fotograferen:
req: [2, 2, 2] req: [2, 3, 3]
workload: 1 workload: 1
personen: liefhebbers personen: liefhebbers
lookup: [fotograferen] lookup: [fotograferen]
afwassen:
req: [4, 4, 4]
workload: 2
personen: iedereen
lookup: [afwassen]
snijpieten:
req: [3, 4, 4]
workload: 2
personen: iedereen
lookup: [snijden]
pendelen: pendelen:
req: [2, 1, 2] req: [1, 1, 1]
workload: 2 workload: 2
personen: liefhebbers personen: liefhebbers
lookup: [pendelen] lookup: [pendelen]
people: people:
- Pepper
- Joost
- MrNGm
- Annelies
- Wassasin
- lynn
- Roflincopter
- lucus
- Weasel
- ElizaAntoine
- Lyra - Lyra
- MacGyver - mrngm
- Abel
- SyntaxTerror
- carrot
- Blondie
- Bwesterb
- M-ou-se
- PaxSum
- Petervdv
- Margot
- Daan
- Laurens
- yorick
- Minnozz
- Sjors
- Quis - Quis
- Nova - MacGyver
- Loki
- Pepper
- Abel
- Alexandra
- Annelies
- Annemiek: # niet op zondag
dagen: [0,1]
- avel
- Ayke
- blu
- carrot
- eliza
- Farnaz
- Harm
- Joost
- Leonie
- lucus
- Margot
- Marley
- Marlon - Marlon
- Aaron - Minnozz
- AlphaCentauri - Nova
- BOBMarlie - PaxSum
- Martijn - petervdv
- Colin - phedny
- Blu - PP
- Hannah - Rian
- Sjors
- SyntaxTerror
- Tanja
- Thom
- yorick

View File

@ -6,7 +6,7 @@ import re
import subprocess import subprocess
from collections import OrderedDict from collections import OrderedDict
import glpm import glpm
conf = yaml.load(open('config.yaml', 'r')) conf = yaml.safe_load(open('config.yaml', 'r'))
config = conf['config'] config = conf['config']
config['ignore'].append('') config['ignore'].append('')
tasks = OrderedDict(conf['tasks']) tasks = OrderedDict(conf['tasks'])

View File

@ -18,7 +18,6 @@ set D := 1..D_count;
/* aanwezigheid x workload for that day */ /* aanwezigheid x workload for that day */
param Costs{p in P}, integer, >= 0; param Costs{p in P}, integer, >= 0;
/* Person p likes to solve jobs j */ /* Person p likes to solve jobs j */
param L{p in P, j in J} default 0, binary; param L{p in P, j in J} default 0, binary;
@ -53,7 +52,7 @@ s.t. max_load_person{p in P, d in D}: sum{j in J} A[p,j,d] <= max_load[p,d];
#s.t. min_load_person{p in P}: sum{j in J, d in D} A[p,j,d] >= min_load[p]; #s.t. min_load_person{p in P}: sum{j in J, d in D} A[p,j,d] >= min_load[p];
/* A person does not perform the same job on all days */ /* A person does not perform the same job on all days */
/*s.t. duplicate_jobs{p in P, j in J}: sum{d in D} A[p,j,d] <= D_count-1;*/ s.t. duplicate_jobs{p in P, j in J}: sum{d in D} A[p,j,d] <= D_count-1;
s.t. max_load_person_total{p in P}: (sum{d in D, j in J} A[p,j,d] * Wl[j]) <= ML; s.t. max_load_person_total{p in P}: (sum{d in D, j in J} A[p,j,d] * Wl[j]) <= ML;

View File

@ -1,31 +1,28 @@
Pepper koken, snijden fotograferen, snackdealen Abel fotograferen, afwassen, snijden pendelen, koken
Joost afwassen, koken, snijden fotograferen, snackdealen Alexandra snijden, snackdealen afwassen, schoonmaken
Annelies afwassen, fotograferen, pendelen koken, snijden, snackdealen Annelies afwassen, fotograferen snackdealen
Laurens pendelen, koken, snijden schoonmaken Annemiek schoonmaken, koken pendelen, afwassen
Weasel fotograferen, koken, snijden snackdealen, schoonmaken avel snackdealen snijden, koken, afwassen
Martijn koken, snijden schoonmaken, afwassen blu snijden, snackdealen, pendelen afwassen, schoonmaken
PaxSum koken, snijden, afwassen fotograferen, snackdealen carrot koken, snijden fotograferen, schoonmaken
petervdv snackdealen, pendelen koken, afwassen, schoonmaken, fotograferen eliza snijden, afwassen koken, snackdealen, pendelen
Lyra fotograferen, afwassen, snijden pendelen Farnaz snijden, koken, snackdealen pendelen, afwassen, fotograferen
Nova pendelen, koken, snijden fotograferen, schoonmaken, snackdealen Harm fotograferen, pendelen, afwassen schoonmaken, snackdealen
ElizaAntoine afwassen, schoonmaken, fotograferen koken, snijden, snackdealen, pendelen Joost snijden fotograferen, pendelen, koken, afwassen, schoonmaken, koken
SyntaxTerror fotograferen, snijden, afwassen koken, snackdealen, pendelen Leonie snijden, pendelen, snackdealen fotograferen, schoonmaken
AlphaCentauri snackdealen, schoonmaken, afwassen koken, pendelen, snijden lucus snijden, koken, afwassen schoonmaken
Daan pendelen, fotograferen afwassen, schoonmaken Margot snijden, afwassen, fotograferen koken, snackdealen, schoonmaken
Lucus koken, snijden, afwassen fotograferen, schoonmaken Marley snijden, afwassen fotograferen, snackdealen
Abel fotograferen, snijden, afwassen schoonmaken, koken Marlon snijden, koken, snackdealen afwassen, schoonmaken
yorick snijden, afwassen fotograferen, schoonmaken Minnozz fotograferen, snijden koken, afwassen, schoonmaken, pendelen, snackdealen
bwesterb snijden, koken afwassen, schoonmaken, snackdealen Nova koken, snijden, pendelen fotograferen, schoonmaken
Quis snijden, koken, snackdealen schoonmaken PaxSum koken, snijden schoonmaken, afwassen
Minnozz snijden, koken schoonmaken, snackdealen, afwassen petervdv snackdealen, pendelen koken, afwassen, fotograferen
Margot snijden, koken, afwassen schoonmaken, snackdealen, fotograferen phedny snijden, snackdealen afwassen, schoonmaken
lynn fotograferen PP koken, snijden pendelen, fotograferen, schoonmaken
Colin Afwassen, schoonmaken, snackdealen koken, snijden Rian snijden, afwassen, snackdealen fotograferen, pendelen
Sjors Pendelen, schoonmaken, snackdealen koken, snijden Sjors snackdealen, pendelen schoonmaken
Blondie fotograferen, afwassen, snackdealen schoonmaken, snijden SyntaxTerror fotograferen pendelen, koken, snackdealen
Roflincopter schoonmaken, snijden, afwassen snackdealen, fotograferen Tanja snijden, afwassen, schoonmaken fotograferen, pendelen
BOBMarlie fotograferen, koken, snijden afwassen, schoonmaken, snackdealen Thom koken, snijden, afwassen fotograferen, snackdealen
Aaron fotograferen, afwassen, snijden koken, schoonmaken, snackdealen, pendelen yorick koken, snijden, afwassen fotograferen
Wassasin koken, snijden, snackdealen fotograferen
carrot pendelen, schoonmaken, koken fotograferen, snackdealen
M-ou-se snijden, snackdealen afwassen, schoonmaken, fotograferen