Labor Standard Calculation & Configuration
Labor Standards is one option in creating a staffing guide or “optimal staffing” within Quinyx. Labor standards are calculated using the algorithm module Labor Standard Calculation and can be configured in Pythia (AI Optimization).
Labor standard calculation
The goal of the Labor Standards module is to calculate and visualize labor demand for headcount variables or roles based on demand forecasts on a 15, 30, or 60-minute or daily level. These required headcount curves help understand how many people are needed for each role at each point in time to cover the fluctuations in the forecast. The output of the Labor Standard Calculation is used by the Auto Schedule algorithm to schedule shifts against, but can also be used within the manual scheduling to ensure that the schedules created match the demand.
In order for the headcount to be correctly calculated by the Labor Standard Calculation, each role should be set up as a Forecast Configuration Variable within the initial configuration process.
Analyzing the Results
The resulting headcount can be viewed either in Quinyx within the schedule statistics and forecast graphs and tables for the specific headcount forecast configuration variables, or in Pythia (AI Optimization).
Compare the calculated required headcount with your expectations for that role at each point in time. If the headcount values are higher or lower than expected, then first check whether the underlying forecast values are at the expected levels. If the forecast values are as expected, then the labor standards might be unrealistic and needs adjustment.
Creation of required headcount
Required headcount based on labor standards is created automatically after the AI Demand Forecast is run. The demand forecast can be created automatically weekly (or other regularity) or manually through Quinyx or Pythia (AI Optimization).
In Pythia (AI Optimization), you can also manually trigger the Labor Standard Calculation. In the initial dashboard, select Demand Forecasting. This will bring you to Analysis. Take the following steps to run the headcount calculation:
- Select the headcount variable on the left for which you want to run the calculation.
- Select the plus sign on the top-right side of the analysis page. This will open up the relevant panel to run the headcount calculation.
- Select whether you want to calculate the headcount based on forecast data or based on actual data. Leave the toggle unselected to use forecast data and select the toggle to use actual data. Running the headcount calculation based on actual data only works in the past, where actual data is present, and can be helpful in order to analyze how much staff you would have needed had you known exactly how much demand you were going to incur.
- The headcount is calculated and is automatically pushed to Quinyx. The resulting headcount can be viewed in Quinyx or in Pythia (AI Optimization).
Labor standard configuration
The Labor Standard Calculation module uses the labor standards configured in Pythia (AI Optimization) in order to calculate labor demand.
Prerequisites
In order to use labor standards to calculate your optimal staffing, a few steps are required:
- Creating a forecast (manual, external, or Quinyx Demand Forecasting) on a 15, 30, or 60-minute level.
- Enabling the Labor Standard Calculation algorithm.
- Creating headcount variables in Pythia (AI Optimization) and in Quinyx.
- Configuring the labor standards.
Configuring labor standards
Labor Standards can be configured in Pythia (AI Optimization) by going to Demand Forecasting > Configuration > Labor Configurations. First, select the headcount variable for which you want to add a labor standard from the hierarchy on the left. There are three steps required when configuring the labor standards: setup configuration, select calculation type, and configure calculation specifications.
Setup Configuration
Select the + sign in the top-right corner and enter the following:
Name | Give a name to your configuration. |
Algorithm environment ID | Select the algorithm environment you want to run, production environment, acceptance, etc. |
Effective from | The start date from which the configuration should be applicable. Should be entered in the format of DD-MM-YYYY |
Effective to | The end date until which the configuration should be applicable. Should be entered in the format of DD-MM-YYYY |
Select calculation type
There are many different ways to calculate headcounts, each with a different relation to the forecasted demand data. By selecting the + icon at the top-right of the screen, you can select the configuration type, and depending on the configuration type, you also might need to select an attribute (forecast variable) used as a basis.
Multiplication
“It takes a cashier 2 minutes per transaction. If we predict 60 transactions between 10 am-11 am, we would need two cashiers between 10 am-11 am”.
Through the Multiplication configuration, you can configure a one-to-one relationship between a forecast and a headcount requirement, where, depending on the productivity level and the forecast levels, a certain headcount is required.
Weighted combination
“It takes a chef 5 minutes to prepare a burger; if we predict 24 burger orders between 10 am-11 am, we would need two chefs between 10 am-11 am. But because we also predict that customers order 30 french fries, and it takes a chef 2 minutes to prepare french fries, we need 3 chefs in total between 10 am-11 am”
Through the Weighted Combination configuration, you can configure a multi-variable relationship between a headcount requirement and forecast variables where one headcount requirement is dependent on multiple forecasts and where there is a productivity level connected to each of the forecasts.
Time-based
“Between 9 am-11 am on Thursdays, we need 3 cashiers”
Through the Time-based configuration, you can configure fixed needs based on the time of the day, and other time factors (day of week, week of month).
Standard lookup
“If we sell between 100 to 200 burgers per hour, then we need three cashiers. If we sell more than 200 burgers per hour, we need 5 cashiers”
Through the Standard Lookup configuration, you can configure fixed needs based on forecast ranges.
Time-based lookup
“If we sell between 100 to 200 burgers per hour between 10 am and 2 pm, then we need three cashiers. If we sell between 100 to 200 burgers per hour after 2 pm, we need only two cashiers”.
Through the Time-based Lookup configuration, you can configure fixed needs based on forecast ranges while also applying this configuration only within a specific time of the day.
Configure calculation specifics
Depending on the configuration type selected, you need to add the calculation specifics. This could, for example, be the input attribute that the headcount requirement is based on or for which days this calculation should be applicable. The specifics can be entered by selecting the configuration after the configuration type has been entered and then selecting the + icon in the top-right corner of the tab.
Depending on the configuration type, you might need to enter a few of the following fields:
Input Attribute | Select the forecast configuration variable that should be considered as input when calculating the headcount requirements. |
Min/max (for Multiplication, Weighted Combination) | Set any potential hard constraints to be considered in the headcount requirements. If a maximum is set, the headcount requirement will never exceed that maximum. If a minimum is set, that minimum will be fulfilled at all times, also outside of opening hours or demand hours. Therefore, make sure to also configure a start and end time if you don’t want the minimum to hold throughout the whole day. The min/max should be entered as a number. |
Min/max (for Standard Lookup, Time Based Lookup) | Set the buckets that define the minimum and maximum forecast levels that result in the specified headcount requirement. |
Weekdays | Select the weekdays for which the configuration is applicable. |
Minute of day start | Enter the start time of the day from when the configuration is applicable. It should be entered in minutes from the start of the day. For instance, 11 am (11:00) should be set to 660 |
Minute of the day end | Enter the end time of the day until when the configuration is applicable. It should be entered in minutes from the start of the day. For instance, 2 pm (14:00) should be set to 840. |
Static (Multiplication, Weighted Combination) | Static is added as a baseline addition that does not depend on the input forecast but should always be added on top of the output based on the productivity and the forecast. For instance, always add 2 additional headcounts on top of the demand-based headcount. The static value should be entered as a number. |
Static (Standard Lookup, Time Based Lookup, Time Based) | The static value to be added when the forecast falls within the specified forecast or time buckets. |
Factor | The factor represents the productivity of the headcount variable in relation to the demand driver (forecast configuration) considered. This could be, for example, the number of the specific demand driver one headcount can handle in an hour. Or minutes required to handle one demand driver value. The factor is then multiplied with the forecast value at all timestamps to calculate the required headcount at those timestamps. The factor is defined as a number, e.g. 0.01. The factor is retrieved by taking 1*1/(value per hour) or 2*1/(value per 30 minutes). E.g. handling 5 products in 30 minutes should be set as 0.4 (2*1/5). |
Ceil | This should be selected when a decimal headcount output should be rounded up to the nearest integer. |
Round | This should be selected when a decimal headcount output should be rounded up or down to the nearest integer. |