Business Process Management (BPM) is concerned with continuously enhancing business processes. However, this cannot be achieved without an effective Resource allocation and a priority-based scheduling. These are important steps towards time, cost and performance optimization in business processes. Even though there are several approaches and algorithms for scheduling and resource allocation problems, they do not take into consideration information gathered from past process executions, given the stateless aspect of business processes. Extracting useful knowledge from this information can help achieving an effective instance scheduling decisions without compromising cost or quality of service. In this paper, we pave the way for a combination approach which is based on unsupervised machine learning algorithms for clustering and genetic algorithm (GA) to ensure the assignment of the most critical business process instance tasks, to the qualified human resource while respecting several constraints such as resource availability and reliability, and taking into consideration the priority of the events that launch the process instances. A case study is presented and the obtained results from our experimentations demonstrate the benefit of our approach and allowed us to confirm the efficiency of our assumptions.