| Step 1. Receive a δ’s value, a TB’s value, and an operation-based permutation needed to be transformed from MPM-LOLA (Algorithm 2). | | Step 2. Transform the operation-based permutation taken from Step 1 into П by changing the number i in its k-th appearance into the operation Oik (i = 1, 2, …, n; k = 1, 2, …, ni). For example, the operation-based permutation (3, 2, 3, 1, 1, 2) is transformed into П = (O31, O21, O32, O11, O12, O22). | | Step 3. Transform П into Φ by using Steps 3.1 to 3.6. | | Step 3.1. Let Φ ⟵ an empty schedule, and let t ⟵ 1. | | Step 3.2. Let Oi′k′ ⟵ the leftmost as-yet-unscheduled operation in П. | | Step 3.3. Find σM, σJ, and σ of Oi′k′. | | Step 3.4. Let E ⟵ the machine, chosen from all Ei′k′l (l = 1, 2, …, mi′k′), that can start processing not-later-than σ + δτi′k′. If there is more than one machine that can be chosen as E, then choose one of them that has the lowest l if TB = lowest; otherwise, choose one of them that has the highest l. | | Step 3.5. Modify Φ by assigning E to process Oi′k′. In the schedule, let E start processing Oi′k′ as early as possible. | | Step 3.6. If t < D, then t ⟵ t + 1 and repeat from Step 3.2. Otherwise, go to Step 4. | | Step 4. Return Φ as the complete schedule to MPM-LOLA (Algorithm 2). |
|