What is resource scheduling, and why is it so difficult? This blog explores some of the complexities and approaches to solving scheduling problems
Resource scheduling is the process (or maybe better considered the “art”) used by organizations to efficiently allocate resources to a number of tasks/actions, which need to be executed within a given time.
When we analyse this definition, we identify 4 blocks:
The above shows already a first complexity of a scheduling problem, i.e. in order to properly schedule the resources an adequate and detailed description of all resources, tasks and constraints is required. As we are talking here about the future situation of those elements, this can be very complex and will require also making certain assumptions (e.g. if you have started a recruitment process, you won’t know yet when this new hire will exactly arrive). The further in the future the scheduling is done, obviously the more uncertainties.
Apart from that, there is also the complexity of defining a good cost (function). This function will calculate for each scheduling proposition what is the associated virtual cost. To make it tangible this cost is usually expressed in currency, but this doesn’t mean this virtual cost only contains the direct financial/operational costs (like e.g. salaries or energy costs). We can also quantify fewer tangible costs, like e.g. operational risks, ESG (Environmental-Social-Governance) branding and general branding, customer satisfaction, employee happiness… The definition of a good cost function will therefore be a very complex exercise, in which a lot of strategic decisions will be incorporated (e.g. up to the management to decide what will be the relative importance of employee happiness compared to the direct operational costs).
But even if all the input data is collected with a high degree of quality and a good cost function is defined, the complexity of scheduling is not yet fully tackled. Due to the enormous number of variables (and dependencies between those variables) and the fact that the cost function is not a simple linear function, this problem cannot be solved in an analytical way. Instead it needs to be solved via numerical methods, i.e. by a process of iterations an optimal allocation is searched, but there is no mathematical guarantee there is not a more optimal solution. The more computing power and computing time is given to the problem, the more solutions can be explored and the surer the absolute optimum solution can be identified. However as computing power costs a lot of money and companies have strict deadline to have their schedule ready, this computing power and time will also be limited. This is again a strategic choice of the company to decide how much computing power and time will be given to each scheduling calculation.
The above shows that solving large scheduling problems is really the domain of specialists, as it requires:
Partnering with a specialist in this domain can therefore gain you a lot of money in the long-term.
Photo by Firmbee.com on Unsplash