Theory and Methodology Ship maintenance scheduling by genetic algorithm and constraint-based reasoning Safaai Deris a, * , Sigeru Omatu b , Hiroshi Ohta b , Lt. Cdr Shaharudin Kutar c , Pathiah Abd Samat a a Faculty of Computer Science and Information Systems, Universiti Teknologi Malaysia, Karung Berkunci 791, 80990 Johor Bahru, Johor, Malaysia b College of Engineering, Osaka Prefecture University, Sakai, Osaka 599-8531, Japan c Logistics Support Command, Royal Malaysian Navy, Malaysia Received 10 March 1997; accepted 10 September 1997 Abstract Ship maintenance scheduling is a process to decide start times of maintenance activities that satisfy all precedence and resource constraints and optimize the ship availability. In this paper, ship maintenance scheduling is modelled as a constraint satisfaction problem (CSP). The variables of CSP are the start times and its domain values are the start and horizon of the schedule. To solve the ship maintenance scheduling problem in the Royal Malaysian Navy, we have adopted a constraint-based reasoning (CBR) which requires start times of the ®rst activities of maintenance cycles to solve the problem by the CBR. Thus, we adopt a genetic algorithm (GA) to ®nd the start times of the ®rst activities. The simulation results showed the eectiveness of the present hybrid algorithm. Ó 1999 Elsevier Science B.V. All rights reserved. Keywords: Maintenance scheduling; Constraint-based reasoning; Genetic algorithm 1. Introduction Ships and their systems are major assets in the naval defence. Since ships are expensive, they should be fully utilized by ensuring a high rate of availability. The availability and readiness of a ¯eet of ships determine the strength of a navy. Ship availability depends on the eectiveness of imple- menting a preventive maintenance system (PMS). One of the major components of the PMS is maintenance scheduling. Maintenance scheduling is a process of assigning maintenance tasks over time according to speci®c maintenance require- ments of assets. Every ship is provided with a maintenance cycle. In the navy, a ¯eet of ships is grouped into ship classes (carrier, frigate, covette, etc.) and each class of ships is normally grouped into squadrons. Each squadron has 2, 4, 6, 8, etc. number of ships depending on the role and European Journal of Operational Research 112 (1999) 489±502 * Corresponding author. Fax: 07 556 5044. 0377-2217/99/$ ± see front matter Ó 1999 Elsevier Science B.V. All rights reserved. PII: S 0 3 7 7 - 2 2 1 7 ( 9 7 ) 0 0 3 9 9 - 8