In this paper, we deal with a preventive maintenance (PM) scheduling problem for a rolling stock and want to determine PM intervals for all components in the rolling stock optimally. The system availability and life cycle cost are used as optimization criteria and estimated by simulation. A heuristic method and a genetic algorithm (GA) are proposed to find near-optimal solutions that minimize the system life cycle cost and satisfy the required system availability. Numerical examples are also studied to compare two proposed methods and investigate the effect of model parameters to optimal solutions.