Introduction

The rapid urbanisation, with 68% of the global population expected to live in cities by 20501, has significantly increased the demand for transportation of both people and freight in urban areas. The growth of the demand has led to greater emissions, congestion, and noise/air pollution by transportation in urban areas. In addition, the growth of e-commerce aggravates these traffic issues. One of the contributing factors is the separate operations of passenger and freight transport. An alternative approach is based on the premise of combining passengers and freight transportation in urban areas to accommodate the growth of demand for urban freight transportation2.

Water transit has the potential to become a significant mode of transport in cities with abundant waterways, despite its challenges like weather dependency and high costs3. Urban waterborne vessel systems are often considered tourist attractions, but they can also enhance accessibility in urban areas by providing well-designed services. A key factor in transport inefficiency is the mismatch between supply and demand. On-demand transportation services, which operate by reacting to real-time demand, can improve efficiency and accessibility. Waterborne vessels allow for flexible routing, making them suitable for combining passenger and freight transport in urban areas.

Considering the aspects mentioned above, we propose a model for the operation of an electric waterborne vessel system for a heterogeneous on-demand service, which dynamically optimises operations to handle both passengers and parcels, aiming to achieve higher efficiency. The model applies a rolling horizon approach to incorporate the dynamicity and the stochasticity of demand. The model then updates the route plan of vessels when a new request appears in the time horizon by solving a static pickup and delivery problem for heterogeneous services at the time step. An insertion heuristic is proposed to efficiently solve the static problem. The impact of combining passenger mobility and logistics is assessed by comparing the operations of mixed-purpose vessels, which allow passengers and parcels to be on board simultaneously, and conventional fixed-purpose vessels. A series of static experiments is first conducted to evaluate the solving performance of the proposed heuristic. Afterwards, the dynamic model is demonstrated using two demand scenarios, which are generated in a stochastic manner.

Figure 1 illustrates simple examples of the routing of conventional fixed-purpose vessels and mixed-purpose vessels to explain the theoretical benefits of mixed-purpose vessels. Each request has a type, either passenger or parcel. In Fig. 1a, each vessel can only serve one of the types of requests, while the vessels in Fig. 1b are able to handle both types of requests. Both cases decide the routing of vessels to minimise the total distance. Because the mixed-purpose vessels can merge passenger and parcel requests in the same vessel, they require less total travel distance (TTD) than that of fixed-purpose vessels. In the example, the total distance of the fixed-purpose vessels is 9.4 km, and it is 5.8 km for the mixed-purpose vessels, even though they both handle the same set of requests. In addition, the total empty travel distance (TETD) for the fixed-purpose vessels is 3.3 km, while it is 1.0 km for the mixed-purpose vessels. It is expected that the mixed-purpose vessels offer shorter travel distances and better efficiency operation than conventional fixed-purpose vessels while serving the same demand.

Fig. 1: Illustrations of the routing of conventional fixed-purpose vessels and mixed-purpose vessels.
Fig. 1: Illustrations of the routing of conventional fixed-purpose vessels and mixed-purpose vessels.
Full size image

a Routing with fixed-purpose vessels. The grey circles represent the terminals (nodes) where customers can be picked up and delivered. The green circle is the current location of a parcel vessel, together with green arrows representing the route of this vessel. The blue circle represents the current location of a passenger vessel, together with blue arrows representing the route of this vessel. d represents the distance between two nodes. The total distance is calculated by summing the distances of the routes of each vessel. b Routing with mixed-purpose vessels. The grey circles represent the terminals (nodes) where customers can be picked up and delivered. The green circle is the current location of a mixed-purpose vessel, together with green arrows representing the route of this vessel. The blue circle represents the current location of a mixed-purpose vessel, together with blue arrows representing the route of this vessel. d represents the distance between two nodes. The total distance is calculated by summing the distances of the routes of each vessel.

The key contributions of this study are threefold: (a) we formulate a dynamic pick-up and delivery problem for a waterborne vessel transport system for heterogeneous service while taking into account the stochasticity of demand, (b) we propose and solve a dynamic framework to optimise the vessels’ operations in response to new requests and an insertion heuristic to solve the problem, and (c) we evaluate the impact of combining mobility and logistics on vessel routing with heterogeneous services by comparing the request met ratio (RMR) and travel distance of mixed-purpose vessels to those of conventional fixed-purpose vessels.

Literature review

This study considers the dynamic operation of an on-demand waterborne vessel system for heterogeneous services. This topic is closely related to the well-known pickup and delivery problem (PDP) and one of its variants, the share-a-ride problem (SARP), which integrates passengers and freight transportation4.

The problem considered in this study is a variant of PDP. PDP arose as a static problem, in which all the information is known before the routing of vehicles is determined. In this study, the travel information from customers would arrive gradually and be unknown beforehand, and thus, the problem must be solved dynamically.

The emergence of demand-responsive transport (DRT) services in transportation, such as Uber, leads to strong research attention to incorporate the dynamicity in PDP. In the dynamic PDP (DPDP), the information on requests is gradually revealed over time. The DPDP can be classified based on the degree of dynamism and the objective function.

The degree of dynamism is measured by the granularity of the time step in which new information is revealed (frequency) and the time between a new request’s arrival and the serving of the request (urgency)5,6. The objective functions can vary by the characteristics of the services and the purpose of the study. The objective functions mostly involve either minimising or maximising an indicator, and most of them are related to either efficiency or the costs of transportation services7,8. When it comes to costs, several studies also aimed to maximise the profit of services9,10. In terms of the efficiency of the services, several studies aimed to minimise the total length of the route for their DPDP in parcel deliveries11,12. Apart from objectives related to costs and efficiency of the services, Aslaksen et al.13 propose and optimise a combined dial-a-ride and fixed schedule ferry service from the user perspective. It assigns the travel demand to either fixed schedule services or an on-demand service so the user utility is maximised. In this study, the waterborne vessel system will focus on the efficiency of the service and will aim to minimise the TTD since one of the interests of this study is to investigate the improvement of the efficiency of mixed-purpose vessels compared to fixed-purpose vessel usage.

Several models and approaches have been studied to optimise the SARP for both passengers and freight. Li et al.4 consider taxi service handling both passengers and parcel delivery requests. The authors formulate a mixed-integer linear problem that matches person and parcel requests and taxis to maximise the taxi company’s profit. Li et al.14 extend the SARP by considering stochastic travel times and stochastic delivery locations, respectively. Yu et al.15 extend the SARP to which there are multiple depots for the taxis to incorporate the complexity and scattering of pickup and delivery locations for passengers and parcels, and real-life situations in which taxis depart from multiple depots instead of one centralised depot. The SARP not only remain within studies that consider taxi services. Zhan et al.16 develop a model which considers ride-hailing sharing between passengers and parcels by ride-hailing vehicles (RHV) and electric motorcycles (EM).

