Step 1:
 - Create the initial population (classic chromosomes) as described in Section 3.1.
Step 2:
 - While termination condition has not been satisfied Do
   - For each classic chromosome in the current population Do
      - Convert it to the extended structure chromosome (such as Table 2).
      - Enhance chromosome by applying learning operators (reward and penalty) on the chromosome until the
       makespan could be less, described in Section 3.4.
   - Convert extended chromosome to classic chromosome by removing rows related depth and probability
   - Apply the standard roulette wheel selection strategy for selecting potentially useful individuals for recombination
   - Apply the standard two-point crossover operator on processors in two enhanced chromosomes
   - Apply the standard mutation operator on processors in two enhanced chromosomes
   - Apply the reuse idle time heuristic on 30% of best chromosomes, described in Section 3.3.
Algorithm 1: A new task graph scheduling algorithm.