## 3 Background
### Unrelated Parallel Machine Scheduling Problem  
In the unrelated machine scheduling problem, a set of jobs must be scheduled and executed on a scarce set of machines [46]. Each job contains certain properties that are taken into account in scheduling decisions, such as:  
* \(p_{ij}\)--the processing time of job \(j\) on machine \(i\). * \(r_{j}\)--the release time of job \(j\), which specifies the earliest time at which the job can be considered for scheduling. * \(d_{j}\)--the due date of job \(j\), which specifies the time by which the job should finish with its execution. * \(w_{j}\)--the weight of job \(j\), which indicates the importance of the job. Each machine can only process one job at a time. As soon as a machine starts executing a job, it must complete it before it can start executing another job. Many criteria can be considered and optimised for this problem. In this study, we focus on minimising the total weighted tardiness criterion (\(Twt\)), defined as \(Twt=\sum_{j}w_{j}T_{j}\), which is one of the most frequently optimised criteria in the literature, especially when considering dynamic environments [6]. \(T_{j}\) represents the tardiness of job \(j\) and is defined as \(T_{j}=\max(C_{j}-d_{j},0)\), where \(C_{j}\) indicates the time at which job \(j\) was completed. The tardiness, therefore, represents the time the job has been completed after its due date, whereas the total weighted tardiness is simply the combination of all tardiness values multiplied by the corresponding weights. By minimising \(Twt\), we effectively minimise the times jobs are completed after their due date. Using the standard notation \(\alpha|\beta|\gamma\) for scheduling problems [47], the problem considered in this study can be specified as \(R\mid r_{j}\mid\sum_{j}w_{j}T_{j}\). In this notation, \(\alpha\) represents the machine environment, which in this case, is the unrelated machine environment (denoted by \(R\)); \(\beta\) represents the additional constraints, which in this case, include the release times of the jobs (denoted by \(r_{j}\)); and \(\gamma\) represents the optimised criterion, which in this case, is the total weighted tardiness (denoted by \(\sum_{j}w_{j}T_{j}\)). Moreover, the problem is considered under dynamic conditions, which means that not all information about the problem is available during the execution of the system. More precisely, no information about the jobs, including their arrival time, is known before they are released into the system. However, once they are released into the system, all their properties are known precisely, and the jobs can then be taken into account for scheduling. The most suitable method for solving such dynamic problems is DRs [7]. DRs consist of two parts: a schedule generation scheme (SGS) and a priority function (PF) [48]. The SGS represents the algorithmic framework of the DR, which determines when and under what conditions it performs scheduling decisions. It also ensures that it only creates feasible schedules, for example, by checking that no machine executes two jobs at the same time. Algorithm 1 provides the definition of the SGS that is used by the automatically designed DRs. This SGS performs a scheduling decision every time at least one machine is available and there are unscheduled jobs in the system. It also ensures that no job is scheduled on a machine on which a job is already in progress.