Modular vehicle routing17 and ride-pooling integration18 demonstrate significant cost and distance reductions by consolidating passenger and freight flows through shared or modular vehicles. Similarly, integrating freight into public transport, such as bus networks19 and mass rapid transit20, highlights eco-friendly solutions leveraging existing infrastructure, particularly for time-sensitive deliveries like same-day services. Crowdshipping emerges as a promising model, utilizing travellers on existing trips for freight delivery, but trust21 and matching efficiency22 remain critical challenges. For rural areas, DRT combines flexibility and coverage to enhance service efficiency23. While co-modality24 and public transport-based crowdshipping25 show potential for sustainable city logistics, success depends on user acceptance, infrastructure adaptability, and policy support. Mo et al.26 emphasize metro systems, proposing a Mixed-Integer Linear Programming model that integrates freight delivery into passenger services during off-peak hours to minimize costs while maintaining passenger service quality. Yang et al.27 explore rural contexts with a demand-driven service model, combining passenger and freight routing to optimize vehicle utilization and reduce environmental impact. Bruzzone et al.28 focus on Freight-on-Transit schemes, proposing a multi-commodity network design model that evaluates stakeholder preferences and policy conditions to implement sustainable first-last mile solutions in urban and cross-border areas.

Table 1 presents a summary of the reviewed literature. The review shows the variety of studies conducted in the PDP. Due to the emergence of on-demand transport services, implementing dynamism in PDP has caught research interest, and it has been studied in various settings. The dynamicity in the PDP has been implemented by making the travel requests arrive gradually in the model and solving the problem iteratively throughout the time horizon. After the emergence of SARP4, combining passengers and parcels in ride-sharing transportation has become a popular problem in the field. This problem has also been studied widely in different settings and by adding aspects such as dynamicity and stochasticity.

Table 1 Literature overview related to PDP and SARP

The majority of the above-mentioned studies consider ride-sharing systems for road transport for on-demand services. Combining passengers and parcels in a transport service has the potential to be expanded to different modes. Because of their large capacity, urban waterborne vessel systems can accelerate urban logistics without interfering with passenger transport. Most studies investigating the impact of mixed-purpose vehicles compared to conventional fixed-purpose vehicles focus on static scenarios, where they assume that all requests are known in advance prior to optimization. We study an urban waterborne vessel system for heterogeneous services in a dynamic setting and evaluate the impact of mixed-purpose vessels in comparison to conventional fixed-purpose vessels.

Methods

The investigated problem is an extension of the PDP, which considers the problem dynamically and for heterogeneous services. Travel requests are gradually inserted into the model, and the vessels update their routes immediately when the new request arrives. All the requests in the model are served by dispatching a vessel. A rolling horizon approach is applied to incorporate this dynamicity. Assuming each interval is τ, the time horizon T is divided into p intervals, TS = {t1, t2, …tp}, where p = T/τ. Table 2 lists all the notations defined for the model. It is worth noting that the sets are time-dependent because the network graph G(t) changes by including the current locations of vessels as temporal nodes. Requests can be placed into new sets or removed after they have been fully serviced. Thus, at each time step, the sets related to requests are also different. At time t, a static problem for each time step is defined as follows:

Table 2 Notations of the model

Let G(t) = {N(t), A(t)} be the complete graph, where \(N(t)=\{0,1,\ldots ,n,\ldots ,o(k,t),{o}^{{\prime} }\}\) is the set of nodes at time step tTS and A(t) = {(i, j), i, jN(t), i ≠ j} is the set of arcs at time step t. NcN(t) represents the set of nodes which has a charging facility; thus, when a vessel is dwelling at a terminal in this set, it is possible to charge the battery of the vessel.

At time t, the set of all requests R(t) is defined as R(t) = Ra(t) Ru(t) Rs(t), where Ra(t) is the set of assigned requests, Ru(t) is the set of unassigned requests, and Rs(t) is the set of serving requests. When a request is assigned to be served by a vessel, the assignment will be fixed and will not change later. Each request input in the static problem is part of only one of the sets, Ru, Ra, or Rs. Each request r has its type s(r), pick up and delivery terminal p(r), d(r), the earliest pick up time a(r), the latest delivery time b(r), the maximum waiting time α(r), and the size of the request q(r). For assigned and serving requests, the assigned vessels are represented as k(r), and this is applied to formulate the constraints that once a vessel is assigned to a request, it is not allowed to change the assignment of the vessel to the request.

Each vessel has a pre-defined type, such as mixed, passenger, or parcel. The set of mixed vessels, passenger vessels, and parcel vessels is represented as Km, Kp, and Kf, respectively. The set of all vessels is represented as K = KmKpKf. The vessel type limits the type of requests the vessel can serve. Mixed vessels can serve both passenger and parcel requests, while passenger vessels can only serve passenger requests, and parcel vessels can only serve parcel requests. Apart from the type of vessel, each vessel has a homogeneous property regarding the total loading capacity and the battery. The loading capacity of a vessel and the battery capacity are represented as parameters C and B, respectively. In this model, vessels are assumed to travel at a constant speed of v. Because of this assumption, the battery consumption is assumed to have a positive linear relationship with the travel distance of the vessel. δij represents the battery consumption between two nodes i, jN(t). At a terminal with a charging facility, vessels always charge their batteries at a constant rate of η.

The route of the vessels in this problem is determined by decision variables that govern the connections between nodes and the sequencing of visits. These variables decide whether a vessel travels between specific nodes (\({x}_{ij}^{k}\)), if it serves particular requests along those routes (\({y}_{ij}^{kr}\)), and the order in which nodes are visited to ensure no sub-tours occur (\({z}_{ij}^{k}\)). By optimizing these variables, the optimal route for each vessel is found, considering factors such as the timing of arrivals, service duration, and battery levels.

Given the demand for passengers and parcels and the service of the ferries, the dispatching of the fleet will be determined dynamically. The demand is described as a set of individual travel requests to model an on-demand service for both passenger and parcel requests. The dynamicity of the model is incorporated by applying a rolling horizon approach. Figure 2 shows the workflow of the dynamic model. During the rolling horizon, the model solves a static subproblem explained in the mathematical model to update the routing and scheduling of the vessels when a new request is inserted. The new route plans will be followed by the vessels until the next time step when a new request occurs. In the next time step, the status of vessels, such as their locations, loading levels, and battery levels, will be updated based on the route plan. The request statuses will be updated accordingly. Requests can be failed, served-complete, serving, assigned, or unassigned. It is assumed that assigned requests cannot be newly assigned to a different vessel once the assignment is determined, despite the fact that there might be some cases in which the reassignment of requests to vessels leads to better efficiency. These updated statuses of the vessels and requests will be inherited in the next time step and will act as constraints to determine the next route plan. This process continues until the time steps reach the end of the time horizon. The model is thereby able to optimise the full day of the operation of waterborne vessels for heterogeneous services.

Fig. 2: Flowchart for the dynamic optimisation.
Fig. 2: Flowchart for the dynamic optimisation.
Full size image

