A computer-readable storage device having instructions stored thereon, execution of which, by a processing device, causes the processing device to perform operations comprising:
- receiving a request from a client to transport a good from a pickup location to a destination location in a user request graphical user interface (GUI) that allows a user to enter the pickup location, the destination location, and a size of the good, wherein the request corresponds to a job for transporting the good;
- identifying a pickup node and a destination node on a pre-generated graph data structure representing the pickup location and the destination location, respectively;
- identifying, within the pre-generated graph data structure, a plurality of intermediate nodes and a plurality of segments associated with the plurality of intermediate nodes based on the pickup node and the destination node, wherein the plurality of intermediate nodes corresponds to a plurality of intermediate locations;
- determining, by a transport cost machine-learning model, a plurality of transit costs for the plurality of segments in the pre-generated graph data structure;
- generating a preferred route from a plurality of possible routes from the pickup location to the destination location based on the plurality of transit costs using a pathfinding algorithm, wherein the preferred route from the plurality of possible routes has a lowest transportation cost of the plurality of possible routes for transporting the good from the pickup location to the destination location, and wherein the preferred route comprises an intermediate location in the plurality of intermediate locations;
- deriving a departure time from the pickup location based on the preferred route;
- training a location time machine-learning model with historical tender times at known locations, wherein the historical tender times indicate a size of the tendered good, a tendering transporter, and a size of the known location;
- for each of a plurality of eligible transporters, determining an estimated completion time for an eligible transporter based on an estimated tender time at the pickup location, wherein the estimated tender time is determined by:
- when the pickup location is a known location, determining an aggregate amount of time that a transporter takes to perform one or more tendering actions using the location time machine-learning model and increasing the aggregate amount of time by a current wait time at the pickup location;
- when the pickup location is a new location, predicting the estimated tender time at the pickup location using publically known data comprising an average number of visiting individuals and a size of the pickup location by comparing a historical time for the particular transporter at a particular known location used to train the location time machine-learning model, wherein the particular known location is determined by comparing the size of the new location and the size of the known location;
- selecting a transporter from the plurality of eligible transporters having an earliest estimated completion time;
- assigning the transporter to pick up the good from the pickup location and transport the good to the intermediate location;
- causing a transporter GUI to display on a mobile device of the transporter, the transporter GUI configured to track a waiting time at the pickup location to receive the good;
- after the transporter is assigned to pick up the good, receiving an update from the mobile device of the transporter that the transporter has not departed the pickup location by the departure time;
- and
- causing a transport manager GUI tracking the job to change a displayed representation of the job based on the update that the transporter has not departed the pickup location by the departure time, wherein the transport manager GUI is displayed on a device separate from the mobile device of the transporter.