Skip to content

Activity Constraints

The following constraints are various ways in which activities may constrain each other, or themselves.

Activity Status

The activity status may constrain the activity in a number of ways. For instance, it may fix the activity to a time, or to a resource, or both. If the activity is fixed to both time and resource, then it will always be scheduled to that resource and at that time, regardless of other constraints that may be broken, as this provides a way of manually overriding the schedule produced by the Dynamic Scheduling Engine.

If an activity is given status Committed or greater (which requires a resource to be specified), then the activity will be normally brought to the front of that resource's pending activities, and will only obey any time constraints if parameter CommittedActivitiesConstraintsOption specifies this.

Full details may be found in the section Activity_Status in the Scheduling Schema Guide

Activities at the Same Location

If there is more than one activity at the same location, then obviously, the Dynamic Scheduling Engine will normally schedule them to the same resource, one after the other. However, if one of the activities is an urgent job, and the other is some routine maintenance, then it may be that the Dynamic Scheduling Engine decides to just do the urgent job, and then travel to some other urgent job nearby, leaving the routine maintenance job to be done later. Often, this is exactly the behaviour that customers want from the scheduling system, but if not, then it is possible to use a constraint called do_on_location_incentive to either encourage or force such activities to be scheduled differently.

Full details of this constraint may be found in the section Activity in the Scheduling Schema Guide

Remote Fulfillment Activities

An activity can be specified as being fulfilled remotely, set via an attribute on either the activity or the activity type. This indicates that the resource does not need to attend the activity location to carry out the work, but can instead carry it out from any location (e.g. their home location or another activity location).

It is still possible to specify a location for these activities, and to set region and availability constraints accordingly. These will work the same as they do if the resource is required to attend the location. However 'add time' and 'duration overhead' will not be applied for remote work activities.

Do on location incentives can also be used to encourage the work to be carried out on location, if a resource is required to attend the location anyway for another activity. A hard do on location constraint would mean that the activity must be carried out at the activity location if a resource is scheduled to attend the location due to another activity at the location which is not remote. A soft do on location incentive would instead boost the value of carrying out the work while on location.

The location is also visible on the workbench, which can be useful for dispatchers.

Remote fulfillment activities can be scheduled to parallel resources.

Activity Dependencies

There are a number of ways in which activities may be linked together, for instance specifying that one must happen before another, or at the same time as another one.

Full details of these constraints may be found in a separate document: Scheduling Concepts - Linking Activities