The flowchart illustrates a dynamic optimisation algorithm with a rolling horizon for vessel routing and scheduling. It begins with the scheduling time horizon, followed by iteratively updating the time step (t = t + 1). At each step, the algorithm solves a static subproblem, optimizing routing and scheduling based on current conditions. If new requests arise, the system updates the statuses of vessels (including location, loading, battery level, and routing plan) and request statuses (classified as failed, served, serving, assigned, or unassigned). The process continues until the final time step is reached, at which point the scheduling horizon ends. This framework ensures adaptability to new information, enabling real-time decision-making for vessel operations.

For each time step, the following mathematical programming model is proposed. The model is built by based on the Zhang et al.29. The objective function (1) is to minimise the TTD of all vessels, which indicates the maximum efficiency of the system.

Objective function

$$min\sum _{k\in K}\sum _{i\in N}\sum _{j\in N}{d}_{ij}{x}_{ij}^{k}$$
(1)

Subject to:

$$\sum _{j\in N(t)}{x}_{o(k,t)j}^{k}=1\qquad \forall k\in K$$
(2)
$$\sum _{j\in N(t)}{x}_{o(k,t)j}^{k}=\sum _{j\in N(t)}{x}_{j{o}^{{\prime} }}^{k}\qquad \forall k\in K$$
(3)
$${x}_{ij}^{k}\le {z}_{ij}^{k}\qquad \forall (i,j)\in A(t),k\in K$$
(4)
$${z}_{ij}^{k}+{z}_{ji}^{k}=1\qquad \forall (i,j)\in A(t),k\in K$$
(5)
$${z}_{ij}^{k}+{z}_{jp}^{k}+{z}_{pi}^{k}\le 2\qquad \forall i,j,p\in N(t),k\in K$$
(6)
$$\sum _{k\in K}\sum _{j\in N(t)}{y}_{p(r)j}^{kr}=1\qquad \forall r\in {R}_{u}(t)$$
(7)
$$\sum _{k\in K}\sum _{i\in N(t)}{y}_{id(r)}^{kr}=1\qquad \forall r\in {R}_{u}(t)$$
(8)
$$s(r){y}_{ij}^{kr}=0\qquad \forall (i,j)\in A(t),k\in {K}_{f},r\in R(t)$$
(9)
$$(1-s(r)){y}_{ij}^{kr}=0\qquad \forall (i,j)\in A(t),k\in {K}_{p},r\in R(t)$$
(10)
$$\sum _{i\in N(t)}{x}_{ip(r)}^{k(r)}=1\qquad \forall r\in {R}_{a}(t)$$
(11)
$$\sum _{j\in N(t)}{y}_{p(r)j}^{k(r)r}=1\qquad \forall r\in {R}_{a}(t)$$
(12)
$$\sum _{i\in N(t)}{y}_{id(r)}^{k(r)r}=1\qquad \forall r\in {R}_{a}(t)\cup {R}_{s}(t)$$
(13)
$$\sum _{j\in N(t)}{y}_{o(k,t)j}^{k(r)r}=1\qquad \forall r\in {R}_{s}(t)$$
(14)
$$\sum _{i\in N(t)}{y}_{id(r)}^{kr}-\sum _{j\in N(t)}{y}_{p(r)j}^{kr}=0\qquad \forall k\in K,r\in {R}_{a}(t)\cup {R}_{u}(t)$$
(15)
$$\sum _{j\in N(t)}{x}_{ij}^{k}-\sum _{j\in N(t)}{x}_{ji}^{k}=0\qquad \forall k\in K,i\in N(t)\backslash O(t),o^{\prime}$$
(16)
$$\sum _{j\in N(t)}{y}_{ij}^{kr}-\sum _{j\in N(t)}{y}_{ji}^{kr}=0\qquad \forall k\in K,r\in {R}_{a}(t)\cup {R}_{u}(t),i\in N(t)\backslash p(r),d(r)$$
(17)
$$\sum _{j\in N(t)}{y}_{ij}^{kr}-\sum _{j\in N(t)}{y}_{ji}^{kr}=0\qquad \forall k\in K,r\in {R}_{s}(t),i\in N(t)\backslash p(r),d(r),O(t)$$
(18)
$${y}_{ij}^{kr}\le {x}_{ij}^{k}\qquad \forall (i,j)\in A(t),k\in K,r\in R(t)$$
(19)
$${t}_{i}^{k}\le {t}_{i}^{{\prime} kr}\qquad \forall i\in N(t),k\in K,r\in R(t)$$
(20)
$${t}_{i}^{{\prime} kr}\le {t}_{i}^{{\prime} k}\qquad \forall i\in N(t),k\in K$$
(21)
$${\overline{t}}_{i}^{kr}\le {\overline{t}}_{i}^{k}\qquad \forall i\in N(t),k\in K,r\in R$$
(22)
$${t}_{i}^{k}\le {t}_{i}^{kr}\qquad \forall i\in N(t),k\in K,r\in R(t)$$
(23)
$${t}_{i}^{{\prime\prime} k}=\sum _{r\in R(t)}{t}_{i}^{{\prime\prime} kr}\qquad \forall i\in N(t),k\in K$$
(24)
$${\overline{t}}_{i}^{k}={t}_{i}^{{\prime} k}+{t}_{i}^{{\prime\prime} k}\qquad \forall i\in N(t),k\in K$$
(25)
$${t}_{i}^{{\prime\prime} kr}+{t}_{i}^{{\prime} kr}\le {\overline{t}}_{i}^{kr}+M(1-{y}_{ij}^{kr})\qquad \forall i,j\in N(t),k\in K,r\in R(t)$$
(26)
$$a(r){y}_{ij}^{kr}\le {t}_{i}^{k}\qquad \forall (i,j)\in A(t),k\in K,r\in R(t)$$
(27)
$${\overline{t}}_{i}^{kr}\le b(r)\left({y}_{ij}^{kr}+M\left(1-{y}_{ij}^{kr}\right)\right)\qquad \forall (i,j)\in A(t),k\in K,r\in R(t)$$
(28)
$${\overline{t}}_{i}^{k}+{d}_{ij}/v-{t}_{j}^{k}\le M\left(1-{x}_{ij}^{k}\right)\qquad \forall k\in K,(i,j)\in A(t)$$
(29)
$${\overline{t}}_{i}^{k}+{d}_{ij}/v-{t}_{j}^{k}\ge M\left(1-{x}_{ij}^{k}\right)\qquad \forall k\in K,(i,j)\in A(t)$$
(30)
$${t}_{p(r)}^{{\prime} kr}-a(r)\le \alpha (r){y}_{p(r)j}^{kr}+M\left(1-{y}_{p(r)j}^{kr}\right)+M(1-s(r))\quad \forall j\in N(t),k\in K,r\in {R}_{a}(t)\cup {R}_{u}(t)$$
(31)
$$\sum _{r\in R(t)}{y}_{ij}^{kr}q(r)\le C\,{x}_{ij}^{k}\qquad \forall (i,j)\in A(t),k\in K$$
(32)
$${\beta }_{o(k,t)}^{k}=e(k,t)\qquad \forall k\in K$$
(33)
$${\beta }_{i}^{{\prime} k}={\beta }_{i}^{k}\qquad \forall i\in N(t)\backslash {N}_{c},k\in K$$
(34)
$${\beta }_{i}^{{\prime} k}=min\left(B,{b}_{i}^{k}+\eta \left({\overline{t}}_{i}^{k}-{t}_{i}^{k}\right)\right)\qquad \forall i\in {N}_{c},k\in K$$
(35)
$${\beta }_{i}^{k}\ge 0.2B\qquad \forall i\in N(t),k\in K$$
(36)
$${\beta }_{i}^{{\prime} k}-{\delta }_{ij}-{\beta }_{j}^{k}\le M\left(1-{x}_{ij}^{k}\right)\qquad \forall (i,j)\in A(t),k\in K$$
(37)
$${\beta }_{i}^{{\prime} k}-{\delta }_{ij}-{\beta }_{j}^{k}\ge -M\left(1-{x}_{ij}^{k}\right)\qquad \forall (i,j)\in A(t),k\in K$$
(38)
$${x}_{ij}^{k},{y}_{ij}^{kr},{z}_{ij}^{kr}\in \{0,1\}\qquad \forall (i,j)\in A(t),k\in K,r\in R(t)$$
(39)

