Multi Airline Flight Combinations

03 Jul 2015

At goibibo we continuously strive to deliver best product possible to the customer. When it comes to pricing, convenience or post sales service, we leave no stone unturned to delight our customer, and to top it all we always make sure our website runs with minimum possible latency. All these goodies are supported by our strong technology stack. 

Overview

In one such effort we try to make our flights search results better. Just as a little insight into our flights back-end, we query multiple vendors to get you the best pricing available. Some of our vendors combine results from en-route destination to connect two cities. So to fly from Bangalore(BLR) to Indore(IDR) some of our vendors will give a combination of en-route destination Mumbai, so some of the flight results would be from Bangalore to Mumbai with an onward flight from Mumbai to Indore with some layover duration in Mumbai. Many of these combinations generated from vendors are at times inconvenient and generally would not be booked by traveler.

We have dealt with this problem in two ways.

  1. From back-end we remove highly inconvenient flights; With help of an intelligent algorithm we find out which flights ought to be removed based on minimum duration flight for the sector and its fare; basically a metric for fare and duration for all the flights,
  2. Create new combinations on the fly with all the vendors we query at our end; When we tested out the combinations we created, we actually found out that we were able to bring in cheaper fares with commodious duration,

In this blog I would explain how we achieved solution to second problem listed above. 

Algorithm

We have created a highly adaptable back-end. We make use to sectors searched on goibibo and their data to find out intermediate sector that we route through to connect two airports. For each result in the search we find out a metric based on departure time, arrival time, fare and duration; the metric indicates how comfortable each flight is for particular sector. Combining results every time of a pair of source-intermediate and intermediate-destination we find out the best intermediate station for given source-destination pair. The process making such changes is a continuously running background process which helps our results to be adaptable to any sort of changes including fare, duration, flight addition/deletion to a sector.

Consequently we are able to

1) Show cheaper and convenient combinations where costlier vendor combinations exist.

Bangalore To Jammu

image

2) Show flights where otherwise no results are available from vendors.

Jaiupur to Vizag no results are available from our vendors

image

Future Road map

image