days Number of days in the horizon, def: 7 history Length of the history in days, def: 0 timeSlotLength Length of a time slot in minutes, def: 15 shiftSlotLength Length of a time slots for shifts in minutes, def: 60 shiftTypes Number of shift types, def: 3 shiftAvg Average number of employees working each shift type per day, def: 3 weekendFactor Percentage of shiftAvg to use for weekends, [0;1], def: .5 shiftVariation Factor roughly describing that the most frequent shift type should occur about shiftVariation times as often as the rarest one, >= 1, def: 2 shiftSequenceRegularity Probability keep the same shift when working on consecutive days, [0;1], def: .95 dayDifference Target difference between occurrences of the same shift type at different days, def: 0 minShiftStart Earliest start time of shifts in the day (in shift time slots), def: 3 maxShiftStart Latest start type of shifts in the day (in shift time slots), def: 22 minShiftInstances Minimum number of instances per shift type, def: 1 maxShiftInstances Maximum number of instances per shift type, def: 3 shiftInstanceDifference Maximum difference (number of shift time slots) in starting times and lengths of shift instances with same shift type, def: 3 shiftInstanceConstraintType How to constrain the number of shift instances, one of NONE, GLOBAL_MAX (=upper bound across all shift types), MIN_MAX (=same bounds per type), PER_TYPE_MAX (=individual upper bound per type) minShiftLength Minimum shift length in shift time slots, def: 8 maxShiftLength Maximum shift length in shift time slots, def: 10 shiftDefinitionTightness Factor describing how tight shift type definitions should constrain the shift types, <= 1 with 1 as the most tight, def: 1 contracts Number of contracts, def: 1 contractVariation Factor roughly describing that the most frequent contract should occur about contractVariation times as often as the rarest one, >= 1, def: 1 contractTimes List of target work times in minutes across the whole horizon for each contract minOn List of minimum shift sequence lengths for each contract maxOn List of maximum shift sequence lengths for each contract minOff List of minimum off-shift sequence lengths for each contract maxOff List of maximum off-shift sequence lengths for each contract timeRestriction How to restrict the total work time, one of NONE or LOCAL (=per contract) timeRestrictionFactor Factor describing how narrow the range of work time values should be, [0;1] with 0 = no restriction, 1 = same value for all employees, def: .9 workloadTightness Factor describing how tight the workload constraints should be, [0;1] with 0 = loose borders, 1 = tight borders, def: 1 workloadRestrictionType How to include the workload constraint, one of MIN, MAX, MIN_MAX weekTimeRestriction How to restrict the weekly work time, one of NONE or LOCAL (=per contract) weekTimeRestrictionFactor Factor describing how narrow the range of weekly work time values should be, [0;1] with 0 = no restriction, 1 = same value for all employees, def: .5 patternRestriction How to restrict shift sequences, one of NONE, LOCAL (=per contract) or GLOBAL patternRestrictionCount Number of sequences to restrict per contract, def: 2 minShiftPreferences Minimum number of shift preferences per employee, def: 1 maxShiftPreferences Maximum number of shift perferences per employee, def: 5 minShiftPreferenceWeight Minimum weight of shift preferences, def: 1 maxShiftPreferenceWeight Maximum weight of shift preferences, def: 5 breakTypes Number of break types, def: 3 lunchBreakFactor Percentage of break types representing a lunch break, def: .2 maxBreakLength Maximum break length in time slots, def: 4 minBreakDistance Minimum working time between breaks in time slots, def: 3 maxBreakDistance Maximum working time between breaks in time slots, def: 24 breakConfigurationType How to create break configurations, one of COMMON (=one config for all), PER_SHIFT_TYPE, PER_CONTRACT, PER_SHIFT_LENGTH breakTimeFractionConstraintType How to constrain the break time fraction, one of NONE, MIN, MAX, MIN_MAX breakTimeFractionRestriction Factor describing how narrow the range of break time fraction values should be, [0;1] with 0 = no restriction, 1 = same value for shifts in this configuration, def: .5 breakTimeFractionFocus Factor describing where to focus the break time fraction, [0;1] with lower values for focus in the lower range allowed by break types and configuration and higher values for focus in the higher range, def: .5 skills Number of skills, def: 5 skillMin Minimum probability for employees to have a certain skill, [0;1], def: .3 skillMax Maximum probability for employees to have a certain skill, [0;1], def: .8 skillDistribution Factor describing whether skills should be evenly distributed or concentrated on employees, [0;1] with 0 = some employees with very large skill sets and some with very small skill sets, 1 = employees with evenly distributed skill sets, def: .5 taskTypes Number of task types taskGenerationType Whether to allow split tasks, one of NO_BREAKS, WITH_BREAKS, WITH_BREAKS_AND_LONG, WITH_PREEMPTION minTaskLength Minimum task length in time slots, def: 1 maxTaskLength Maximum task length in time slots, def: 8 commonTaskFactor Probability to try to make indivisible tasks common, [0;1], def: .5 taskWindowRange Maximum number of time slots to add to the task length for setting the task time windows, def: 4 maxReAcquaintance Maximum re-acquaintance period in time slots, def: 1 taskDistanceRange Maximum task-free distance between tasks in time slots, def: 3 demandType Type of demand to generate, one of TASKS, TIME, SHIFTS, def: TASKS demandUseMax Whether to specify a maximum for TIME and SHIFTS demand types, def: true demandSkills Maximum number of skills to require for TIME and SHIFT demand types, def: 0 demandSlack Factor describing how narrow the range for the requirements should be, >= 0 describing the maximum slack relative to the minimum requirement, def: 0 demandTimeBlock Block size for defining TIME demand, def: timeSlotLength