Project Title: Developing Android App to Solve Workforce Scheduling Problems Student: Yusheng Wu Course: BSc in Computer Science Abstract: As the cost of personnel has become a significant factor in most service-oriented companies, the way of arranging staff to finish a group of tasks are crucial in today's market. Particularly in a bike sharing company, the manager needs to organise the bike technicians to preserve and maintain the bikes in each station every day, which is time-consuming if do it manually. Large bikeshare corporations often use advanced and expensive software to schedule technicians to reduce maintenance consumption and maximise profit. However, there exists a blank area in the market for a free and sufficient software that can automatically schedule the technicians for small-size bike share companies. The intention of this project is to develop an android application that would be useable for the staffs in a small bike share company, providing various functions to managers and technicians to help them improve the work efficiency. In more detail, the application focus on solving the technician routing and scheduling problem(TRSP) on a mobile platform. The basic idea of TRSP in this project is to assign a set of tasks to a group of technicians taken into account skills, locations and time windows. A real bike-share company called Bay area is used as the scenario, combining it with the features of the TRSP, the system requirements are well informed. Moreover, after studying existing technician scheduling algorithm, the Guided Local Search(GLS) is chosen to solve this problem. The GLS is a meta-heuristic which sits on top of local search algorithms to help them escape the local minima by adding the penalty terms in the objective function. After modifying the cost function, whenever the local search gets stuck in a local minimum, the penalties are changed and the local search will be called again to minimise the augmented cost function. The iterative use of local search is an important characteristic of GLS. The main difficulty of the project are to quantify the real-world problem into a mathematical model which can be solved using GLS, and develop an easy-use Android App since achieve a clear and usable design is a challenging task. Also, how to adjust the GLS to maximise its ability on the mobile platform which has limited resources is another difficulty to be solved. After widely testing the system and critically evaluate the performance of GLS, the built application is proved to be efficient and useful in scheduling the technicians for a small-size bike share company. Also, the GLS has a satisfactory performance for the technician scheduling in the case of limited resources.