Semiconductor manufacturing involves a large number of processing steps that can be either owned by a core company or outsourced to subcontractors (Frederix, 1996). The production planning and scheduling for the complex manufacturing processes are a challenge due to the factors such as complex product flows, re-entrant material flows, random yields, diverse equipment characteristics, equipment downtime, production and development in shared facilities, data availability and maintenance