GIS software consulting

Read Post #1 | Integrating Multiple GIS Predictions & Optimizations

Read Post #2 | The Strategic Value of Integrating Weather Data

This is blog post #3 of a 3-part series focused on how technology can support GIS decision making using analytics and innovative design-thinking software development methodologies.

When we think about GIS software, most people think of maps. But just because an application relies on GIS under the hood doesn’t mean that human users need to see latitudes and longitudes. There are key differences between what a software package does and how a user interacts with it. The way information is presented to business users deserves as much attention as how that information is processed behind the scenes. This post dives into how Mosaic Software built a GIS application that was tuned to the needs of decision-makers.

GIS as part of the decision making process

For many use cases, software aggregates the right information, but it is humans that turn insight into action. When people are part of the decision-making process, the clarity and intuitiveness of data presentation is critical. In some cases, this means that GIS applications can use location data for filtering and calculations, but should then output data in a different format to be most useful as a decision aid. For example, recommendation systems may be easiest to digest in a tabular format even if they rely on location information to generate suggested options.

At Mosaic Software, we take data presentation seriously. We work with our clients to determine what data users should focus on, and make sure that information is front and center in user-facing applications.

Case Study: A GIS shipment sourcing recommendation system

Mosaic Software recently worked with a third party logistics (3PL) broker who needed help prioritizing call lists for agents trying to source (find truckers to carry) shipments across the U.S. This 3PL company employs hundreds of agents who manually match one-off shipments with truckers (carriers) willing to transport them. Agents previously wasted valuable time calling carriers that might be hundreds of miles away from a shipment’s pickup point and were therefore unavailable to get the job done. By integrating a call list with carriers’ current location, agents could prioritize calls to low-cost carriers in the local area.

For this situation, creating a UI with a map showing carriers’ current locations would have been a sub-optimal solution. Even if agents could easily click on carriers on a map in the general vicinity of a new shipment to narrow down the list of truck drivers to call, they wouldn’t necessarily know which carriers would be likely to accept the shipment at the lowest cost. In addition, the natural tendency would likely be to start with the carrier closest to the pick-up point and slowly work one’s way further out. In reality, though, it might be a better decision for the business to offer the job to a carrier 5 miles further away who would accept a lower price. So visualizing the information in a way that prioritized distance over cost would not be in the company’s best interest.

Instead, Mosaic created software that used locations in the background – determining the carriers’ distance to the pickup point and incorporating this into a carrier ranking score – but then displayed the high-priority carriers in a ranked list instead of a map-based format. Rankings include the carrier’s current location or tendency to take shipments from the origin city, and the carrier’s historical profitability based on past shipments. This let agents drive the sourcing process by providing them the right information in an actionable format. In addition, it gave agents the ability to disagree with the ranking order if they happened to have external knowledge that would indicate that a different carrier might be a better fit for the job.

GIS software consulting | design and architecture

Mosaic helped create an analytics toolbox with a set of models and data processing scripts that provide advanced analytics-based insights and recommendations based on internal and external data sources. All scripts were written in Python so that they could easily integrate with the company’s existing custom-built software platform. The software package was split into two components: a computationally-heavy batch process that runs overnight to train a machine learning model for carrier profitability analysis, and a lightweight real-time process that can be accessed with a custom API to deliver instantaneous carrier recommendations.

Figure 1 shows the high-level architecture for the sourcing recommendation system. Mosaic’s software and data science consultants designed and built all components shown in the grey box; components outside of the box were part of the existing infrastructure maintained by the client. The results of the nightly process enabled the front-end broker application to run efficiently in real time.

GIS software consulting more than maps 1
Figure 1. High-level architecture diagram for analytics toolbox to support sourcing recommendation capability
How users interact with the platform

Figure 2 shows a diagram of the dynamic workflow of the Analytics Toolbox API. When a new shipment has been accepted by the broker and needs to be sourced (i.e., a carrier needs to be found who will accept the load), the agent enters the origin and destination information into the software interface. A script will seamlessly use information from the shipment to gather a list of carriers from an external data source with carriers’ current locations, and will supplement this with other carriers known to operate in the region based on internal data. The analytics toolbox also pulls estimated profitability information for the relevant carriers based on the previous night’s batch processing. Next, the toolbox uses the number of recent shipments carriers have taken on the relevant origin-destination market pair (a shipping lane), or near the relevant origin market, to assign an estimated probability that each carrier would accept the current shipment if it were offered. Finally, the acceptance probabilities are combined with the expected profit margin for each carrier, ranked by this combination, and returned as a JSON-formatted list. Because all the processor-intensive computations are run at night and staged for the API, this entire real-time process can be completed for hundreds of users at a time, taking just milliseconds to process each request.

Instead of manually deciding which carriers to call and in which order, agents are able to simply work their way down a pre-sorted list. Even new employees at the firm with little to no experience sourcing shipments can systematically contact carriers that have the best expected value to the firm, given the dual goals of maximizing profit and minimizing time to book. And although GIS data is used to determine the set of available carriers, maps are left in the background, letting agents see only what they need to work most efficiently.

By thinking separately about the data that needed to go into the shipment sourcing algorithms and the data that agents needed to see to quickly call the right carriers, Mosaic Software was able to build a GIS-supported application that brought immediate value to the 3PL client.