Constraints (215) are the typical PDP constraints. Constraints (2) and (3) ensure a vessel will leave the depot and arrive at the end depot. Constraints (46) are the subtour elimination constraints. Constraints (715) ensure that a request is either only served by one vessel or not served, and if the request is served, it is picked up and delivered by the same vessel. In the case of assigned and serving requests, the vessel is already determined as k(r). Constraints (9) and (10) restrict the assignment of requests to vessels if the request and vessel type do not match.

The flow conservation constraints are set as well. Constraints (1618) are the flow conservation constraints in terms of the vessel’s route and the request’s route. Constraints (19) ensure that if a request is being served between two nodes, the vessel travels between the two nodes.

Constraints (2031) are related to the time constraints. Constraints (20) ensure the service start time for a request is after the vessel arrives at the terminal. Constraints (21) define the vessel’s last service start time. Constraints (22) ensure the vessel only departs after all services are completed. Constraints (23) maintain the arrival time of a vessel and requests at the terminal. Constraints (24) determine the service time for a vessel by summing all requests’ service time. Constraints (25) determine the service end time of a request by adding the service time to the service start time. Constraints (27) and (28) are the time windows of requests. Constraints (29) and (30) define the deterministic travel time between two nodes. Constraints (31) are the maximum waiting time for a request. For parcel requests, the maximum waiting time constraint is loosened by big M because the waiting time for parcels does not matter as long as the delivery time window is respected in constraint (28). This is implemented by the parameter s(r), which specifies the type of request, and s(r) is equal to 0 for parcel requests.

Constraints (32) are the capacity constraints. Constraints (3338) are related to the battery level of the vessels. Constraints (33) conserve the initial battery level at each time step. Constraints (34) keep the battery level when arriving if the node is not a charging terminal, and constraints (35) describe the charging of vessels, but never exceed the battery capacity. Constraints (36) limit the battery level of vessels to never go under 20% of the battery capacity, and constraints (37) and (38) describe the deterministic battery consumption between two nodes. Finally, Constraints (39) are the domain of the decision variables.

The proposed subproblem is a variant of the pick-up and delivery problem and is widely studied. It is known that the complexity of these combinatorial optimisation problems is proven to be NP-hard30 and requires computational resources to solve large instances. In addition, it is important to solve each time step in a short time when a rolling horizon is applied so that the vessels can quickly react to new situations. Therefore, we develop an insertion heuristic to solve the subproblem at each time step. In this study, a greedy insertion heuristic31 is applied to accelerate the optimisation of the vessel operation at each time step of the rolling horizon. The greedy insertion is applied for several reasons. The first reason is its exploration ability. Greedy insertion investigates all the possible insertions in the current route. Since the objective function of the problem is to minimise the TTD, the greedy insertion will find the best insertion position of the nodes so the TTD is minimised. The second reason is the size of the problem. At every time step, the number of requests inserted into the system is expected to be smaller than the traditional static pick-up and delivery problem. In a traditional static pick-up and delivery problem, it is expected to provide a good feasible solution in a short time for large instances since all demand is known a priori. Therefore, more efficient insertion algorithms such as nearest insertion and ALNS31 have been studied in different cases. However, the problem in this study is less likely to encounter large instances, and therefore, it is possible to obtain a good, feasible solution by greedy insertion in a short computation time.

The proposed insertion algorithm is illustrated in Algorithm 1. When a new request occurs while rolling the time horizon, the algorithm creates a new sequence and its associated route plan for each vessel trying to serve the new requests. Firstly, the locations of the vessels and the request status are updated based on the assumption that the vessels are pursuing the previous route plan. After the status update, a step to limit the positions of insertion of the new requests’ origin and destination nodes in the sequence is taken.

Algorithm 1

Insertion heuristic algorithm with new requests

1: for t in TS do

2:  if new request arrives then

3:  Input: new_requests, route_plan

4:  // Update current location of vessels and requests’ states

5:  current_locations, requests_statusupdate_status(previous_route_plan)

6:  // Limit insertion positions of new requests

7:  feasible_positionsempty

8:  for r in new_requests do

9:   limitrfind_limit_position(r)

10:   Append limitr to feasible_positions

11:  end for

12:  // Create route plans for possible insertions and calculate the objective value

13:  possible_routesgenerate_possible_routes(feasible_positions)

14:  objective_valuescalculate_objective_values(possible_routes)

15:  // Check feasibility of routes and remove infeasible ones

16:  feasible_routesempty

17:  for γ in possible_routes do

18:   if constraints are satisfied then

19:    Append γ to feasible_routes

20:   end if

21:  end for

22:  // Retrieve the route plan with the best objective value

23:  best_route_planget_best_route(feasible_routes, obj)

24:  // Update the route plan

25:  route_planbest_route_plan

26: end if

27: Go to the next time step

28: end for

Each new request has a pickup and delivery time window, as well as a request type of either passenger or parcel. This information is applied to limit the position of insertion in the previous route plan to make at least the new requests feasible. Regarding the type of request, the request can only be served by either a mixed-purpose vessel or a fixed-purpose vessel with the same request type assigned. When a fixed-purpose vessel is present, requests that do not match the type of the vessel cannot be served by the vessel; thus, the insertion of the origin and destination nodes in the sequence of this vessel is prohibited. This constraint does not apply to mixed-purpose vessels. In terms of the time window, the new request has the latest position in the previous route that can be inserted to respect the pickup time and the delivery time of the request. The last position the request can be inserted is identified to limit the insertion position.

