1 Introduction

In dynamic transportation planning problems (TPPs), small and medium sized carriers (SMCs) are confronted with customers demanding for quick fulfillment of (transportation) requests. It means, new requests (referred to as incoming requests) appear during a planning period and have to be dispatched in the same period [2]. To overcome the uncertainty associated with incoming requests, rivaling SMCs ally in horizontal coalitions for auction-based request exchanges (ABREs). Thereby, requests are reallocated based on bids (maximal willingness to pay for request transfer). ABREs are able to reduce the transportation costs up to 15% [4]. To ensure an even assignment of collaborative profits, game theoretical schemes like the Shapley value [5] are integrated in ABREs. However, those schemes do not respect shifts in the request-portfolios of the individual SMCs that occur by repeatedly executed ABREs; e.g. within a rolling horizon planning (cf. [6]). Over time, an uneven allocation of requests causes power-shifts among formerly commensurate and equal SMCs and may decrease the stability within horizontal coalitions.

In this paper, the winner determination problem (WDP) of an ABRE is restricted by lower and upper bounds that limit the number of reallocated requests. It means that all agents (e.g. traveling salesmen) transfer and receive a proportional number of incoming requests through an ABRE over a planning period. The effect of the restricted WDP is analyzed in a computational study on the dynamic collaborative traveling salesman problem (DCTSP). A mathematical formulation of the DCTSP is given in Sect. 2. Section 3 introduces a two-stage solution framework (TSF) for the DCTSP. While the restricted WDP and the agents’ specific TPPs are solved by a mathematical solver, the calculation of bids is executed by a cheapest insertion algorithm. The findings of the computational study are presented in Sect. 4.

2 Problem Description

Let us consider a horizontal coalition among a set of rivaling agents \(P=\{1,2, \ldots , |P|\}\). At the start of a planning period T, each agent is in charge of a set of requests \(N^s_p\). The aim of agent \(p\in P\) is to find the round trip that dispatches each request \(i\in N^s_p\) once, starts and ends at the own depot \(O_p\), and minimizes the transportation costs. Over time, each agent \(p \in P\) receives a set of incoming requests \(N^c_p\). All incoming requests have to be dispatched during T. To reduce transportation costs, the agents use an ABRE for the reallocation of incoming requests. It means, an incoming request \(i \in N^c_p\) can either be served by the round trip of agent p or transferred to another agent \(p^*\in P\setminus \{p\}\) within the coalition. The DCTSP can be split in agents’ specific TPPs (Eqs. (1)–(7)) and a request reallocation problem (Eqs. (8)–(9)).

$$\begin{aligned} max \qquad z(p) =&\sum _{i\in N_p} \sum _{j\in N_p} (e_j - c_{ij}) \cdot x^p_{ij},&\end{aligned}$$
(1)
$$\begin{aligned} s.t. \qquad \qquad \qquad&\sum _{i\in N_p} x^p_{ij}=1,&\forall j\in N^s_p\cup O_p,\end{aligned}$$
(2)
$$\begin{aligned}&\sum _{i\in N_p} x^p_{ij}\le 1,&\forall j\in N^c,\end{aligned}$$
(3)
$$\begin{aligned}&\sum _{j\in N_p} x^p_{ij}=\sum _{j\in N_p} x^p_{ji}=v^p_i,&\forall i\in N_p,\end{aligned}$$
(4)
$$\begin{aligned}&\sum _{i,j\in S} x^p_{ij}\le \sum _{j\in S\setminus \{k\}}v^p_j,&\forall S\subset N_p\setminus \{0\},k\in S,\end{aligned}$$
(5)
$$\begin{aligned}&x^p_{ij}\in \{0,1\}&\forall i,j \in N_p\times N_p,\end{aligned}$$
(6)
$$\begin{aligned}&v^p_{i} \in \{0,1\}&\forall i\in N_p. \end{aligned}$$
(7)

The TPP relates to the traveling salesman problem with profits (cf. [1]) that identifies the most profitable round trip on the graph \(G_p=(N_p,A_p)\) for each agent \(p\in P\). While \(A_p\) is the edge set, \(N_p:=O_p\cup N_p\cup N^c\) builds the node set; let \(N^c:=\sum _{p\in P} N^c_p\) be the set union of incoming requests of all agents \(p\in P\). The usage of an edge \((i,j)\in A_p\) requires transportation costs \(c_{ij}\). The binary decision variable \(x^p_{ij}\) is equal to one if the edge \((i,j)\in A_p\) is included in the round trip of agent p, and it is zero, otherwise. Separately, the binary decision variable \(v^p_i=1\) shows that a request i is dispatched by agent p. Since each request j generates a freight rate \(e_j\) when it is dispatched, the Objective (1) maximizes the profits z(p) (i.e. freight rates minus transportation costs). Constraints (2) and (3) ensure that each node is dispatched at most once. Constraints (4) observe the flow and sets \(v^p_i\). Constraints (5) exclude sub-cycles (cf. [1]). Constraints (6)–(7) define the domains of the decision variables.

