## 6 Extension to Multiple Job Types Assignment
### Algorithm Extension  
In _First Step_ of the proposed algorithm, the linear equations are modified in this extension to consider the CPU time to complete all the jobs for the plural job types assigned to each worker:  
\[\begin{split}&\sum_{t\in T}\left(C_{i}^{t}+\frac{R_{i,D_{i}}^{t} }{D_{i}}\times x_{i}^{t}\right)=\sum_{t\in T}\left(C_{j}^{t}+\frac{R_{j,D_{j}}^ {t}}{D_{j}}\times x_{j}^{t}\right)\\ & for\;i\
eq j,i\in W,j\in W.\end{split} \tag{13}\]  
The number of variables to be solved is \(|W||T|\), where \(|W|\) represents the number of workers and \(|T|\) represents the number of job types, respectively. Thus, \(|W||T|\) linear equations are necessary to solve them. In the original algorithm, for each job type, \((|W|-1)\) linear equations are derived for the CPU time equality and one equation is for the job number. Thus, \(|W||T|\) equations can be introduced.  
However, in this extension, the total number of linear equations for the CPU time equality is reduced to \((|W|-1)\) because all the job types need to be considered together here.  
\begin{table}
\begin{tabular}{l c c c c c c} \hline \hline
**Job Type** & **PC1** & **PC2** & **PC3** & **PC4** & **PC5** & **PC6** & **Diff.** \\ \hline BassixAppX1 & 183 & 191 & 191 & 197 & 190 & 221 & 38 \\ BassixAppX2 & 161 & 174 & 174 & 173 & 180 & 184 & 23 \\ ColorGame & 189 & 216 & 216 & 222 & 233 & 228 & 44 \\ SoccerMatch & 266 & 361 & 361 & 342 & 358 & 370 & 104 \\ AnimalTour & 0 & 248 & 248 & 289 & 246 & 272 & 289 \\ MyLibrary & 130 & 222 & 222 & 210 & 234 & 238 & 108 \\ OpenPose & 220 & 219 & 219 & 216 & 205 & 196 & 24 \\ OpenFOAM & 0 & 0 & 0 & 0 & 131 & 109 & 131 \\ \hline \hline \end{tabular}
\end{table}
Table 10: Proposal _makespan_ detail (s).  
\begin{table}
\begin{tabular}{l c c c c c c c} \hline \hline
**Job Type** & **PC1** & **PC2** & **PC3** & **PC4** & **PC5** & **PC6** & **Diff.** \\ \hline BassixAppX1 & 268 & 215 & 215 & 222 & 210 & 241 & 58 \\ BassixAppX2 & 235 & 210 & 210 & 208 & 208 & 214 & 27 \\ ColorGame & 276 & 246 & 246 & 252 & 258 & 256 & 30 \\ SoccerMatch & 414 & 385 & 385 & 372 & 377 & 390 & 42 \\ AnimalTour & 319 & 296 & 296 & 295 & 298 & 312 & 24 \\ MyLibrary & 260 & 250 & 250 & 240 & 260 & 246 & 20 \\ OpenPose & 240 & 264 & 264 & 272 & 261 & 252 & 32 \\ OpenFOAM & 0 & 0 & 0 & 0 & 131 & 109 & 131 \\ \hline \hline \end{tabular}
\end{table}
Table 9: T-FCFS _makespan_ detail (s).  
Therefore, to solve the linear equations uniquely, the following \((|W|-1)(|T|-1)\) linear equations will be introduced by considering the total CPU time for \((|T|-1)\) job types together for \((|T|-1)\) combinations of \((|T|-1)\) job types, in addition to the total CPU time for \(|T|\) job types together in (13):  
\[\begin{split}&\sum_{t\in T-\{u\}}(C_{i}^{t}+\frac{R_{i,D_{i}}^{t}}{D_{ i}}\times x_{i}^{t})=\sum_{t\in T-\{u\}}(C_{j}^{t}+\frac{R_{j,D_{j}}^{t}}{D_{j}} \times x_{j}^{t})\\ &\quad\text{for }i\
eq j,i\in W,j\in W,u\in T.\end{split} \tag{14}\]  
where \(T-\{u\}\) represents the set of the job types in \(T\) except for job type \(u\).  
The \((|T|-1)\) combinations of \((|T|-1)\) job types are selected by excluding the combination where the following estimated total CPU time to execute all the jobs in the remaining job types on _PC6_ is smallest:  
\[\sum_{t\in T-\{u\}}(C_{6}^{t}+\frac{R_{6,D_{6}}^{t}}{D_{6}}\times N^{t}) \tag{15}\]  
Then, in _Second Step_ and _Third Step_, the estimated _makespan_ for each worker and the maximum estimated _makespan_ among the workers are modified to consider all the given job types together.