After the limits of insertion positions are identified for all new requests, all possible sequences and the corresponding route plans are generated. At the same time, the objective value, which is the TTD, is calculated. The set of possible sequences and routes is sorted by the objective value for the next step to check the feasibility of the routes. Although the time feasibility of the new requests is secured in the constraints by the insertion positions, the new route plan is generated based on the aforementioned assumptions and it is necessary to check the feasibility of the new routes considering all the requests being served by the vessel, as well as the loading and battery capacity of the vessel. The constraints are the same as the mathematical model. The feasibility check starts from the route plan with the lowest objective value, and it continues until a feasible route plan is found. This route plan will be the next route plan for the vessels and will be pursued until the next time a new request occurs. This process continues until the time horizon is completed.

In summary, we propose both a mathematical model and a heuristic algorithm to address the on-demand waterborne vessel routing problem, which involves stochastic parcel and passenger requests. The heuristic algorithm efficiently provides near-optimal solutions for dynamic requests within a short time frame. This approach is well-suited for routing and scheduling on-demand waterborne vessels that offer mixed services for both passengers and parcels.

Results

Fredrikstad, Norway, is used as the case study location. The numerical experiment starts by evaluating the performance of solving the static subproblem proposed in the mathematical model by the proposed insertion heuristic and a commercial solver, Gurobi. Afterwards, the dynamic problem is solved for different stochastic demand scenarios, and the results of the transportation performance are provided.

Fredrikstad is located along the southeast coast of Norway. It has an urban waterborne vessel system connecting the old town and the city centre, and new water metro stops using shared electric ferries are being developed in the new city centre area. The mobility of Fredrikstad has been highly dependent on private cars with a 59% mode share, despite the abundant waterways the city has32, and the municipality focuses on reducing the dependency on car trips in order to stop the growth of climate emissions. The considered network consists of eight terminals and is illustrated in Fig. 3a. The terminals have already been used for the conventional waterway transit service provided by the municipality of Fredrikstad, and these terminals are considered in this case study as well. The terminals are labelled with a unique ID from 0 to 7.

Fig. 3: Case location and the vessel.
Fig. 3: Case location and the vessel.
Full size image

a Terminal in Fredrikstad. The red icons represent the location of the terminals for waterborne vessels in Fredrikstad. The numbers are assigned to each terminal for modelling and explanation purposes. b Interior of Hyke’s waterborne vessel solution33. The spacious and flexible interior of the vessel provides the opportunity to serve mixed passenger and parcel service.

The private company Hyke33 has been developing an electric fleet of waterborne vessels. Hyke is collaborating with the municipality of Fredrikstad to transform urban mobility and transportation to be more sustainable and accessible to people by utilising the waterborne vessel solution to provide mobility and logistic service in the urban waterway of Fredrikstad. The interior of Hyke’s waterborne vessel solution is shown in Fig. 3b. The modularised interior of the vessel enables different allocations of capacity between passengers and parcels; thus, it is possible to provide service to passengers and parcels simultaneously. The vessel is designed to be emission-free through full electrification and also to reduce the noise when operating. Not only does the vessel property contribute to more environmentally friendly transportation, but this innovation in the waterway transportation in the city is also expected to stimulate the modal shift of the citizens from private cars to multimodal transportation by providing more comfortable and accessible services.

Based on the mentioned aspects, Fredrikstad is suitable as the case location for applying the proposed model and investigating the potential of electric on-demand waterborne vessels for heterogeneous services in the urban transportation environment.

One of the objectives of this study is to investigate the efficiency and the service level of waterborne vessels for heterogeneous on-demand service by comparing the mixed-purpose vessel system with the conventional fixed-purpose vessel system. The investigation is conducted through the analysis of the following key performance indicators (KPIs).

  • Total travel distance (TTD): The total travel distance is the distance travelled by all the vessels throughout the day. It is computed by tracking the travelled distance of each vessel between each time step of the rolling horizon. The lower this value is, the higher the efficiency of the system.

  • Total empty travel distance (TETD): the TETD is the distance travelled by all the vessels throughout the day without loading any requests. It is computed by tracking the travelled distance of each vessel between each time step and the loading level of the trip. If the loading level is zero, the travelled distance is added to the empty travel distance. The lower the value, the higher the efficiency of the system.

  • Request met ratio (RMR): the RMR is the ratio between the number of served requests and the total number of requests at the end of the time horizon. It indicates to what extent the requests are served by the service. The higher the value is, the higher the service level is.

Eighteen instances are generated for the experiment by setting different fleet sizes (number of vessels) and the number of requests. Table 3 lists the parameters used for the experiments. The notations of the parameters are described later in Table 2. Fleet sizes ranging from two to four and the number of requests between one and six are tested. The requests are generated stochastically. The vessels are assigned to different terminals arbitrarily, and the route plans for all vessels are optimised to serve the requests. For example, when two vessels are available (K = 2) and six requests are made (R = 6), the route plans for both vessels are optimised to serve all six requests. These two factors significantly influence the complexity of the problem. The waterborne vessel system in Fredrikstad (Fig. 3a) is used for this series of experiments. The vessels are assumed to be homogeneous and are defined according to the technical specifications of Hyke’s waterborne vessel solution33.

Table 3 Parameters used for the static experiments

Each instance is solved by the exact approach and the insertion heuristic. The results of the static experiment are shown in Table 4. The objective value, MIP gap, and computational time are collected. The MIP gap represents the difference between the objective value and the lower bound of solutions. The objective value and computational time are collected for the insertion heuristic. All experiments are repeated three times to obtain the average values. The experiments are repeated to consider the randomness of the computational time. Each experiment has a time limit of 1 h. The results indicate the capability of the insertion heuristic in finding optimal/good solutions for all instances in a shorter computational time than the exact approach. The heuristic algorithm achieves a minimal optimality gap compared with the objective of the exact approach, ensuring high-quality solutions.

Table 4 Comparison between the exact approach and the insertion heuristic for the static subproblem

The insertion heuristic has a significantly shorter computational time than the exact approach if the number of requests is less than or equal to 5. It manages to find the solution within a maximum of 15 s for these instances. When six requests are inserted, both methods require a long computational time to find the solution. Therefore, it can be said that a maximum of five requests is the limit of the solving capability of the insertion heuristic under the tested fleet size variation. The computational time of the insertion heuristic is not linear to the number of requests or the fleet size. This is logical since the heuristic applies a greedy insertion and tries all possibilities of insertion. The increment in the number of requests and fleet size exponentially increases the possible combinations of insertion. Thus, the computational time is expected to drastically increase when the fleet size and the number of requests increase. The results suggest that the number of requests substantially influences the computational time more than the fleet size.

In our dynamic waterborne transport model, each time step corresponds to 1 min. Given the system’s operational characteristics, it is unlikely to encounter multiple simultaneous requests (e.g. five or more) within a single minute. Instead, requests are distributed throughout the day, allowing the system to effectively manage higher daily request volumes without compromising computational efficiency.

