Constraints optimisation of resources uses by tasks in workflows

Published:

The organization and management of production is a prerequisite for the success of projects in the business and research world. In this process, the scheduling function aims to organize the use of resources to meet a demand or satisfy a prepared plan. Thus, some public and private companies use the scheduling function to cope with complexity, improve deadlines or even adapt to unexpected events. Although this problem has been widely addressed in the scientific and academic domain, its application in an industrial environment is very often minimalist. For example, complex constraints (resource limits and priority constraints) are not always taken into account. In this paper, we propose a solution that relies on adaptations of Boolean satisfiability problem-solving methods to encode the constraints and propose a task scheduling that minimizes the total execution time of a workflow. We were able to obtain a solution that takes into account the scheduling of workflows with constraints of resource limits, priorities, conditions and proposes a scheduling that makes the best use of resources in a relatively short time. The interest of this work is that reducing the execution time of the users’ tasks will allow a better management of the resources allocated in the infrastructures, an increase of the applications’ performances and by ricochet a great satisfaction of the customers.

Keywords : task, workflow, scheduling, boolean satisfiability problem.

Language: Python, Java, Google OR-Tools Task: Mathematical modelling of resources usages, Scheduler Implementation