The request reallocation problem observes the exchange of incoming requests. Objective (8) identifies the combination of agents’ specific round trips that maximize the overall collaborative profits z(P), by respecting that each incoming request has to be dispatched by one agent of the coalition (Constraints (9)).

$$\begin{aligned} max \qquad z(P) =&\sum _{p\in P} z(p),\end{aligned}$$
(8)
$$\begin{aligned} s.t. \qquad \qquad \qquad&\sum _{p\in P}\sum _{i\in N_p} x^p_{ij} = 1,&\forall j\in N^c. \end{aligned}$$
(9)

Due to the dynamic scenario of incoming requests, not all planning relevant data are known at the beginning of the planning period. To consider this issue, we supplement the previously presented mathematical models by a time factor. That is why the following features of dynamic planning have to be respected by computing the mathematical models: (i) an incoming request cannot be reallocated/dispatched before it is known; (ii) each request is deleted from the request pools after it is dispatched; (iii) the start positions of the round trips have to be updated.

3 Solution Methodology

To solve the DCTSP, we developed a TSF that organizes the ABRE by a combinatorial auction (CA). The CA can be split in agents’ specific bid generations and a common WDP. To retain the independent decision power for all agents, the planning of the round trips and the bid generation are executed by separate planning steps that each agent gets through in an isolated planning. Against this situation, the WDP is solved by a mediator. Furthermore, our TSF suggests that the mediator assigns the collaborative profits by the Shapley value [5] among the agents.

In the first stage of TSF, for each agent \(p\in P\) a round trip of all requests in \(N^s_p\) is generated. Therefore, the TPP is computed by a mathematical solver. To deal with incoming requests a periodic re-optimization (cf. [2]) is performed in the second stage of TSF; i.e. the ABRE is repeated at given times (referred to as planning updates). Let t identify an individual planning update. Each planning update includes the following steps: (i) the planning relevant data (e.g. request pools, etc.) are updated; (ii) each agent computes the own bid generation; (iii) the mediator reallocates incoming requests by winner determination; (iv) the agents update their round trips by resolving the TPP; (v) the mediator calculates Shapley values.

Our TSF suggests that each agent calculates a bid for any available request-cluster (composition of incoming requests) in his bid generation (step (ii)). For the bid generation, the earnings regarding the incoming requests of any request-cluster are reduced by the increased transportation costs that each agent approximates by the cheapest insertion algorithm of [3]. It means that the round trips of all agents are extended by the incoming requests of a request-cluster (i.e. starting with the request with lowest costs). For the bid generation, the difference of costs between the original and the extended round trips are supposed as bids for all request-clusters.

The WDP (step (iii)) is formulated as a set partitioning problem (SPP; Eq. (10)–(14)). Let B store all request-clusters, while \(b\in B\) identifies a specific request-cluster. The constant \(d_{bi}=1\) shows that incoming request i belongs to request-cluster b; otherwise \(d_{bi}=0\) applies. The bids \(g_{pb}\) result from the bid generations. To ensure an equality between transferred and received requests, we introduce a lower bound \(lb_{p}\) and an upper bound \(ub_{p}\) for each agent \(p \in P\). The bounds limit the number of incoming requests that each agent is able to receive through the ABRE. The binary decision variable \(y_{pb}\) is equal to one if agent p wins request-cluster b and zero, otherwise. Objective (10) maximizes the sum of winning bids w by respecting that each incoming request i is reallocated once (Constraints (11)). While Constraints (12) observe that each agent wins only one request-cluster, Constraints (13) ensure that the sum of reallocated incoming requests lies between \(lb_p\) and \(ub_p\) for all agents p. Constraints (14) define the domains of the decision variables.

$$\begin{aligned} max \qquad w=&\sum _{p\in P} \sum _{b\in B} g_{pb} \cdot y_{pb},&\end{aligned}$$
(10)
$$\begin{aligned} s.t. \qquad \qquad \quad&\sum _{p\in P} \sum _{b\in B} y_{pb} \cdot d_{bi}=1,&\forall i\in N_c, \end{aligned}$$
(11)
$$\begin{aligned}&\sum _{b\in B} y_{pb} =1,&\forall p\in P, \end{aligned}$$
(12)
$$\begin{aligned}&lb_{p}\le \sum _{i\in N_c} \sum _{b\in B} y_{pb} \cdot d_{bi}\le ub_{p},&\forall p\in P, \end{aligned}$$
(13)
$$\begin{aligned}&y_{pb}\in \{0,1\} ,&\forall p\in P,b\in B. \end{aligned}$$
(14)