The proposed dynamic model is tested to gain insights into the transportation performance of mixed-capacity waterborne vessels used in heterogeneous on-demand services. By utilising the network of Fredrikstad (Fig. 3a), experiments with different demand scenarios and vessel type combinations are conducted. The fleet size is assumed to be fixed at two. Thus, four vessel type combinations, (mixed, mixed), (mixed, passenger), (mixed, parcel), and (parcel, passenger) are examined. The starting depots of the vessels are assumed to be terminals 4 and 6. These terminals are also where the charging facilities are installed. The parameters regarding the vessel property are the same as Table 3.

Scenario settings

The scenarios for the dynamic experiment are defined by sets of individual requests in a stochastic approach. A set of travel requests from passengers and delivery requests from parcels represents the demand for the service.

Considering the temporal and spatial distribution of transport demand, an OD and time-specific Poisson process is conducted to generate the passenger request stochastically34. The arrival rate λ is set per OD pair and time period. The dynamic model considers a full usual workday between 6:00 and 22:00, and the time period for passengers is divided into five sections: 6:00–7:00, 7:00–9:30, 9:30–16:00, 16:00–18:30, 18:30–22:00. This division is defined to incorporate the peak hours and the off-peak hours in terms of the passenger demand. Time periods 7:00–9:30 and 16:00–18:30 are considered the morning peak and the evening peak, respectively. In these time periods, the parameters are adjusted to have higher arrival rates than in other time periods. In the experiment, the peak hours’ arrival rate is set to be 1.5 times larger than the off-peak hours.

The land uses surrounding each terminal—such as residential, commercial, or industrial areas—vary significantly, and these variations are expected to impact passenger demand patterns. The municipality of Fredrikstad published a master plan of urban planning between 2023 and 203535. The plan states that the area around terminals 4 and 5 in Fig. 3a is part of the focused areas of urban development. More residential buildings and business activities are planned for the city. Therefore, the arrival rate for OD pairs where either the origin or the destination is terminal 4 or 5 is set to double that of the other OD pairs, and the arrival rate between terminal 4 and 5 is set to triple that of the other OD pairs.

Each passenger request specifies the number of passengers, which is randomly determined according to a discrete uniform distribution ranging from 1 to 10. It is assumed that the maximum waiting time for each passenger request is 15 min, and the latest delivery time is 45 min after the request occurs. The service time of a request depends on the size of the request, and it is assumed to be 15 s per passenger.

The occurrence time of the requests and the required arrival time of the parcel derive from the uniform distribution. In contrast to passenger requests, the waiting time is less important for parcel requests. The important aspect of parcel requests is to arrive at the destination by the required arrival time to ensure the parcels are delivered to the customers as ordered. Therefore, the maximum waiting time is set to a large enough time for parcel requests, and only the delivery time window is applied for them. The time period for parcel requests is divided into 6:00–11:00, 11:00–15:00, and 15:00–21:00. These are set based on the assumption that the parcels can be categorised into three required delivery times: 12:00, 16:00, and 22:00. The required arrival time of each passenger request is determined by a discrete probability distribution for each time step, as shown in Table 5. The parcel request would have at least an hour between the occurrence time and the required arrival time to ensure that the parcel is feasible to be delivered within the time window. The size of a parcel request is also randomly determined by a discrete uniform probability between 1 and 10. It is assumed that the service time for a parcel request is dependent on its size and is set to require 30 s per passenger unit. The request size of parcel requests is defined in the passenger unit for this study.

Table 5 Probability of each required delivery time from each pop-up time period

Two demand scenarios are developed for the experiment, “high” and “low”. The total number of requests for each demand scenario is shown in Table 6. Figure 4a, b illustrate the temporal distribution of the cumulative number of requests. It is worth noting that because of the higher arrival rate between the peak hours and the off-peak hours, the increment of passenger requests (red lines) is sharper between the peak hours (7:00–9:30 and 16:00–18:30) than the off-peak hours. In contrast, the parcel requests are widely and evenly spread throughout the day.

Table 6 Number of requests per demand scenario
Fig. 4: Temporal distribution of the total number of requests under each demand scenario.
Fig. 4: Temporal distribution of the total number of requests under each demand scenario.
Full size image

a High demand scenario. The red line shows the cumulative number of passenger requests throughout the time horizon. The blue line shows the cumulative number of parcel requests throughout the time horizon. b Low demand scenario. The red line shows the cumulative number of passenger requests throughout the time horizon. The blue line shows the cumulative number of parcel requests throughout the time horizon.

High-demand scenario results

Table 7 presents the RMR, TTD, and TETD of each vessel type combination for the high-demand scenario, respectively. The RMR improved by 7–13 points when both vessels are mixed-purpose compared to other vessel type combinations. This result is plausible since any request can be assigned to both vessels in (mixed, mixed), which means the closer vessel to the origin of the request is able to pick up the request in most cases. On the other hand, (parcel, passenger) has the lowest RMR. In contrast to (mixed, mixed), the closer vessel to the pickup terminal is not necessarily able to serve the request because of the fixed purpose of the vessel; thus, more requests are rejected because of the time constraints. It is logical that (mixed, parcel) has a higher RMR than that of (mixed, passenger) since there are more parcel requests than passenger requests generated in this experiment, and the dependency on the mixed-purpose vessel is relatively lower for (mixed, parcel) than (mixed, passenger).

Table 7 KPIs for each vessel type combination (high-demand, Insertion heuristic)

TTD does not necessarily decrease by implementing more mixed-purpose vessels. The lowest TTD is obtained by (mixed, passenger) among the four vessel type combinations. The highest TTD is observed in (mixed, mixed), with an increase of 19.1% compared to (mixed, passenger). This result derives from the difference in the RMR. As mentioned before, (mixed, mixed) has a significantly higher RMR than that of (parcel, passenger). It is natural that the more requests the vessels serve, the longer the TTD is. It can be said that a trade-off between the RMR and the TTD is observed from the results.

In contrast to the TTD, mixed-purpose vessels reduce the TETD, as the (parcel, passenger) has the largest TETD among the four vessel type combinations. The availability of mixed-purpose vessels decreases the TETD by 12.5–34.9% from (parcel, passenger). The reduction of TETD by implementing mixed-purpose vessels is expected because the mixed-purpose vessels are able to serve any request, and the cases in which a vessel far from the pickup terminal needs to pick up a specific type of request. The model assigns the nearby mixed-purpose vessel to the request rather than the further fixed-purpose vessel.

Low-demand scenario results

Table 8 presents the KPIs for each vessel type combination for the low demand scenario. (mixed, mixed) has a significantly high RMR of 86.98% compared to other vessel type combinations. The other three combinations have a similar RMR of around 80%. Similar to the high-demand scenario, (mixed, mixed) has a higher RMR than that of (parcel, passenger). This indicates the improvement of service level by having mixed-purpose vessels.

