Client Context

UPS Healthcare is a business unit of UPS that offers warehousing, transportation and healthcare logistics expertise to customers on an international scale. They must consider special requirements such as temperature controls, shortened shelf life, and regulatory requirements.

When a potential customer contacts UPS Healthcare for a transportation inquiry, communication between several teams within the company needs to take place to confirm that the storage and delivery of the customer’s products is feasible. Stakeholders in this internal communication process include salespeople, solutions engineers, facility managers, and sometimes internal consultancy teams.

Project Objective

UPS Healthcare came to us because the process of initial customer contact to route creation is taking an average of 2 weeks to complete. They wanted that time reduced, because in those 2 weeks, the customer could turn to competing healthcare logistics services.

UPS Healthcare also has a goal to double its annual revenue by 2026. They want to use our tool to be able to handle more route requests without increasing costs.

Design Strategy

We employed Dijkstra's algorithm to help identify feasible routes between origin and destination airports.

A starting node is required for Dijkstra’s Algorithm to find the shortest path to every other node in the graph. In our case, we chose our start node as the destination airport. Although it may not have been the apparent first choice to select the destination airport as the starting node instead of the origin airport, this approach was optimal because the user input into the model was the arrival date and time and not the start date and time.

Users specify a particular time and date for shipment delivery. This choice is often driven by practical considerations, such as the need for the recipient to prepare their receiving dock and make other arrangements to accommodate the shipment.

Consequently, we have opted to use the delivery time as the origin and then employ a reverse Dijkstra algorithm from that point. This approach ensures that the model starts from the user-requested delivery time at the destination node and works backward to find the origin departure time. This approach best aligns with real-world logistics and the operational requirements of the recipients. The approach was validated using UPS's existing flight schedules.


The final deliverable that was made for this project is a GUI written in Python which takes the previously defined inputs and uses Dijkstra’s algorithm to find a base route. Then it uses a heuristic to generate secondary routes. The routes are then displayed on a pop-up map. Here the details of how to use and interpret the GUI are shown.

At this Input screen, the user selects the airport codes by either scrolling through the dropdown menu or by search filter. Searching is most useful since there are 200+ airport codes and many of the end users of this tool may not know either the airport name or airport code. The delivery date input has dropdown menus as well and is entered in military time. The Efficacy limit is a basic entry box. The user then clicks ‘Calculate Route’, and several seconds later the output shows.

The initial output of the algorithm is a map with all of the routes toggled. Since this tool computes route alternatives, a menu is added in the top right corner that allows users to toggle routes on and off for visual clarity. The routes themselves are also interactive; when a node is clicked on, the airport code and departure time from that node are shown, as that is how a route has been defined. The route number is also shown. When the destination node is clicked, the arrival time is shown instead of the departure time, as that node is never departed from. When any of the red arcs are clicked, the time in transit+wait time of that specific flight is shown.

Value and Impact

Our tool is projected to lead to faster response times and the ability to increase annual business proposals by an estimated 15%. Our solution will save two working days which can be used to handle more customer route requests. Currently, each solutions engineer at UPS Healthcare delivers an average of 52 proposals per year to customers. A 15% increase in proposals will conservatively lead to over $20 million in additional revenue annually.

Project Information

Fall 2023
UPS Healthcare

Student Team

Avnish Dalal, Hassan Sheikh, Andres Nolasco, Ben Barringer, Hasan Zulfiqar, John Binek, Juan Perdomo

Faculty Advisor

Faculty Evaluator