Mixed integer linear programming based methods have been widely employed but have been limited to problems with simple recipes or small-scale scheduling problems. This paper proposes the sequence branch algorithm (SBA) that can handle large-scale complex scheduling problems for batch processes under unlimited intermediate storage policy. The SBA generates the schedule tree in which all feasible schedules are included. A heuristic function is employed to accelerate the searching speed and it causes the results somewhat deviated from the optimal solution. The efficiency of the proposed algorithm is illustrated through complex and large-scale problems including a case study of a semiconductor fabrication process.