Table 8 KPIs for each vessel type combination (low-demand, insertion heuristic)

The trade-off between RMR and TTD is observed in the low-demand scenario as well. Naturally, the more requests the vessels serve, the more the vessels need to travel. (parcel, passenger) has high TTD, and this can be explained by the situations in which a specific vessel needs to pick up a request far away for a fixed purpose. The TTD highly depends on which request is accepted/rejected. If a request that requires a long travel distance (e.g. terminal 7 to 0) is accepted, the TTD of the vessels increases to serve this request. In contrast, if this request is rejected depending on the vessel types, then the vessels do not need to make long travels. Therefore, it is possible that the limitation of vessel purpose can lead to less TTD, which is highly dependent on the requests occurring in the day.

The results indicate that introducing a mixed-purpose vessel reduces TETD by between 39.8% and 53.1%. This can be derived from reducing empty trips to pick up a further request of a specific type. The TETD for (mixed, mixed) resulted in higher TETD than (mixed, parcel) and (mixed, passenger) because of higher RMR. Accepting a request requires a trip to pick up the request, and it is logical that the more requests are picked up, the more trips to reach the pickup node occur. It is expected that a certain proportion of those trips occur without any loading and therefore, the TETD can be higher.

Vessel load analysis

In addition to the KPIs, the time series of vessels’ loading levels for each vessel type combination is useful for understanding the usage of each vessel during the day. Figs. 5 and 6 illustrate the time series of the loading level of each vessel for all vessel type combinations in high- and low-demand scenarios.

Fig. 5: Loading level of each vessel in each vessel type combination for the high-demand scenario.
Fig. 5: Loading level of each vessel in each vessel type combination for the high-demand scenario.
Full size image

a (mixed, mixed) The orange bar represents the loading level of parcels in vessel 1. The blue bar is the loading level of passengers in vessel 1. The purple bar represents the loading level of parcels in vessel 2. The green bar is the loading level of passengers in vessel 2. b (mixed, passenger) The orange bar represents the loading level of parcels in vessel 1. The blue bar is the loading level of passengers in vessel 1. The green bar is the loading level of passengers in vessel 2. There is no parcel loading on vessel 2 since the vessel is restricted to only serving passengers. c (mixed, parcel) The orange bar represents the loading level of parcels in vessel 1. The blue bar is the loading level of passengers in vessel 1. The purple bar is the loading level of parcels in vessel 2. There is no passenger loading on vessel 2 since the vessel is restricted to only serving passengers. d (parcel, passenger) The orange bar represents the loading level of parcels in vessel 1. The green bar is the loading level of passengers in vessel 2. There is no passenger loading on vessel 1 and no parcel loading on vessel 2 since the vessels are restricted to only serving one of them.

Fig. 6: Loading level of each vessel in each vessel type combination for the high-demand scenario.
Fig. 6: Loading level of each vessel in each vessel type combination for the high-demand scenario.
Full size image

a (mixed, mixed) The orange bar represents the loading level of parcels in vessel 1. The blue bar is the loading level of passengers in vessel 1. The purple bar represents the loading level of parcels in vessel 2. The green bar is the loading level of passengers in vessel 2. b (mixed, passenger) The orange bar represents the loading level of parcels in vessel 1. The blue bar is the loading level of passengers in vessel 1. The green bar is the loading level of passengers in vessel 2. There is no parcel loading on vessel 2 since the vessel is restricted to only serving passengers. c (mixed, parcel) The orange bar represents the loading level of parcels in vessel 1. The blue bar is the loading level of passengers in vessel 1. The purple bar is the loading level of parcels in vessel 2. There is no passenger loading on vessel 2 since the vessel is restricted to only serving passengers. d (parcel, passenger) The orange bar represents the loading level of parcels in vessel 1. The green bar is the loading level of passengers in vessel 2. There is no passenger loading on vessel 1 and no parcel loading on vessel 2 since the vessels are restricted to only serving one of them.

It can be seen in Fig. 5a that both vessels handle the requests in a good balance in (mixed, mixed) throughout the day compared to other vessel type combinations in the high-demand scenario. For instance, the large difference in the loading level between vessel 1 and vessel 2 in (mixed, passenger) is easy to identify as vessel 1 has a non-zero loading throughout the day, while vessel 2 has zero loading for most of the time, except for several hours including the peak hours (Fig. 5b). It can be seen in Fig. 5a that both of the vessels handle the passenger requests in the morning peak and the evening peak in (mixed, mixed). However, vessel 2 serves fewer passenger requests in the morning peak and focuses on parcel requests, while in the afternoon, the focus switches to vessel 1, where most of the parcel requests are served by vessel 1 and the passenger requests by vessel 2.

Regardless of the vessel type combination, the requests are usually assigned to the same vessel during a certain time period, regardless of the type of request. The reason behind it is that the model’s objective function is set to minimise the TTD. The simple and effective way to reduce the TTD is to reduce the number of trips, and this implicitly means the request service is merged with other requests as much as possible. Therefore, it is expected that the loading is imbalanced between vessels for a certain period until a new request close to the other vessel occurs. For example, the loading level of vessels in the low-demand scenario is imbalanced in all vessel type combinations, including the (mixed, mixed). As can be seen in Fig. 6, vessel 1 serves most of the requests, and vessel 2 does not serve requests for a long time in all vessel type combinations. Notably, vessel 1 is operating on a loading level close to the capacity when vessel 2 is dedicated to passengers, as shown in Fig. 6b. Despite vessel 2 being dedicated to passengers, vessel 1 still serves the passenger requests in the morning peak in (mixed, passenger) setting. In general, the model consistently minimizes travel distance by assigning most requests to a single vessel, especially in low-demand scenarios. Under peak demand, the model still manages to improve service efficiency and utilizes the capacity of both fixed-purpose and mixed-purpose vessels.

Sensitivity analysis for the fleet size

In the previous section, we analysed the impact of implementing mixed-purpose vessels on transportation performance by comparing the KPIs with conventional fixed-purpose vessels. Overall, mixed-purpose vessels improve the KPIs related to transportation performance. In addition to the vessel type combinations, the fleet size is also expected to significantly influence performance. The service level is expected to increase with a larger fleet size; however, the TTD as a whole may also increase. It is important to understand the variation in performance across different fleet sizes to assist operators in making informed decisions regarding fleet configuration. Therefore, a sensitivity analysis is conducted to investigate the impact of fleet size on performance. The fleet sizes ranging from one to eight are examined in the analysis. Since it has been demonstrated that mixed-purpose vessels contribute to better performance, all vessels are designated as mixed-purpose vessels for this analysis. Both high- and low-demand scenarios are evaluated.

