The main difference between resource leveling and resource smoothing is that while resource leveling uses the available float, thus may affect a critical path, resource smoothing uses free and total float without affecting any of the critical paths. Thus, while resource leveling can be considered a constraint in order to adjust with certain resource supply limitation, for example, not to over-work some human resources, resource smoothing can be considered a useful method to solve the problem of a more flexible constraint if time is a constraint, for example, not to over-work human resources.[2][3]