Task scheduling is essential for the suitable operation of multiprocessor systems. The aim of task scheduling is to determine an assignment of tasks to processors for shortening the length of schedules. The problem of task scheduling on multiprocessor systems is known to be NP-complete in general. Solving this problem using by conventional techniques needs reasonable amounts of time. Therefore, many heuristic t...