Figure 7 presents the KPIs for different fleet sizes under the high-demand scenario. It is observed that the RMR is significantly higher when the fleet size is two or more compared to a fleet size of one. The RMR increases from 63.4% to 89.6% when the fleet size increases from one to two. As more requests are served, the TTD and TETD also increase significantly, which represents a trade-off observed in scenario analyses. For larger fleet sizes, the RMR continues to increase slightly up to a fleet size of six. At six vessels, the RMR reaches its highest value of 94.8%, with relatively lower TTD and TETD compared to other fleet sizes. This result indicates that a fleet size of six is the most efficient and effective configuration among all variations. However, fleet sizes of seven and eight lead to increased TTD and TETD, accompanied by lower RMR.

Fig. 7: KPIs for different fleet sizes (high-demand scenario).
Fig. 7: KPIs for different fleet sizes (high-demand scenario).
Full size image

The blue bars represent TTD for each fleet size, and the orange bars represent TETD for each fleet size, which is the total distance of vessels travelled without any load. The blue dashed line shows the RMR for each fleet size.

Figure 8 illustrates the KPIs for different fleet sizes under the low-demand scenario. Similar to the high-demand scenario, fleet sizes of two or more exhibit significantly higher RMR and TTD compared to a single vessel. The RMR in this scenario features two peaks. The first peak occurs at a fleet size of three, where the RMR is 94.2%, slightly exceeding the values observed for fleet sizes of four, five, or six. The second peak is at a fleet size of seven, with the highest RMR of 96.0%. However, the TTD is 11.6 km longer with seven vessels than with three vessels. Unlike the high-demand scenario, no single fleet size performs best in both efficiency and service level. Nevertheless, it can be concluded that a fleet size of either three or seven strikes a balance between maintaining service levels and ensuring system efficiency.

Fig. 8: KPIs for different fleet sizes (low-demand scenario).
Fig. 8: KPIs for different fleet sizes (low-demand scenario).
Full size image

The blue bars represent TTD for each fleet size, and the orange bars represent TETD for each fleet size, which is the total distance of vessels travelled without any load. The blue dashed line shows the RMR for each fleet size.

Discussion

We develop a model that dynamically optimises the dispatching and routing of waterborne vessels for heterogeneous on-demand service. It applies a rolling horizon approach to incorporate the dynamism and to react to the stochasticity of demand. An insertion heuristic is proposed to efficiently solve the static subproblem. A series of experiments demonstrates the capability of the proposed insertion heuristic to solve the static problem and its applicability to the dynamic model. The experiments are conducted with various fleet sizes and numbers of requests, which result in a total of 18 test instances. Each instance is tested with the exact approach by Gurobi and the proposed insertion heuristic. The insertion heuristic is able to obtain the same objective values as the exact approach in a drastically shorter computational time in instances of up to five requests. In the dynamic model, a rolling horizon is applied with a time interval of 1 min, and it is less likely to have more than five requests occurring at the same time step. Therefore, the static experiments indicate that the proposed insertion heuristic can be applied to the dynamic model and provide good solutions in a short time in response to new requests.

The analysis of the outputs of the dynamic experiment shows that improvement in the efficiency and the service level of the system is observed by introducing mixed-purpose vessels compared to fixed-purpose vessels. The analysis shows that the TETD decreases by up to 53.1% by introducing a mixed-purpose vessel. In addition, the RMR increases by up to 13 points for mixed-purpose vessels, and the TTD remains at the same level between fixed-purpose vessels and mixed-purpose vessels. These results indicate that mixed-purpose vessels are able to maintain their efficiency while increasing the service level.

In conclusion, compared to conventional fixed-purpose vessels, the implementation of mixed-purpose vessels in an urban waterborne transport system offers several operational benefits for managers. By dynamically integrating passenger and parcel services, managers can reduce both TTD and empty travel distance, thereby increasing overall system efficiency. The flexibility of mixed-purpose vessels allows for real-time demand adjustments, enhancing service levels, as evidenced by the higher RMR. This adaptability optimises resource utilisation during peak times and balances load distribution more effectively across vessels. As a result, managers can improve fleet efficiency, lower operational costs, and reduce the environmental impact by maximising the use of electric waterborne vessels, supporting sustainability goals in urban transport.

The influence of passengers’ expectations regarding waiting and travel times is a critical factor to consider when integrating parcel delivery into passenger services. Allowing longer waiting and travel times enables more requests to be served, thereby increasing the RMR. However, this approach compromises the convenience and reliability of the service as a mode of transport for passengers. In a mixed-service model, it is recommended that parcel deliveries be prioritised only within the excess capacity of passenger demand, ensuring that passengers continue to experience convenient travel durations. Parcels should not take precedence over passenger needs. To balance service expectations while maintaining a high RMR, increasing the fleet size is an effective strategy. As indicated by the sensitivity analysis on fleet size, a larger fleet contributes to higher service levels and improved system efficiency. However, the ideal fleet size depends on both the demand for the service and the service level operators aim to achieve, which may involve a trade-off with efficiency.

Some assumptions in this study could be relaxed in future research. The proposed insertion heuristic schedules vessels and requests after the determination of the routes based on the assumption that it serves the requests as soon as possible, regardless of the time window. These assumptions enabled the scheduling and the requests’ boarding situations in each trip of the vessels to be deterministic. The insertion heuristic only needs to consider the new requests, and the previously assigned or serving requests are only considered in the scheduling construction. In contrast, the exact approach model takes assigned and serving requests as part of the decision. Although the status of the requests is assured by applying additional constraints to these requests, and it contributes to reducing the solution space, the solution space is still large, and it requires a lot of computational time to find a solution. Finally, the exact approach duplicates the network to allow multiple visits to a terminal. The size of the network also affects the resources required to obtain the optimal solution.

Future research could also focus on integrating anticipation and learning approaches to enhance the performance of the transport system. The rolling horizon approach implicitly prioritises the early requests, and the upcoming requests’ acceptance/rejection is dependent on earlier requests. Therefore, despite the developed model optimising the route of vessels at each time step, it does not mean that the service level and the efficiency of the system are optimised for the whole time horizon. The waiting strategy is one of the common methods used to incorporate the anticipation of future requests. Several waiting strategies are developed for dynamic pick-up and delivery problems, such as the wait-first strategy, in which the vehicles wait at their current location for as long as the requests and the route are feasible36. The availability of historical data will enable the development of a learning-based method in the dynamic optimisation model5. The temporal and spatial pattern in the demand data can be utilised to learn the optimal behaviour of vessels considering the entire time horizon. For instance, the vessels can learn the peak hours and the off-peak hours and wisely decide the operation so that most of the passenger requests during the peak hour can be served, or postpone the parcel requests to make sure enough capacity is available for the passenger peak hours. Learning-based methods, such as reinforcement learning, are capable of deriving the optimal strategies of the operation through training based on historical data6,37. Future research should also focus on enhancing the computational efficiency of the algorithm to ensure real-time responsiveness, particularly during peak demand periods or under scenarios with increased system complexity. Techniques such as parallel computing may provide promising directions for reducing solution times further.