Recommender systems (or recommender engines)  are machine learning systems that help users discover new products and services based on their personal preferences. They learn by analysing users’ past behaviour and then recommend products that said users are most likely to need or want. While these systems are still underrepresented in the academic world when compared to other machine learning techniques, their usage has exploded in a wide range of industries in the past years. Good recommendations can guide users towards products they are most likely to be interested in, thus improving their product discovery process (often in a sea of infinite possibilities) and helping them find what they want more efficiently – thereby increasing companies’ earnings.
Moreover, their application extends beyond commercial usage, as the underlying philosophy of narrowing down recommendations can be applied to numerous areas. Effectively, nothing prevents us from applying these algorithms to any problem where the goal is to profile users in some way, and then using that resulting knowledge to help users make more efficient decisions among a large number of options.
In spite of their versatility and great capacity of digitalising businesses, their potential in the aviation industry is still under-explored and their usage quite limited. In this post I briefly explore several ideas for their usage in commercial aviation.
Recommender systems rely on two major concepts in their implementation: collaborative filtering and content-based methods, with a number of systems implementing an approach that is a hybrid of those two.
Content-based methods are based on the hypothesis that if a user was interested in an item in the past, they will be interested in it in the future as well. By constructing user profiles using their historical behaviour (actions) and grouping similar items by their features, the engine is able to recommend new items to the user.
Collaborative filtering, on the other hand, attempts to make clever recommendations based on the past interactions between users and items, stored into what is usually called user-item interaction matrix (Figure 1). This approach can be seen as a generalisation of classification and regression problems in which there is no distinction between features and targets, i.e. the algorithm attempts to predict the value of any cell in the matrix (future interactions between users and items).
Figure 1. Example of user-item interaction matrix in collaborative filtering
Recommender systems prove most beneficial when faced with large data volumes, when one should choose between a large number of options or when the user is not familiar with the existence of all the viable options. A huge advantage of recommender systems is that state-of-the-art techniques, such as collaborative filtering, allow us to automate the process of feature creation. In other words, these systems are an example of how AI can automatically learn a set of good features to use, rather than developers hand-coding them. Moreover, recommender engines have a number of commercial benefits for the companies which rely on them: they can increase sales, user satisfaction and/or loyalty.
However, to truly enable this learning, a recommendation engine needs a lot of data points on the past user behaviour. For those reasons, a challenge one can face when implementing a recommender system is the “cold start” problem. This occurs because it is not possible to give a meaningful recommendation to a new user or recommend a new item to any user. Nevertheless, there are a number of solutions that have proven successful in addressing this issue, such as recommending random items to new users until the algorithm gains some knowledge about their preferences .
Recommender engines have a lot of application potential in aviation. While commercial applications arise as a natural option for recommender systems, their usage in the aviation industry could go beyond such applications and prove themselves useful in air traffic operations as well.
Perhaps the most straightforward application of recommender systems is to use them to profile passengers based on their past trips and recommend travel destinations. Nowadays, many airlines of flight search engines have a large amount of data on passengers’ historical travel patterns. These data could be put to good use to proactively inspire passengers to book their next trip, even when they were maybe not thinking of one.
A large portion of airline or airport profits comes from ancillary services such as flight insurances, food purchases, seat reservations, or additional baggage items. Recommendation engines could be used to offer more personalised ancillary services to the passengers that they are more likely to need and purchase, thus boosting airline profits. This could happen not only during booking, but in the post-booking phase through targeted offering of differing services depending on the proximity of the trip, or even during pre-booking through offers based on passenger’s flight searches.
Most airlines nowadays heavily rely on frequent flyer programs (FFPs) as a way to encourage and maintain loyalty of the passengers, making those programs excellent profit boosters. Recommendation engines fit naturally into those programs as they can act as “loyalty promoters” by selecting personalised offerings for their members or actions that an airline should take to promote their FFPs. It is much more costly to get new customers than retain the existing ones, and recommendation engines could make that job easier for the airlines.
Moving away from commercial applications, recommendation engines could easily find their place in areas that help plan, execute or optimise air traffic operations. The idea behind the collaborative filtering algorithm could be used to implement algorithms that provide procedural recommendations to flight crew in real time to help them make better decisions when operating a flight. In this case, products or items would be a set of actions a crew can perform during a flight in various situations, e.g. to adjust a trajectory in order to minimise the impact of turbulence. Users would then be flights themselves, and they could choose among the recommended actions based on what historical flights chose in similar situations.
If a flight finds itself in a distress situation and has to divert to an alternative airport, a recommendation engine could help choose the airport by ranking all the options available. While the final decision would be in the hands of humans, such an engine could ease this decision-making process by providing valuable metrics. Naturally, as this would be a safety-sensitive application of an automation tool, the explainability of such an AI system is of crucial importance.
While disruptions in air traffic happen on a daily basis, airlines still lack systems to deal with them in an efficient and automated manner, leaving stranded passengers without solutions and information for prolonged periods of time, and consequently causing astronomic costs to the airlines. Recommendation engines could speed up the digitalisation of of solving disrupted operations, not only allowing airlines to offer the passengers a timely and informative solution, but tailoring the solutions to passenger’s personal preferences, thus increasing passenger satisfaction and decreasing soft costs associated with disruptions.