Job Complexity
Job complexity allows you to assign difficulty scores to jobs and ensure fair workload distribution across resources. This feature helps balance not just the number of jobs or time spent, but the actual difficulty and mental/physical load on workers.Overview
The complexity feature enables:- Assigning complexity scores to jobs based on difficulty
- Fair distribution of complex work across resources
- Setting min/max complexity limits per resource period
- Balancing complexity per trip or per resource
Basic Complexity Configuration
Setting Job Complexity
Assign complexity values to jobs on a scale that makes sense for your business:Fair Complexity Distribution
Balancing Complexity Per Trip
Ensure each trip has a balanced mix of complex and simple jobs:Balancing Complexity Per Resource
Distribute total complexity fairly across all resources:fairComplexityPerResource is a boolean toggle only — there is no fairComplexityPerResourceWeight (or any other weight) that scales how strongly it’s enforced. Turning it on tells the solver to try to ensure each resource gets a similar total complexity score across their shifts, preventing burnout from consistently handling difficult tasks.Resource Period Complexity Limits
Set minimum and maximum complexity constraints per period using the resource’srules array (not periods). There is no rolling WEEK/DAY keyword — period is always an explicit { "from", "to" } date-time window that you compute yourself, and each rule entry has no name property:
See Resource Period Rules for the full
rules/period schema, including how to build daily/weekly/monthly windows and pool rules across resources with groupTag.Use Cases
Skill-Based Workload Management
Balance complex technical work across skilled technicians:Physical Demand Balancing
Distribute physically demanding tasks fairly:Mental Load Distribution
Balance cognitively demanding tasks:Integration with Other Features
With Tags and Skills
Combine complexity with skill requirements:With Time Windows
Complex jobs during optimal hours:Best Practices
1
Define Clear Complexity Scale
Create a documented scale that all planners understand and apply consistently
2
Consider Multiple Factors
Include physical demand, mental load, risk level, and skill requirements in complexity scores
3
Monitor Distribution
Use the solution’s complexity distribution to ensure fairness over time
4
Toggle Deliberately
fairComplexityPerTrip and fairComplexityPerResource are on/off booleans with no dedicated weight — decide which one(s) fit your priorities rather than trying to tune a weightConstraints and Violations
The following constraints relate to complexity:Tips for Implementation
Combine with Fairness: Use complexity alongside the general work fairness features for comprehensive workload balancing.
Related Features
Resource Management
Configure resource capabilities and periods
Fair Work Distribution
General work fairness features
Tag & Ranking
Skill-based job assignment
Time Scheduling
Coordinate complex jobs with timing