A Framework for Crew Scheduling Management System Using MultiAgents System Abdul S. Shibghatullah, Tillal Eldabi, and George Rzevski School of Information Systems, Computing and Mathematics Brunel University, Uxbridge UB8 3PH, UK
[email protected]
Abstract. Bus crew scheduling problem is a complex problem to solve because of the large number of resources that need to be managed, complexity of allocating crew shifts, rising cost of crew and unpredictability of traffic and crew availability. This causes a difficulty to maintain an optimal schedule. Existing systems are excellent in producing optimal or near optimal schedules. However, to maintain such optimality for day-to-day operations, crew scheduling systems need to extend their capabilities by enabling crew re-assignment, a feature that is not currently available in automated scheduling systems. This paper first, presents the role of supervisor in managing unpredictable events then proposes a conceptual framework for developing a crew schedule management system, aiming at maintaining smooth operations of existing crew schedules. The paper also discusses the use of Multi Agents System (MAS) as a suitable approach to implement the proposed concepts. Keywords. Bus Crew Scheduling, Multi-Agent System, Dynamic Scheduling.
1. Introduction One of the major operational problems faced by bus operators is crew scheduling. Crew scheduling problem is hard to manage due to its complexity, especially when it involves a huge number of crews to drive the scheduled buses. Bus operators have to work in accordance with certain driving rules and any existing agreements with Trade Unions (TU). There are two main reasons why a crew schedule is immensely important. First, the crew expenditure involves a large portion of a bus’s operational costs. According to Meilton [8], the cost of crew is at least 45% of the total operational costs. This proportion is likely to rise as the shortage of bus
drivers, a common phenomenon in London and the whole of the United Kingdom (UK) is considered to be increasing, and not decreasing [5]. Second, the system will determine the level of efficiency of services offered by a bus operator in fulfilling the requirements of a city council or the authority that authorised its operations. Generally, the main aim for developing any bus crew schedule is to achieve optimum and dynamic schedules. Optimum schedules mean that resultant schedules should minimise the operation cost, whilst dynamic means it is able to maintain such optimality throughout the scheduled duration. However, the main obstacle for keeping such optimality throughout day-today operation is unpredictable events such as, late crew, sick while on duty, or absenteeism without prior notice. Bus service usually operates in an unpredictable environment, especially in high-frequency routes in a busy city. Whenever an unpredictable event occurs, it affects bus operations even for other routes as well. In the UK, causes of unpredictable events are categorised into four categories, which are traffic, staff, mechanical and others [1][7]. Currently, supervisors at garages play a major role in managing unpredictable events, whilst crew re-assignment is a major way of dealing with such events, which is done manually at present. When a certain unpredictable event occurs the supervisor must perform appropriate adjustments to the schedule or change resource allocation. The times and crew schedule will remain same only reallocation of vehicles or reassignment of crews is performed to cover the schedule. This paper will first discuss the existing practice in terms of manual reassignment by bus companies in general. Then, discuses the current crew scheduling approaches and critiques them on the ability of reassignment/rescheduling. Consequently, the paper proposes a system that
WK,QW&RQI,QIRUPDWLRQ7HFKQRORJ\,QWHUIDFHV,7,-XQH&DYWDW&URDWLD
to automate the process of crew reassignment. The paper also discusses the Multi-Agent System (MAS) as a suitable approach to develop such system. Finally, a conceptual framework based on MAS for the intended system will be presented. This paper has been organised as follows: Section 2 presents the role of supervisors in managing unpredictable events. Section 3 presents the current crew scheduling approaches and critiques them. Section 4 proposes a crew scheduling management system that will automate the crew reassignment process. In addition, it also discusses the suitability of MAS approach for developing such systems, and draws a conceptual framework for it. Section 5 concludes the discussion and suggests further research in the matter.
schedule will remain the same and only reallocation or reassignment is done to cover the schedule [12]. For instance, if a bus is broken down then a spare bus will be allocated to cover the remaining schedule. Similarly, if a crew is absent, then their duty will be assigned to a spare crew. Usually supervisors tend to manually reallocate or reassign. This is the general practice in almost bus companies.
2. The role of supervisor in managing unpredictable events A supervisor usually is the person who is responsible to make sure that the bus service operates smoothly. The supervisor has various responsibilities; such as making sure all the buses run on time based on the predetermined schedule. The bus company has to comply with the schedule that has been agreed with the local authority. If the company does not perform well, the contract will be suspended. Other responsibilities include managing schedules (times, crew and ROTA), managing crews, and the busses in everyday operations. These responsibilities are immensely hard especially when dealing with unpredictable events. The supervisor should carry out appropriate adjustments or changes to the schedules. Currently there is no standard procedure in dealing with any arising problems, whilst it is solely based on the supervisor’s experiences [12]. The role of a supervisor in dealing with unpredictable events is summarised in Fig.1. The supervisor has times schedules, crew schedules, and ROTA schedules. The times schedules show movement of each bus, times against specified locations, whilst crew schedules show the activity for every duty from sign-in to sign-off. ROTA schedules show which person assigned to what duty in a week. Then, the supervisor has to manage resources (such as crews and busses). When a certain unpredictable event occurs the supervisor must perform appropriate adjustments to the schedule or change resource allocation. The times and crew
Figure 1: Management of unpredictable events in everyday operation
Although there are some management tools for such a purpose, for example, Automatic Vehicle Location (AVL), still the supervisor has to manage buses and crews properly to make sure all the buses follow the predetermined schedule. AVL is an automatic tool that is able to pinpoint the location of a vehicle during operations. For example, if “Bus A” is late by 15 minutes, the AVL screen will show its location somewhere, however the supervisor does not usually know the reason of that delay. The supervisor has to contact the crew by radio to know the reason.
3. The current bus crew scheduling approaches In this section, we will discuss the current approaches and how they tackle the
unpredictability problem. The current approaches used in bus crew scheduling are grouped into three main groups; which are, heuristics, metaheuristics and mathematical programming. The classifications are not distinctive because it is possible to find that some mathematical programming approaches that might involve heuristic techniques to some extent; some metaheuristic approaches that involve mathematical programming, etc. This section discusses each group of approaches in brief while the next subsection discusses the limitations of these approaches with regard to managing the unpredictable changes. By the 1980s the early methods for crew scheduling problems were mainly heuristics based. This is because the computer was not powerful enough to run the mathematical solvers, and the techniques in the mathematical solvers were also not as advanced as nowadays. Many of the approaches are based on constructing an initial schedule by using a heuristics process, and then attempt to improve the schedule by making limited alterations. Examples of heuristics based techniques are TRACS[16], and HOT[2]. Metaheuristics is a top-level general strategy which guides other heuristics to search for feasible solutions in domains where the task is hard. Metaheuristics have been applied to bus crew scheduling problems since 1990s. Examples of metaheuristics approaches used in bus crew scheduling are Tabu Search [11], and Genetic Algorithms [6]. Mathematical programming approaches work on the principle that each variable represents a shift, and constraints represent piece of work that need to be covered. Since the number of potential valid shift for any problem is typically very large, most systems incorporate heuristics or metaheuristics to eliminate shift which are unlikely to be used in good schedules, and so the reduced model can be solved much faster. Examples of mathematical programming approaches used in bus crew scheduling are IMPACS [16], TRACS II[4], and HASTUS[9].
3.1
Critiques to the current approaches
In this section we will provide a brief critique of the approaches described in the previous sections. The aim is to identify any drawback in the current approaches and how they can be improved. The methods will be critiqued with regard to the ability to maintain optimality of the
crew schedule and to satisfy all the constraints, and also for the ability to perform appropriate real-time change to crew schedule that caused by unpredictable events. Heuristics methods were useful in some applications, since they were customized for individual companies and thus could be fully tailored to meet the specific requirement for individual company. However, these approaches are not easily adaptable to other companies and had to be substantially modified to fit new conditions. Furthermore they were not suitable for general optimisation [14]. In regard to the ability to reschedule in real time whenever unpredictable events happen we find that heuristics methods do not have a feature to reschedule. Once the schedule is created, any additional modification will be carried out manually. Research in metaheuristics is merely an application of artificial intelligence techniques to operational research problems. Metaheuristic approaches were very useful in producing good results compared to heuristics. Still, however, they are not able to reschedule. Researchers mainly concentrate on finding optimal solutions (initial schedules) without paying much attention to real-time requirements. Mathematical approaches are probably the most appealing in terms of commercial prevalence. According to Wren [15], integer programming combined with heuristics is currently the best technique to produce nearoptimal solution. This is supported by the fact that most of the prominent scheduling packages use this method. Nevertheless, mathematical approaches do not support real-time rescheduling. For example, TRACS II [4] only deal with planned changes, that is, those which can be predicted several days or weeks in advance, and not unpredictable events. In summary, although mathematical methods have been largely employed, more research seems to be needed to develop approaches that would effectively cope with the dynamics and unpredictability of the scheduling problem. To tackle the above issue the research proposes a new concept of crew reassignment when dealing with unavailability of crew. This means, if any of the crew becomes unavailable, the crew schedule should remain the same, only their duty will be assigned to other available crew without rules violation. This capability does not necessarily need to be developed as a stand-alone scheduling system, rather it might be added to an existing
system. The issue here is not to develop new scheduler for producing optimal crew schedules, but merely to assist supervisors in managing crew reassignment in everyday operation, whilst maintaining the original schedule. The definition and descriptions of the approach are provided in the following section.
4. The proposes crew schedules management system The proposed system is aimed at assisting supervisors in reassigning crews if needed (in case of unpredictable events). Fig. 2 demonstrates the positioning of the new system. The box denoted as “Crew scheduling management system” represents the proposed system. The proposed system should be linked to any existing systems which are crew scheduling system and ROTA system. The proposed system needs to obtain information on crew schedules that were generated by the existing crew scheduling system. User can view predetermined crew schedules, which includes; duty number, route number, garage name, number of spell, sign-in times, start driving times, finish driving time, start break time, finish break time, sign-off time, total driving time, and total duty time.
Figure 2: The proposed system that place on top of existing system
The proposed system should also be able to store real-time information concerning crew and crew schedules. This is to make sure that the system is capturing the status of crews and crew schedules, because when the system needs to reassign crew, then the current status of crews and
crew schedules need to be known. Real time information includes; sign-in times, start driving times, finish driving time, start break time, finish break time, current status of crew, sign-off time, total driving time, and driving time left. The crew schedules real time information includes; total covering time, covering time left, total covering point, and covering point left. The proposed system should also be able to reassign crews without violating EC Driving Hour Rules. Most importantly is that rules concerning break and daily driving hours (continuous driving hours should not exceed four and half, and total daily driving time should not exceed ten hours). The break should be at least forty-five minutes. Currently, reassignment should cover five events: (a) Crew comes late for duty; (b) Absent-without-prior notice; (c) Sickon-duty; and (d) Unavailable part of the duty.
4.1 Multi-Agents system as an alternative approach As discussed above that the proposed system should be able to reassign crews in real-time whenever is needed without violating the EC driving hour rules. This requirement is hard to achieve especially when it involves large crews and duties, when quick decisions are required. To implement this, a software tool must have this characteristic i.e. able to solve complex problem in real-time. This paper will not discuss the search process but will discuss some of the characteristics in MAS that makes it a suitable approach. MAS is a system that is composed of a population of agents, which cooperate with each other to reach common objectives, while simultaneously, each agent pursues individual objectives [3][13]. An agent is an abstract or physical autonomous entity which performs a given task using information gleaned from its environment to act in a suitable manner so as to complete the task successfully. The agent should be able to adapt itself based on changes occurring in its environment, so that a change in circumstances will still yield the intended result. [3]. Agents are also capable of competing or collaborating, depending on how best to accomplish tasks [10]. The definition of agents above shows that agents imitate the real-world problem, while attempt to solve it through cooperation or competing. In bus crew scheduling problem a crew agent can represent a crew; a duty agent
can represent a duty. A crew has its own objective i.e. maximize earning, and a duty objective is to make sure the prescribed driving task is accomplished. The approach of MAS is not necessarily the best approach when compared with existing mathematical approaches that are based on the such as integer linear programming [4][5] and column generation[9]. Mathematical approaches have the ability to search optimal or near optimal schedule but they have limitations i.e. they are usually slow to produce results in real-time because they are computationally intensive when it comes to complex situation. Speed is an important issue when it comes to day-to-day operation management, while they cannot capture requirements or preferences of every crew. Whilst in MAS, the computational effort is reduced because each agent know its attributes and tries to solve the problem through negotiation with relevant agents (not every agent), and each agent also can capture requirements and preferences of its owner. For example, an agent represents a crew is able to accommodate crew’s preferences - such as preferred driving time of the day. MAS have many ways of resolving conflicts of resources. The probably the most widely used include Smith’s Contract Net and its variants. Other types include voting mechanism, auction mechanisms, and market mechanisms [3][10][13]. The proposed system will use market mechanisms because of its simplicity. In this paper, we propose a framework for a crew scheduling management system based on MAS paradigm as shown in Fig. 3. This framework provides a unified environment in which several agents are integrated. It supports integration with the existing systems. The framework consists of three divisions, namely, user, the proposed system, and existing scheduling systems. User is the person who is responsible in managing everyday operation i.e. supervisor. The existing system consists of the crew scheduling system and ROTA system. Between them is the proposed system which is crew scheduling management system. The proposed system consists of Interface agent (IA), Crew agent (CA), Duty agent (DA), and Database agent (DBA). CA represents a bus crew which pursues objectives such as obtaining a salary and work in a safe and healthy environment. Its attribute are social security number, name, age, address, telephone number, year of experience, and
license number. CA methods are on duty, on break, on leave and stand by. DA is corresponding to a duty in crew schedules. DA objective is to serve the bus route. DA attributes are route number, trip number, start point, end point, start time, end time and duration. DA methods are covered and not cover.
Figure 3: The proposed bus crew scheduling management framework
IA models the interaction between the user and the system. Its objectives are to receive user tasks, deliver the task to DBA, and present the results to the user. IA attributes are request route number, request description, request command, date, and time. IA methods are receive, deliver, reject, and process. DBA is responsible to communicate with the existing system. Its objectives are to receive tasks from IA, executed the tasks, and deliver the results. DBA attributes are task number, task description, date, and time. DBA methods are receive, deliver, reject, and process.
5. Conclusions and future works This paper has described the bus crew scheduling problem, focussing on the unpredictable events problem. This problem causes a difficulty to maintain optimal schedules. Existing crew schedule systems are not capable of handling such problem. Existing systems aimed at solely developing optimal schedules. Once a crew schedule is produced then the resultant schedules are manually managed by supervisors at garage.
The task of a supervisor is to manage resources i.e. crews and busses. When a certain unpredictable event occurred the supervisor must perform appropriate adjustments to the schedule or change resource allocation. A dynamic crew scheduling system that supports the process of reassignment is needed to help a supervisor in dealing with day-to-day operational problem. This paper proposes a conceptual framework based on MAS approach. MAS are especially competent for solving resource allocation and scheduling problems. The conceptual framework provides a unified environment in which the existing system and MAS crew scheduling system are integrated. Further work involves the design and implementation of each agent. There are many difficult issues that need to be addressed. These include how to control the negotiation/ communication process between agents in case of a large number of simultaneous unpredictable events. Deadlock might occur when hundreds of agents sending and receiving messages while negotiating to repair the disrupt schedule. A control mechanism is needed to prevent this deadlock.
6. References [1] Copley G, Dodgson J, Bright M, Coombe D, Davidson B, Barrett G. Second Assessment Report: 10 Year Transport Plan Monitoring Strategy. Hertfordshire: Commission for Integrated Transport. 2003. [2] Daduna JR, Mojsilovic M. Computer-aided vehicle and duty scheduling using the HOT programme system. In: Wren A, editor. Proceedings of Computer-Aided Transit Scheduling: Springer Verlag, Germany; 1988. p133-146. [3] Ferber J. Multi-agent Systems: An Introduction to Distributed Artificial Intelligence, London: Addison-Wesley; 1999. [4] Fores S, Proll L, Wren A. TRACS II: A Hybrid IP/Heuristic Driver Scheduling System for Public Transport. Journal of the Operational Research Society 2002; 53(10): 1093-1100. [5] Kwan ASK, Parker ME, Kwan RSK, Fores S, Proll L, Wren A. Recent advances in TRACS. In: Preprints of the 9th International Conference on Computer-Aided Scheduling of Public Transport; 2004; San Diego, California, USA.
[6] Kwan RSK, Wren A, Kwan, ASK. Hybrid genetic algorithms for scheduling bus and train drivers. Proceedings of IEEE Congress on Evolutionary Computation, 2000. p285292. [7] London Transport Users Committee. All aboard?, London: LTUC Report. 2001. [8] Meilton M. Selecting and Implementing a Computer Aided Scheduling System for a Large Bus Company. In: Voß S, Daduna JR, editors. Proceedings of Computer-Aided Scheduling of Public Transport: Springer Verlag, Germany; 2000. p. 203-214. [9] Rousseau JM, Blais JY. HASTUS: An Interactive System for Buses and Crew Scheduling. In: Rousseau JM, editor. Proceedings on Computer-Aided Scheduling of Public Transport: North-Holland; 1985. p45-60. [10] Rzevski G. Multi-Agent Systems and Distributed Intelligence; 2002. http://www.brunel.ac.uk/research/madira/pa pers/p21.pdf [12/15/2003]. [11] Shen Y, Kwan RSK. Tabu search for driver scheduling. In: Voß S, Daduna JR, editors. Proceedings of Computer-Aided Scheduling of Public Transport: Springer Verlag, Germany; 2000.p121-135. [12] Shibghatullah A, Eldabi T, Rzevski G. The Requirement for a Dynamic Bus Crew Scheduling System. Accepted for ComputerAided Scheduling of Public Transport, Leeds. 2006. [13] Wooldridge MJ. An Introduction to Multiagent Systems, Chichester: J. Wiley; 2002. [14] Wren A. Scheduling Vehicles and their Drivers – Forty Years’ Experience. In: Preprints of the 9th International Conference on Computer-Aided Scheduling of Public Transport; 2004; San Diego, California, USA [15] Wren A, Rousseau JM. Bus driver scheduling – an overview. In: Daduna JR, Branco I, Paixao JMP, editors. Proceedings of Computer-Aided Scheduling of Public Transport: Springer-Verlag, Germany; 1995. p173-187. [16]Wren A, Smith BM, Miller, AJ. Complementary Approaches to Crew Scheduling. In: Rousseau JM, editor. Proceedings on Computer-Aided Scheduling of Public Transport: North-Holland; 1985. p.263-278.