• Mondriaan
  • Over ons
  • Contact
  • Handleiding
  • Opleiding
  • Aanmelden
  • Mondriaan
  • Over ons
  • Contact
  • Handleiding
  • Opleiding
  • Aanmelden
home/Handleiding/Tips & Tricks/Afdwingen zelfde lokaal bij meerdere deelopdrachten van verschillende grootte

Afdwingen zelfde lokaal bij meerdere deelopdrachten van verschillende grootte

855 views 2 17 maart 2019 Updated on 19 August 2025 petervanhirtum[print-me printstyle="pom-small-grey" tag="span" target=".title-content-print"]

Afdwingen zelfde lokaal bij deelopdrachten van verschillende grootte

We illustreren dit probleem met een geval uit de praktijk.

Probleemstelling

Een school heeft 24 klassen die het praktijkvak “koken” hebben en waarvoor ze een keuken (=lokaal) nodig hebben. De kooklessen worden steeds in blokken gegeven op de volgende manier:

  • 12 3de jaars klassen hebben één blok van 5 en één blok van 3 uur koken (8 uur)
  • 12 4de jaars klassen hebben één blok van 4 en één blok van 3 uur koken (7 uur)

Elke klas heeft dus 2 blokken van ongelijke grootte verspreid over de week (op verschillende dagen) en het is de bedoeling dat een klas steeds in dezelfde keuken zit. De school heeft 7 keukens ter beschikking en de 24 klassen mogen gebruik maken van eender welke keuken. Maar, als een klas X voor haar eerste blok keuken Y toegewezen krijgt, dan moet klas X ook voor het tweede blok keuken Y toegewezen krijgen. Dat is het probleem dat we hier willen oplossen.

Oplossing indien het dezelfde blokgrootte was

Stel dat we een klas hebben die 2 blokken van 4 uur koken heeft in een willekeurig te kiezen keuken uit de set van 7 keukens. Stel dat we willen dat Mondriaan voor elk van die 2 blokken dezelfde keuze maakt. De manier om dit af te dwingen in Mondriaan is als volgt:

  • Maak 1 opdracht van 8 uur in 2 blokken van 4 uur voor de betreffende klas met zijn vak en leerkracht.
  • We maken een lokalengroep van 7 keukens en definiëren die als een OF-groep. We zetten die groep in de kolom “Lokalen” van de opdracht.
  • Het vlagje “Ontdubbelen” laten we uitgevinkt.
  • Eis via een opdrachtspreiding dat er maximaal 4 uur op één dag geplaatst wordt.

De oplossing zou er voor 3VVa als volgt kunnen uitzien (kleuring blokken op “Lokaal”):

We hebben hier 2 deelopdrachten van 4 uur met dezelfde blokgrootte. Er is in de definitie geen enkel verschil tussen beide deelopdrachten. Dat kan men zien in de tab deelopdrachten omdat daar ook maar 1 lijn te zien is voor beide deelopdrachten. Voor dergelijke deelopdrachten waarbij de volledige definitie gelijk is kan het concept NIET “Ontdubbelen” gebruikt worden. Bij niet “Ontdubbelen” worden beide deelopdrachten door de MBE synchroon gehouden wat betreft de keuze-elementen in de opdracht. Kiest een deelopdracht voor lokaal C dan moet de andere ook voor lokaal C kiezen en omgekeerd. Dit soort beperking is enkel mogelijk voor deelopdrachten die in de definitie volledig gelijk zijn en dus in de tab “Deelopdrachten” ook als 1 lijn voorgesteld worden. Het vinkje “Ontdubbelen” wordt op het niveau van de opdracht gezet maar is enkel lokaal afdwingbaar binnen deelopdrachten die dezelfde definitie hebben (op 1 lijn staan in de tab “Deelopdrachten”). Heeft men bijvoorbeeld een opdracht van 10 uur in 2 keer een blok van 2 en 2 keer een blok van 3 dan zouden dit bijvoorbeeld 2 lijnen in de deelopdrachten kunnen zijn. Eén deelopdracht van 4 uur in blokken van 2, en één deelopdracht van 6 uur in blokken van 3. Niet “Ontdubbelen” zal hier dus ook zijn effect hebben maar enkel binnen de deelopdrachten. De 2 blokken van 2 lopen synchroon, en de 2 blokken van 3 lopen synchroon maar onderling kan er geen koppeling zijn tussen een blok van 2 en een blok van 3.

Niet “Ontdubbelen” heeft geen effect bij verschillende deelopdracht definities

We wijzigen de opdracht van 8 uur in blokken van 4 uur naar 2 deelopdrachten: één van 5 uur en één van 3 uur. Verder wijzigen we enkel de opdrachtspreiding naar max 5 uur per dag om de spreiding te garanderen.

De oplossing zou er voor 3VVa als volgt kunnen uitzien (kleuring blokken op “Lokaal”):

Hier zien we dat Mondriaan toch 2 verschillende lokalen gekozen heeft. Dit is een correcte oplossing omdat we weten dat Niet “Ontdubbelen” op de deelopdrachten van eenzelfde soort effect heeft en niet tussen deelopdrachten met een andere definitie.

Dit is echter niet wat we willen. We willen zowel verschillende blokgroottes als dezelfde keukens per klas.

Oplossing met één deelopdrachtype en de hulp van variatypes

Indien we toch gebruik willen maken van Niet “Ontdubbelen” kan dan enkel via opdrachten van hetzelfde deelopdrachttype. Stel dat we de 8 uur van 3VVa als losse uren in de opdracht zetten.

De oplossing zou er voor 3VVa als volgt kunnen uitzien (kleuring blokken op “Lokaal”):