To improve the performance of our approach, we introduce a dynamic adjustment (DA) of the lower and upper bounds for the individual planning updates (Eqs. (15)–(16)). Thereby, the bounds are recalculated for all planning updates according to the number of received incoming requests of the previously executed planning update. It means that an agent that receives numerous incoming requests through the ABRE of a planning updated will be restricted by strict bounds for the forthcoming planning update. On the other hand, an agent that receives less incoming requests will be favored by increasing his lower and upper bound. Therefore, for each agent the number of received incoming requests of an actual planning update is determined. Let \(u^t_p\) denote the number of received requests of agent p and planning update t. Separately, \(mb_p^t\) stores the requests that agent p offered for exchange of planning update t. The lower bounds \(lb^{t+1}_{p}\) of all agents \(p\in P\) for the forthcoming planning update \(t+1\) are calculated by Eq. (15). Thereby, the actual lower bound \(lb^{t}_{p}\) of each agent p is reduced by the difference of \(u^t_p\) and \(mb^t_p\). Simultaneously, the upper bounds \(ub^{t+1}_{p}\) for all agents p are updated by Eq. (16).

$$\begin{aligned}&lb^{t+1}_{p} = lb_p^{t}-(u^t_p-mb^t_p),&\forall p\in P, t\in T \end{aligned}$$
(15)
$$\begin{aligned}&ub^{t+1}_{p} = ub_p^{t}-(u^t_p-mb^t_p),&\forall p\in P, t\in T \end{aligned}$$
(16)

4 Computational Study

The restricted WDP is analyzed on new DCTSP-instances regarding collaborative profits and an even allocation of requests. We consider 40 instances with different parameter settings that are organized in 4 test sets. For a detailed description of the instances, we refer to our homepage.Footnote 1 All instances provide that all agents receive and offer the same number of incoming requests per planning update. To simulate the dynamic execution of the round trips, we suppose that each agent is able to dispatch \(mb^t_p\) requests in the time between two planning updates. Our TSF with the described solution methodology was implemented in a C++-application on a Windows 7 PC (3.4 GHz, 16 GB RAM). The mathematical solver CPLEX 12.5.1 was used to solve the agents’ specific TPPs respectively the SPPs. To reduce the computational effort, the computing time was limited to 600 s per optimization.

Table 1 Results of the computational study

Table 1 presents the aggregated results per test set. The test sets are repeated with different values of the bounds (\(lb_p, ub_p\)), respectively with and without DA. The amount of the collaborative profits z(P) and the number of achieved best solutions best are specified, while an even allocation of incoming requests is analyzed by the minimal (\(r_{min}\)) and the maximal (\(r_{max}\)) number of dispatched requests by an agent during the whole planning period. The range (\(|r_{max}-r_{min}|\)) results from the difference of both values. Since the solution space is not restricted, values of \(lb_p=0\) and \(ub_p=\infty \) averagely achieve superior collaborative profits for all test sets. However, an uneven allocation of incoming requests cannot be excluded; i.e. maximal ranges. Even values of the bounds (\(lb_p=ub_p=mb^t_p\)) exclude shifts in the request-pools of the agents. Thereby, a decrease of the collaborative profits between 2.6 and 9.4% has to be accepted. A balance between the collaborative profits and an even allocation of requests can be achieved by using different values for \(lb_p\) and \(ub_p\). Thereby, the application of DA increases the solution quality regarding both the amount of collaborative profits and mean ranges. Particularly, the parameter setting \(lb_p=m^t_p-1\) and \(ub_p=m^t_p+1\) with DA achieves an excellent balancing between both aims; i.e. decrease of collaborative profits between 0.4 and 5.5% against an unrestricted WDP and ranges between 2.0 and 4.4 requests.

The results of our computational study verify that lower and upper bounds for the WDP can enforce an even allocation of incoming request. Thereby, our approach is appropriate for dynamic ABREs, while the solution quality can be increased by the application of DA. The improved stability for horizontal coalitions may absorb the slightly lower collaborative profits against an unrestricted WDP. In this paper a first study on the restricted WDP in case of DCTSPs has been performed. To transfer our results to the daily transport business of SMCs, further computational experiments on more realistic scenarios have to be performed.