Optimization features used with Schedule Optimization

  • Release version: Yokohama
  • Updated January 30, 2025
  • 3 minutes to read
  • Objectives and constraints are optimization features that determine how tasks are assigned to agents in Schedule Optimization.

    Objectives

    Objectives prioritize agent task assignments, and each objective is weighted. Schedule Optimization prioritizes higher-numbered weights. For default settings, apply a weight of 1, and for more important factors, such as maximizing high-priority task assignments, apply a weight of 2.
    Table 1. Schedule optimization objectives
    Objective Description
    Maximize balance in number of hours agents work Reward for even distribution of work hours (i.e., tasks, travel) between agents.
    Maximize balance in number of tasks agents work Reward for even distribution of tasks between agents.
    Maximize consecutive collocated task assignments Reward for each pair of collocated tasks that are assigned consecutively to the same agent.
    Maximize higher priority task assignments Reward for every high-priority task that is assigned. The reward is higher for tasks with higher priorities.
    Maximize higher value task assignments Reward for the value of tasks that are assigned.

    Maximize preferred agent assignments

    Reward for each task that is assigned to a preferred agent.
    Maximize SLA compliance buffers Reward for each hour that a task finishes earlier than its window end. The reward is smaller for tasks with longer SLA windows.
    Maximize task assignments Reward for every task that is assigned.
    Maximize tasks in earlier shifts Reward for each task that is assigned to an earlier shift. The reward is higher for shifts that start earlier in the optimization horizon.
    Maximize work hours Reward for every hour of work that is assigned
    Minimize higher priority task start times Penalty for each hour that a task starts later than its earliest window start. The penalty is higher for tasks with higher priorities.
    Minimize number of shifts with tasks Penalty for every shift that is assigned one or more tasks.
    Minimize over-skilled agent assignments

    Penalty for skill level deviation between agents with a higher skill level than their assigned tasks.

    Minimize overtime

    Penalty for every hour of overtime.

    Minimize SLA violation (fixed) Penalty for each task that finishes later than its SLA due date.
    Minimize SLA violation (hourly) Penalty for each hour that a task finishes later than in its SLA due date.
    Minimize task start times Penalty for each hour that a task starts later than its earliest window start.

    Minimize task time penalties (fixed)

    Penalty for each task that finishes later than its penalty time.

    Minimize task time penalties (hourly)

    Penalty for each hour that a task finishes later than its penalty time.
    Minimize travel time Penalty for every hour of travel.
    Minimize under-skilled agent assignments

    Penalty for skill level deviation between agents with a lower skill level than their assigned tasks.

    Table 2. Intraday optimization objectives
    Objective Description
    Maximize existing assignments Reward for every agent/task assignment that remains in the schedule.
    Minimize delayed tasks (fixed) Penalty for every task that starts after it was originally scheduled.
    Minimize delayed tasks (hourly) Penalty for every hour that tasks start later than originally scheduled.
    Minimize unassigned tasks Penalty for every task that is removed from the schedule.

    Constraints

    Constraints are required and tasks won't be assigned unless the assignment group meets the constraint. Policies created in Schedule Optimization can be assigned to the following constraints.
    Table 3. Schedule Optimization constraints
    Constraint Description
    Block excluded agents from assignment Tasks with excluded agents can’t be assigned to those agents.
    Enable access hours Task time windows are restricted based on their access hours.
    Note:
    The Field Service (com.snc.fsm_access_hours) Access Hours plugin must be installed to use this feature.
    Enable agent travel radius Agents can only be assigned tasks that are within the travel radius of their home location.
    Enable assignments only with preferred/secondary agents Tasks with preferred/secondary agents can only be assigned to those agents.
    Enable excluded agent restrictions Tasks with excluded agents can’t be assigned to those agents.
    Enable capacity Agents must work within the limits of the capacity reservation rules.
    Note:
    The Field Service (com.snc.fsm_capacity_management) Capacity Management plugin must be installed to use this feature.
    Enable flexible breaks Agents can be assigned flexible breaks.
    Note:
    The Shift Scheduling for Field Service (com.snc.sn_fsm_shift_schdl) plugin must be installed and Workforce Optimization for Field Service must be activated to use the flexible breaks feature. For more information, see Activate Workforce Optimization for Field Service.
    Enable mandatory parts Tasks can only be assigned agents who have a sufficient inventory of parts.
    Enable mandatory skills Tasks can only be assigned to agents with necessary skills.
    Enable overtime Agents can work overtime.
    Enable travel outside work hours

    Agents can travel outside work hours.

    Enable task dependencies Tasks can only be assigned when their dependencies are met.
    Enable travel time limits between locations Agents must travel between locations within their travel time limit.