This report describes the Bachelor End Project, a compulsory course for the Bachelor Computer Science at Delft University of Technology. This course has a group of 4 students complete a project for a real-world company (the client). The client for this project was Relive, a compa
...
This report describes the Bachelor End Project, a compulsory course for the Bachelor Computer Science at Delft University of Technology. This course has a group of 4 students complete a project for a real-world company (the client). The client for this project was Relive, a company that has a tracker for outdoor activities with a focus on the experience of the activity. They wanted a route recommendation engine for their users, in particular users that are unfamiliar with the area. The specific task from Relive was to use the Relive database to find popular, dissimilar routes to recommend within an area, and then find context for those recommended routes. The first attempt to find these routes was using a heatmap to see which routes were popular, and then clustering routes to find dissimilar routes to recommend. This had some problems with unwanted biases towards cities, so the second attempt switched it around by first clustering on general area to make sure recommendations are dissimilar, and then using clustering and finding big clusters to see which routes are popular. This last approach worked decently: it can recommend 73% of the expected routes. One of the key problems for now is the long waiting times. There were two kinds of context that were considered: keywords and photos. Keywords can be extracted by processing titles from nearby routes with significant search. Photos are added to routes by the users but may not be relevant as context. Examples of such useless photos are selfies, which also bring privacy concerns. Due to time constraints, giving context was not integrated into the final product. The final product is a web application client and a server for that client. The users interact with the web application, and the recommendation algorithm is run on the server.