We realized that aviation companies were losing significant sums of money by having less efficient dynamic pricing systems as well as models for demanding forecast.
What it does
There is a better way to go about doing this!
Retrospective Analysis - First, we analyze companies inputted data to find inefficiencies in specific areas. In order to do this, we utilized various python libraries including Numpy, Pandas, as well as the Tensorflow framework to be able to identify specific inefficiencies that include being unable to account for higher demand for specific routes during specific time periods.
Demand Forecasting - Second, using data collected from various sources both external as well as historical, we were able to create a time-series analysis function to model flights for the 10 most popular flight routes. Then, we constructed various plots to visualize our data-driven findings via Matplotlib in regards to the month as well as day of the week.
Optimized Scheduling and Dynamic Pricing - Third, we created dynamic pricing within real time by utilizing neural networks that compiled variables from market conditions, how fast tickets are selling, competitor pricing, and how much time left before sellout. We also utilized random forest functions to determine the best scheduling function which builds off of our demand forecasting.
How we built it
Retrospective Analysis - To perform this, we built in .csv readers into the platform utilizing Flask. We then used various numerical data extraction methods via Numpy and Pandas to derive the meaningful data. Based off this, we utilized functions by using deep learning through the Tensorflow platform that helped us to identify inefficiencies between the demand of the markets and supply of airlines and how to close the gap as effectively as possible within those scenarios.
Demand Forecasting - Utilizing both the historical data gathered earlier from the .csv file as well as from other companies data through online datasets and the external data gathered by looking at market indicators, we were able to build effective demand forecasting in terms of both the month and day of the week for the top ten most popular flight routes. To analyze this data to construct the models, we used a time-series model that we built out in Python and then the matplotlib function to represent the charts.
Optimizing Routes and Dynamic Pricing - By utilizing a random forest model, we were able to effectively find the routes that provided the highest profit to loss ratio. Then, by using sentiment analysis, as well as a neural network, we were able to factor in other constraints including the competitors prices utilizing scrapy, the web scraping library in python, and the market conditions, to provide us with the optimal adjustment in real-time of the price.
Challenges we ran into
The neural networks were panicking us quite a bit, and we had to provide a lot of training data to them. This was a challenge at first because obtaining the data was quite a challenge especially converting to the readable format of the .csv file in Python.
We had to use parallel and distributed computing on a virtual machine since the neural networks need a lot of power to process the data. At the initial stages, we were only utilizing one computer which meant that the data was not being processed quick enough.
One of our teammates was new to Hackathons and programming, so he had to get up to speed on creating an efficient and effective user interface.
Accomplishments that we're proud of
Optimizing for speed, especially in dynamic pricing, is vital to the core of this. Integrating the neural networks to work effectively with the flask platform was vital to the function. It is very possible for machine learning if not guided in the right direction to give conflicting signals. Having backtested the data, the results from our analysis provided a successful hedge against the losses (5% increase).
What we learned
Learning quite a bit about neural networks and utilizing Tensorflow.
What's next for FlyAI
The goal is to be able to talk to major airline companies and receive their data from the 2018-2019 year and to be able to provide them our analysis for the 2019-2020 year. We also believe that we have only started uncovering pieces of this puzzle and there is a lot more valuable insight that can be generated by going along this path to help companies maximize their profits and revenues.