Auto Shift Planner

Auto Shift Planner is a free and user-friendly application that can design and automatically generate highly detailed employee shift schedules based on rules and preferences.

View the Project on GitHub


Auto Shift Planner has an unique feature: it can design and automatically make a detailed schedule (roster) while using heuristic and metaheuristic algorithms. A shift is fine tuned with half hour time units instead as just morning shifts or night shifts. This feature allows the application to manage situations where traditional planners fail because it is just impossible to define exactly the desired scenario, for example retail shops with continuous hours with strict staff regulation. Precise rules and preferences can also be defined as constraints and the application will automatically generate a schedule accordingly.

Tell me why is this important and why should I use this application….

The application is not a general purpose factotum planner.
It is a detailed rule based schedule generator.
Let’s see how Auto Shift Planner looks like in action…


Main Features

An Example

As a manager of a store staff you have to organize shifts for the next week as follows:

values ​​written in bold can be replaced or removed as per needs…

The shop opens at nine AM and closes at half past nine PM. The supply truck arrives at half past eight on Monday, Wednesday and Friday. Only on these days there must be already present staff. There are seven employees, five of whom work forty hours a week and two have twenty-one hours. Each employee has two free days per week. An employee asked to have an extra free afternoon on Friday. The same employee must be in the shop in the morning from half past nine AM to half past ten AM. No employee can do more than eight total hours per day while no one can do less than three consecutive hours or more than six consecutive hours per day. Each employee may possibly take only one break which must however be one hour long. In the shop there must always be at least two people. Some specific employees must be present during opening or closing of the shop. All employees are entitled to a night’s rest of at least twelve hours between one working day and the next. There must not be times when there is too much staff present or too little.

Tell me how to use this application….






  1. Click “download application” (at the top of this page)
  2. Download the latest file named: AutoShiftPlanner-x.x.x_windows_installer.exe (e.g. AutoShiftPlanner-0.2.0_windows_installer.exe)
  3. Double click the downloaded file to install the application.

Linux, Mac, Windows advanced:

  1. You need to have Java pre-installed which you can find here
  2. Click “download application” (at the top of this page)
  3. Download the latest file named: AutoShiftPlanner-X.X.X-jar-with-dependencies.jar (e.g. AutoShiftPlanner-0.2.0-jar-with-dependencies.jar)
  4. Double click the icon or type “java -jar AutoShiftPlanner-X.X.X-jar-with-dependencies.jar” in a terminal (or the Command Prompt)
  5. How to open the Command Prompt in Windows: click Start, scroll down and expand the “Windows System” folder, click “Command Prompt”

Are you a developer?

The application is a Maven project: just clone the repository and open the pom file in your preferred IDE. Please consider forking the repository on GitHub, contributions are welcome! The application is also an easy example of Optaplanner usage with simple code.

AutoShiftPlanner uses Optaplanner and it's dependencies. Many thanks to Optaplanner developers.
Released under: Gnu Public License, version 3