Maintenance activities are often the cause of breakdowns of complex systems. When a production system can be modeled as a direct network (Ahuja et al. 1993), the unavailability of one (or more) node(s) partially reduces the throughput of material. The unavailable node – or server – is considered as a bottleneck for the flow of material through the network because it decreases the total flow of the system. All the nodes of the network that follow the unavailable server are thus feed with a lower amount of material, or they are not feed at all. We consider the problem of finding an optimal maintenance schedule with the goal to maximize the flow of material through the network in a given interval of time. A test schedule with preventive maintenance interventions is initially drafted. Starting from the test plan, maintenance activities on adjacent nodes can be grouped at the same date causing no – or a minimum amount of – reduction of throughput. On the other hand, to shift maintenance activities from their ideal date is a potentially costly activity. Inspired by the work of Wildeman et al. (1997) on grouping of maintenance activities with setup costs, we propose a multi-objective genetic algorithm approach (Deb et al. 2002) to study and solve this optimization problem. The algorithm isolates a set of efficient solutions with respect to two criteria: the total reduction of flow of material in a given interval of time and the expected cost of corrective maintenance generated by the shifting of activities. An original perspective on production systems with unreliable servers is proposed and the problem of scheduling maintenance interventions on networked systems is faced. Considering the complexity of the managerial problem, the network view turned out to be a valuable tool for optimizing system performances and to justify important breakdown decisions.