Level loading refers to being able to load jobs, production, etc., on available resources equally. For example, suppose I have three employees that can all do welding. If I want to level load those employees, each job that comes in will be assigned to the employee that has the least amount of hours loaded. So, as jobs are assigned, the employees have, more or less, equal loading (hours to work). This is the same technique that all restaurants use to make sure each wait staff gets an equitable amount of customers (table and customer allocation). Here is an example of level loading production across 4 workcenters. The key assumption is that any welder can do any job, any wait person can handle any customer, etc.
Finite Capacity Scheduling
Finite capacity scheduling systems check to see what available hours are set for each resource and the scheduling system will ONLY schedule up to that amount, then it needs to find another day (either forward or back in time depending on scheduling horizon) to keep loading remaining hours required.
Other, more advanced techniques include a combination of the two – level loading and finite capacity scheduling.
The above figure is an example for loading across Jim, Mark, and Dennis. All are scheduled for 2 hours on 12-26.
The above example illustrates some of these additional rules such as: variable setup and runtime per employee, trigger amounts when certain workcenters can be utilized, even sequential alternates for finishing a job on 2nd shift.
Combining Level Loading with Finite Capacity Scheduling
Level loading distributes the work evenly across resources (departments, workcenters, people, machines, groups, etc) resulting in a more balanced schedule. Without Level Loading some resources are over scheduled, causing needless production overtime, expedited shipping costs and missed promise dates. Other resources are underutilized yet are still a financial burden.
Finite capacity extends the benefits. Not only is there level loading, but also there is no over scheduling of what is available per day. This produces the best schedule as the finish dates are all viable with minimal or no overtime. For example, if I have 10 hours per day available per worker, 3 workers and 5 jobs to finish, with each job will taking 10 hours, there is 50 total hours of work to do. Without level loading and finite capacity planning, it might get scheduled for one worker for 8 hours per day, taking 6+ days to complete all jobs, due to a host of factors. For example, the other workers might be assigned to stand by status for another job that is running late.