Modeling the influence of excessive workloads on productivity or quality



This information is part of the Business Simulation Library (BSL).

Fatigue is modeled as a smooth of the normalized input u which is indicating the current workload with regard to capital equipment or workers. The current workload will be normalized by dividing the input u by a constant or a variable reference workload (referenceWorkload or u_ref, respectively). The timeToGetFatigued describes the time constant for the smooth and indicates the lag between beginning to work at an excessive level and the onset of the full effect on productivity (or quality).

Janoscheks growth curve is used to model the nonlinear effect of a prolonged work intensity. It describes a negatively sloping s-shaped curve that will pass through the reference point (1,1). The upper bound of the effect (effectMax) must be given slightly above 1.0 as the curve will collapse in all other cases. If the effect is to be clipped at 1.0 then the parameter clipEffect should be set to true.


  • The workload (and its reference value) will typically be some rate (e.g., hours worked per month, output per hour etc.).

  • Jim Hines [6, p. 82] uses overtime as the main driver of fatigue. See also on his Molecules of Structure website (→Effect of Fatigue).

  • The parameter init in the Advanced tab allows to select →InitializationOptions:
    • FixedValue (default) will use the parameter initialFatigue to determine the initial output of the smoothed, normalized workload.

    • SteadyState will set the initialFatigue to the normalized workload at the start of the simulation.

    • Free there will be no initial equation and thus the solver is free to find an initial value for fatigue using initialFatigue as an initial guess.

See also

SmoothN, JanoschekNegative

Parameters (11)



Type: Time (s)

Description: Time constant for the exponential smooth of overtime in periods


Value: 1

Type: Rate (1/s)

Description: Constant reference workload (optinal)


Value: 1

Type: Integer

Description: Delay order of the smooth for workload


Value: 1.1

Type: Real

Description: The upper bound for the effect of less work than normal on PDY (MAX >= 1)


Value: 0

Type: Real

Description: The lower bound for the effect of fatigue on PDY (MIN >= 0)


Value: 10

Type: Real

Description: High values indicate a steep gradient for the lookup curve (JanoschoekNegative.growthRate)


Value: true

Type: Boolean

Description: = true, if the reference workload is given by a constant parameter


Value: false

Type: Boolean

Description: = true, if the maximum effect is to be 1.0


Value: 1

Type: Real

Description: Initial Output (fatigue.initialValue)


Value: modelSettings.init

Type: InitializationOptions

Description: Provide InitializationOptions (Free, FixedValue, SteadyState)


Value: true

Type: Boolean

Description: = true, if strict limits with noEvent(..) (clippedEffect.strict)

Connectors (3)


Type: RealInput

Description: Input of workload


Type: RealInput

Description: Input for the reference workload (optional)


Type: RealOutput

Description: Effect on Productivity given as a multiplier

Components (7)


Type: ModelSettings


Type: DmnlInput

Description: Workload divided by the normal workload


Type: ConstantConverter

Description: Constant reference value for the workload (optional)


Type: JanoschekNegative

Description: The multiplicative effect of fatigue on productivity or quality


Type: SmoothN

Description: Fatigue is an n-th order smooth of overtime


Type: Clip

Description: Clip Effect to only allow values within the closed unit interval


Type: PassThrough

Description: Leave the effect unchanged