Terminology
This section lists frequently used terms and their meanings:
The hard, medium, and soft rules that must be taken into account when optimizing a task schedule. Learn more about constraints.
Timefold accepts input datasets that include information about the jobs, machines, and employees to be scheduled and optimized. Input datasets are created using our predefined model schema which follows the OpenAPI specification. Timefold returns output datasets that contain the optimized solution.
See the API spec for more information.
A person who can be assigned jobs. Employees can have tags that represent their skills and capabilities, and unavailable time spans for breaks or other commitments. Learn more about employee resources.
A field on a machine or employee that automatically pins all jobs that start before a specified cutoff time. Useful in real-time planning when you want to lock in assignments that have already started or are about to start. Learn more about freeze jobs until.
The preferred completion time for a job. Jobs that deviate from their ideal end time incur a soft penalty, whether they finish early or late. Learn more about time management.
A unit of work to be scheduled on a machine or performed by an employee. Each job has a duration, and can have time windows, dependencies, a priority, and required tags or resources.
A relationship between two jobs where one cannot start until the other has finished. Dependencies can also specify minimum or maximum delays between jobs, require both jobs to use the same resource, or prevent other jobs from being scheduled between them. Learn more about job dependencies.
A period of setup time added between two dependent jobs when they are assigned to the same machine and their job types require reconfiguration. Learn more about resource transitions.
A category applied to a job that is used to model job transitions. Jobs with different types may require setup time between them when scheduled sequentially on the same machine. Learn more about job types and machine types.
A resource that processes jobs sequentially. Machines have a start time and can have unavailable time spans, tags, and a machine type.
A category applied to a machine that determines which job transition durations apply when switching between job types. Learn more about job types and machine types.
The total duration of a schedule, from the start of the first job to the end of the last. Minimizing makespan is a common optimization goal. Learn more about metrics and optimization goals.
Locking a job to its assigned machine or employee so that it cannot be moved during re-planning. Learn more about real-time planning.
The time period that will have jobs scheduled during a solve.
An integer value assigned to a job that controls which jobs are assigned first when resources are limited. Higher-priority jobs are preferred over lower-priority ones when not all jobs can be assigned. Learn more about priority jobs.
The ability to resubmit a schedule with updated assignments and new jobs, so the solver can optimize around work that is already in progress. Learn more about real-time planning.
A reward or forbidden constraint on the sequence of resources used for dependent jobs. Rewards encourage specific machine or employee combinations; forbidden transitions prevent them. Learn more about resource transitions.
Labels assigned to machines and employees that represent their capabilities. Jobs can require specific tags, ensuring they are only assigned to resources with the matching capabilities. Learn more about tags and specific resources.
A constraint on when a job can be scheduled, defined by a minimum start time (minStart) or a maximum end time (maxEnd).
Learn more about time windows.
Next
-
See the full API spec or try the online API.