skyup

SkyUp Airlines and AltexSoft: Optimizing Flight Operations

Business domain
Travel
Technology
Node.jsPythonReact

Background

The Ukrainian carrier SkyUp, currently expanding into the EU market, continuously tests and implements new technologies that streamline daily processes. In particular, the airline partnered with AltexSoft to improve the work efficiency of revenue managers and flight dispatchers.

Challenges

The key objectives of the SkyUp and AltexSoft collaboration were tackling the following business challenges.

Recommend prices that would produce higher revenue

Decrease manual labor

Enhance flight safety by providing timely weather information

Value Delivered

Building a machine learning proof of concept with the potential to increase revenue 3—5 percent

Our primary task was to create a tool that would recommend the best price for a certain route on a certain date. We used three years of historical data to build a linear regression model, predicting changes in seat occupancy based on price. The model processed a range of prices with a 10-dollar increment. A separate algorithm iterated over the results to find the price that brings the maximum revenue and highlight it as the optimal one. At the proof of concept stage, the resulting recommendations showed the potential of a 3 to 5 percent growth in revenue.

Supporting decision-making with short-term forecasts

We trained an additional LightGBM model for cases when the number of days before departure was fewer than seven, with more than 50 seats remaining unsold. It forecasted the number of tickets that would be bought during the period left. If the output was less than the real number of available seats, we recommended reducing the price. And vice versa, if the model showed that the number of tickets demanded would exceed the supply, we advised increasing rates.

Providing price recommendations in a convenient form

The ML system was set up to make predictions three times a day and email recommendations to SkyUp’s employees in a convenient format. Files with forecasts also contained information on days and seats left before departure so that experts could see all the information in one place without the need to switch between the screens. This approach was supposed to alleviate the complexity of pricing decisions and drive efficiency into revenue management.

Creating a weather widget for flight dispatchers

Our further collaboration included building a weather notification widget to be embedded into MS Teams chats used by SkyUp’s personnel. It sources data from three APIs, serving as a single point of access to all the weather information needed by pilots and flight dispatchers. The widget receives current weather reports from METAR (METeorological Aerodrome Report), expected meteorological conditions from TAF (Terminal Aerodrome Forecast), and alerts about potential hazards on the flight route from NOTAM (Notice for Air Missions).

Approach and Technical Info

The active collaboration lasted about three months for the price recommendation PoC and two months for the weather widget, with a data scientist, backend and full-stack developers, a product manager, and a software architect with DevOps skills engaged in different project phases.

The tech stack included Python, scikit-learn, Pandas, NumPy, LightGBM, Plotly, Node.js, and React.

Node.jsPythonReact