Job Listings

Combinatorial Optimization/Dynamic Programming for Travel Cost Minimization Algorithm

Upwork

We are developing an algorithm to find the cheapest combinations of flights, accommodation, and transport for travelers. Despite having integrated APIs from Skyscanner, Booking.com, and Omio, our current solution underperforms compared to manual searches by our human managers.

Current Situation:

Data Integration: Successfully integrated Skyscanner for flights, Booking.com for accommodation, and Omio for transport.

Algorithm: The existing algorithm sequentially searches for flights, then accommodation, and finally transport. It often misses the optimal combinations.

Issue: The algorithm does not consistently find cheaper routes compared to manual searches. We need a more efficient and holistic approach.

What We Have Done:

We have identified that the sequential search approach is suboptimal.

We have implemented basic combinatorial optimization but still face challenges in finding the best combinations.

We have identified the need for a combinatorial or dynamic programming approach to improve the algorithm.

Requirements:

Expertise in Combinatorial Optimization/Dynamic Programming: Experience in solving complex optimization problems, especially related to travel or logistics.

Programming Skills: Proficiency in Python and experience with APIs (Skyscanner, Booking.com, Omio).

Analytical Skills: Ability to analyze and understand the existing algorithm and improve its efficiency.

Real-World Application: Experience in implementing similar solutions in real-world applications is highly desirable.

Objectives:

Implement a combinatorial optimization or dynamic programming approach to evaluate all possible combinations of flights, accommodation, and transport simultaneously.

Improve the sorting and filtering functions to prioritize user preferences and overall trip costs.

Ensure robust error handling and default values to avoid missing optimal combinations.

Perform thorough testing and validation to ensure the algorithm consistently finds the best routes.

Deliverables:

Updated and optimized algorithm with detailed documentation.

Clear explanation of the methodology used.

Testing and validation results comparing the new algorithm with manual searches.

How to Apply:

Please provide a brief overview of your experience with similar projects, especially in the travel or logistics domain. Include examples of your work related to combinatorial optimization or dynamic programming.

Location: Anywhere

Posted: Sept. 13, 2024, 9:29 a.m.

Apply Now Company Website