An undergraduate senior-level Artificial Intelligence course research paper presenting a novel approach to the personnel tour scheduling problem.
The Problem
The personnel tour scheduling problem is a classic algorithmic challenge: how do you optimally assign people to time slots while respecting various constraints? Traditional approaches combine resource and time slot considerations into a single heuristic for efficiency.
Novel Approach
My research developed an alternative methodology:
- Separate Heuristics: Resource constraints and time slot constraints each get their own heuristic function, rather than combining them
- Mutual Recursion: The search explores possible scheduling arrangements using mutually recursive functions (A→B→A→B→A...)
- Graph Search with Depth-Limit Pruning: Prevents exponential blowup while exploring the solution space
Trade-offs
This approach is customizable but slower than classic solutions. The key advantage: it allows end users to fine-tune the priority factors of each constraint on selected targets. This granular control is nearly impossible with traditional combined approaches.
Use Cases
Ideal for scenarios where:
- Constraint priorities vary by context
- Users need to adjust scheduling preferences
- Explainability of scheduling decisions matters
- Optimal speed is less critical than flexible configuration
Technical Implementation
- Language: Python
- Techniques: Graph search, heuristic design, recursive algorithms
- Domain: Artificial Intelligence, Operations Research
