max wl constraint, less cooks on thursday
This commit is contained in:
parent
6b72a56fc6
commit
fae35f1ebf
@ -33,7 +33,7 @@ tasks:
|
||||
workload: 1
|
||||
lookup: [drankmanagen]
|
||||
koken:
|
||||
req: [4, 2, 2, 2]
|
||||
req: [3, 2, 2, 2]
|
||||
workload: 3
|
||||
personen: liefhebbers
|
||||
lookup: [koken, kookhulp, hulpkoken]
|
||||
@ -58,7 +58,7 @@ tasks:
|
||||
personen: iedereen
|
||||
lookup: [afwassen]
|
||||
snijpieten:
|
||||
req: [5, 4, 4, 4]
|
||||
req: [3, 4, 4, 4]
|
||||
workload: 2
|
||||
personen: iedereen
|
||||
lookup: [snijden]
|
||||
|
@ -139,6 +139,7 @@ def write_data(people, tasks, file=sys.stdout):
|
||||
print(glpm.param("D_count", config['days']), file=file)
|
||||
print(glpm.param("P_count", len(people)), file=file)
|
||||
print(glpm.param("J_count", len(tasks)), file=file)
|
||||
print(glpm.param("ML", 6), file=file) # CHANGE THIS
|
||||
print(glpm.param("WL", config['weights']['likes']), file=file)
|
||||
print(glpm.param("WH", config['weights']['hates']), file=file)
|
||||
def write_tasks(people, tasks, file=sys.stdout):
|
||||
|
@ -9,6 +9,7 @@ param D_count, integer, > 0;
|
||||
|
||||
param WL, integer, > 0;
|
||||
param WH, integer, > 0;
|
||||
param ML, integer, > 0;
|
||||
|
||||
set P := 1..P_count;
|
||||
set J := 1..J_count;
|
||||
@ -54,6 +55,8 @@ s.t. max_load_person{p in P, d in D}: sum{j in J} A[p,j,d] <= max_load[p,d];
|
||||
/* 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. max_load_person_total{p in P}: (sum{d in D, j in J} A[p,j,d] * Wl[j]) <= ML;
|
||||
|
||||
/* Each task is allocated */
|
||||
s.t. all_allocated{j in J, d in D}: sum{p in P} A[p,j,d] == R[d, j];
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
Lucus koken schoonmaken, fotograferen
|
||||
Wassasin koken fotograferen
|
||||
linda superkok, snackdealen koken, snijden, afwassen, schoonmaken, fotograferen
|
||||
linda superkok koken, snijden, afwassen, schoonmaken, fotograferen
|
||||
Nova koken, afwassen fotograferen, snackdealen
|
||||
Obfusk koken, afwassen fotograferen, snackdealen, schoonmaken
|
||||
Daan fotograferen, koken schoonmaken
|
||||
|
Loading…
Reference in New Issue
Block a user