Goed aan deze oplossing is dat elk blokje dezelfde keuken gebruikt maar de blokken worden nu niet gerespecteerd. De spreiding van max 5 uur per dag is wel ok maar dat is verre van voldoende. We moeten een manier bedenken om deze losse uurtjes samen te drijven in een blok van 5 en een blok van 3 uur. We definiëren hiervoor 2 extra variatypes per klas. Variatypes zijn gewoon resources zoals klassen, leekrachten, of lokalen en kunnen dus ook geroosterd worden.

  • Var1_3VVa (noemen we verder V1): zetten we als variatype mee in de opdracht van 8 uur koken voor 3VVa. Hierdoor kan 3VVa enkel geroosterd worden op momenten waarop dit variatype het nog toelaat.
  • Var2_3VVa (noemen we verder V2): dit variatype gebruiken we om het eerste variatype in een patroon te dwingen.

Geroosterd zou het resultaat er als volgt kunnen uitzien. We tonen hier de roosters van 3VVa en de 2 nieuwe variatypes (kleuring blokken op “Lokaal”):

In deze roosters zien we het volgende:

  • 3VVa: de uren zijn nu mooi samengedreven in een blok van 5 en een blok van 3 uur. Elke apart uurtje is samengeroosterd met variatype Var1_3VVa.
  • V1: In de rode blokjes is V1 steeds met V2 geroosterd. In de groene blokjes is V1 met de klas 3VVa geroosterd.
  • V2: In de losse uurtjes is V2 steeds met V1 geroosterd. In de rode blokken van 5 en 3 uur is V2 alleen geroosterd. Dit wil zeggen dat op die plaatsen van 5 en 3 het andere variatype V1 dus vrij is om met de klas 3VVa te staan.

Dus, door een slimme combinatie van deze 2 variatypes en de klas kunnen we het patroon dat we wensen afdwingen. Bekijken we dit in het opdrachtentablad:

De opdracht van 8 uur krijgt als variatype V1 toegewezen op elk uur. V1 is dus een extra resource die meegeroosterd wordt met de klas, het lokaal en de leerkracht. Vervolgens zien we een heel nieuwe extra (“dummy”) opdracht waar we het patroon afdwingen. De opdracht wordt als volgt geconstrueerd:

  • Het rooster bevat 50 uur. We maken een opdracht van 50 uren voor variatype V2.
  • 42 van deze uren roosteren we als losse uurtjes we zetten V2 samen met variatype V1.
  • Vervolgens maken we 2 deelopdrachten, één met een blok van 5 uur en één met een blok van 3 uur waarin V2 alleen (zonder V1) geroosterd wordt. We geven meteen goede startuurlijsten mee van deze blokken.

Doordat V1 enkel in die eerste 42 uur meegeroosterd wordt met V2 is V1 vrij in de andere 8 uur om samen te staan met de klas 3VVa. Maar, omdat V2 (zonder V1) in een blok van 5 en in een blok van 3 geroosterd wordt kan de klas 3VVa (samen met V1) enkel op de plaats van die 2 blokken staan. Dit zorgt er dus voor dat we het juiste patroon afdwingen.

Merk op dat Niet “Ontdubbelen” hier duidelijk speelt voor de keukenkeuze in de kookopdracht van 8 uur voor 3VVa. Voor de extra “dummy” opdracht die we nodig hebben om de variatypes in een patroon te dwingen heeft die nu geen betekenis. De reden dat ze geen betekenis heeft is omdat er hier geen of-takken zijn.

Hadden we ook vensters kunnen gebruiken in plaats van 2 variatypes?

Een terechte vraag. Stel dat we voor 3VVa 2 extra vensters zouden definiëren, een van 5 uur en een van 3 uur groot. Vervolgens maken we een keuzegroep van deze 2 vensters en we zetten die keuzegroep in de kolom “Vensters” van de opdracht. Je zou dan verwachten dat elk van de 8 losse uurtjes een plaats zou vinden in ofwel het venster van 5, ofwel in het venster van 3 uur. Echter, door de keuze NIET “Ontdubbelen” moet elke deelopdracht dezelfde keuze maken voor alle keuzes, dus ook voor de vensters. Dus alle 8 uurtjes gaan ofwel proberen in het venster van 5 of allemaal in het venster van 3 te gaan staan en dat kan uiteraard niet.

Dus neen, dit zou geen oplossing bieden.

Het uitgewerkte voorbeeld

In het uitgewerkte voorbeeld kan men zien hoe dit systeem toegepast werd op 24 klassen.

Download volgende zip-file. Hij bevat het bestand “KeukensMet2Variatypes.ttxml”

  • KeukensMet2Variatypes
Print Friendly, PDF & Email

Didn't find your answer? Contact Us

Vrije klasuren op de randen van het rooster leggen  

time-tech
  • Mondriaan
  • Over ons
  • Contact
  • Handleiding
  • Opleiding
  • Aanmelden
Nieuwste handleidingen
  • Lessen inhalen die vervallen door stageperiodes: methode 2
  • Roosteren op leerlingenniveau
  • Kwaliteitscontrole – Springuren en Vakspreiding
  • XML-Export naar Smartschool Planner en andere systemen
Contact

Neem gerust contact op om een afspraak te maken of om een demo aan te vragen.

E-mail: info@time-tech.be

Opleidingen
Vandaag
maandag
dinsdag
woensdag
donderdag
vrijdag
zaterdag
zondag
m
d
w
d
v
z
z
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
  • © 2021 time-tech.be. Alle rechten voorbehouden. Privacy Policy | Cookiebeleid

Veelgezochte termen:Outputrooster, Volgordespreiding, Partitie