The Automatic Voyage Scheduling System optimizes route planning by leveraging the Google Route Optimizer API. The Transport Coordinator inputs approved requests and available vehicles, and the system generates optimized voyages based on traffic conditions and vehicle capacity. A scheduling window, set by the organization admin, ensures that only requests within the allowed timeframe are considered.
The process follows three key steps: selecting requests, choosing vehicles, and generating optimal routes. The system enforces important constraints, such as a 25-request limit per vehicle and validation checks for passenger seating and package dimensions. Additionally, a route and vehicle comparison feature allows coordinators to analyze planned vs. actual routes for better decision-making.
By automating voyage scheduling, this system enhances efficiency, minimizes conflicts, and ensures well-optimized transportation planning.
Transport Coordinator: Manage voyages, create voyages manually or automatically, and receive notifications.
Efficiently group approved requests into optimal voyages.
Minimize total travel distance and time.
Select vehicles automatically based on availability and capacity.
Improve scheduling speed without manually filtering requests or mapping routes.
Its Ideal when;
There are many unallocated approved requests waiting.
Coordinators want to reduce manual effort.
There is high volume of employee or package transport.
Deliveries or pickups are geographically concentrated.
Click the “+” (Add Voyage) Button
You’ll be prompted to choose between Manual Scheduling or Automated Scheduling.
Select “Schedule Automatically.”
Choose “Route Optimized” as the optimization strategy.
Define your scheduling parameters (e.g., date/time window, voyage type).
The system auto-groups requests based on location clusters, assigns suitable vehicles, and creates the voyages.
Review the automatically generated voyages before confirming.
By default, the current date is pre-filled as the start date.
The coordinator can then choose a scheduling window (in hours), such as:
24 hours
48 hours
72 hours
This window value is configurable by the Company Admin during company setup, and it defines the maximum allowed range for voyage scheduling.
Example: If the start date is set to 1st March and the window is 48 hours, the end date is automatically calculated as 3rd March.This means the system will attempt to schedule voyages for requests that fall within March 1st to March 3rd.
What This Window Filters:
Passenger and delivery requests that:
Are approved,
Are unallocated, and
Have requested start/end times within the selected scheduling window.
Vehicles that are:
Active,
Configured to be available (working days + time slots) during the defined timeframe.
The coordinator’s only task in this step is to review the filtered list and select the requests they want the optimizer to include.
There’s no need to arrange the order — the system will automatically:
Group the requests
Sequence them optimally
Assign vehicles accordingly
📌Important Notes when allocating requests:
The scheduling window (start date + hours) defines both the request scope and vehicle availability window for all upcoming steps.
Only approved, unallocated requests that fall within the selected window will be shown.
Vehicles that aren’t available during the selected period will be automatically excluded in Step 2.
If you want to re-adjust the timeframe, you can change the start date or scheduling window before proceeding.
After selecting and allocating requests in Step 1, the Transport Coordinator proceeds to Step 2, where they must select suitable vehicle(s) to serve the voyage.
Only vehicles that meet the following conditions will be shown: .
The vehicle must be available on the dates within the selected scheduling window, based on its configured working days.
If a vehicle is already allocated to a voyage that overlaps with the current voyage’s timing:
It will still appear in the list, but with a ⚠️ warning symbol (exclamation mark).
This indicates a potential schedule conflict, not a hard restriction.
➤ How the Coordinator Can Handle This:
Click the edit button for that vehicle vehicle to open an availability adjustment pop-up.
The system will display:
The estimated end time of the previously assigned voyage.
A suggestion to update the available time window for the vehicle to fit the new voyage.
The coordinator may then:
Update the time window for just this voyage.
Proceed with assigning the vehicle, based on operational flexibility.
📌Important Notes when selecting a vehicle(s):
Vehicle availability is filtered by the exact scheduling window set in Step 1 (start date + duration in hours).
You can use a mix of different vehicles to serve multiple groups of requests — the optimizer will assign them automatically.
Vehicles that don’t match the required service mode or are inactive will be excluded from the list.
After the system finishes processing the selected requests and vehicle availability, Step 3 presents the auto-generated voyages for your final review. At this stage, the Transport Coordinator can:
View all the voyages that have been created
Inspect each voyage’s details (requests, vehicle, time, route)
Make adjustments if necessary
Approve all or selected voyages for scheduling
This step gives you full control to ensure that the system’s optimized output aligns with operational needs before confirming anything live.
📌Important Notes when selecting a vehicle(s):
Once a voyage is approved, it will be locked in and appear under the Scheduled Voyages tab.
Can be later edited if needed.
Upon approval, employees (generic users) whose requests were included will receive:
An email (and optionally an SMS) notification that their request has been scheduled.
It’s a good practice to double-check vehicle capacities and request groupings, especially for high-density routes.
You can revisit Steps 1 or 2 to adjust your scheduling window or selected requests if the result isn’t satisfactory.