FAST SYNERGY APPROXIMATION IN TRANSPORTATION PROCUREMENT WITH COMBINATORIAL AUCTIONS

. In this study we develop a decision support tool to help carriers in defining their bids when participating in transportation combinatorial auctions. In this way, they can avoid many of their empty movements and ensure additional business through the spot market. We propose three algorithms that quantify the synergy as a key concept to measure the complementarity between the carrier’s existing network and the contracts to be included in the bundles to be submitted as bids. The algorithms are validated on a real-life application and our results emphasized their superiority compared to previous studies.


Introduction
Auctions provide a mechanism where various products are put up for trade or exchange and the price is set based on the best bids.In auctions, the products are usually auctioned one by one, and the auction clearings are made in a sequential or simultaneous way.Conversely, in combinatorial auctions (also called the multi-unit, multi-item or bundled auctions), the bidders are allowed to compete to win more than one single product within the same bid.Indeed, they can submit a combination of a set of products of their choice and offer a unique price for the whole bundle.Then the clearing phase will be based on the all-or-nothing principle, i.e., the bidder can win all the products in the bundle at the suggested price if he offered the best price for that specific set, otherwise he will win nothing among that set of products that will go to different bidders.Combinatorial Auctions (CAs) have gained popularity due to the ease of bidding, especially when internet-based platforms are employed, and enabled both buyers and sellers to trade more profitably in various sectors.In the transportation industry, companies can employ the CA mechanism for the procurement of their short-term transportation needs in addition to establishing bilateral agreements to cover the long-term contracts.However, the promise of CA imagined a few years ago did not bear out.One of the reasons is that "a robust set of package bids is difficult and time consuming to construct" and consequently "shippers who ran CAs did not receive a large number of package bids" [16].This is not surprising since most of the carriers worldwide are small companies that cannot invest in solving the complex problem of generating bids.As a matter of fact, in the United States, for example, 91.3% of the carriers own six or fewer trucks and only 2.6% carriers operate more than 20 trucks [4].Our aim here is to overcome such a shortcoming by supporting even small carriers in employing fast and efficient strategies to generate bundled bids.
We consider a transportation company that has established in advance its long-term contracts through bilateral agreements and would like to increase its profitability by gaining additional business from the spot market through CAs.The company is faced, in this case, with the problem of determining the bundle of contracts to be submitted to the auction and the corresponding bidding price.This task should be performed by examining the compatibility of each bundled contract with the existing contracts.The harmony existing among the shipments of any bid to be submitted to the auction has recently been called the synergy (see for instance; [20,25]).Such a synergy should be guaranteed, for each bid, from one side between the set of auctioned shipments and the existing contracts and from the other side among the set of shipments bundled within each bid.Any bid having a high synergy value is expected to reduce the number of empty trips within the carrier's network and to increase the trucks' travel times only if an additional profitability is ensured to the carrier.Synergy is a relative concept that is used to measure the level of cohesion among several shipments.As it is a relative concept, there is not a single formula that can be used to determine analytically the value of the synergy, but it is rather identified through approximation expressions.Therefore, practical formulas that put synergy in a numerical form and make it easier for the carriers to calculate its value, while not requiring complex and long-time calculations, gain a lot of value.The number of studies proposing such numerical formulas for synergy calculation is quite limited, and their practicality is controversial since most of these studies suggest various specific assumptions for the formulas they propose, as will be detailed in the literature review section.In this study, we aim to fill this gap by proposing general and practical algorithms that do not require special assumptions for the synergy calculation.Moreover, incorporating synergetic new contracts from spot market by the help of practical synergy formulations will provide attractive advantages to the company in terms of the two known dimensions of sustainability: (i) the economic sustainability, since the dissemination of practical formulations of the synergy will naturally contribute to the economic profitability of fleets used for trucking in the long run, and (ii) the environmental impact whose effects are summarized in Figure 1 (see [1,5,12,21,23]).In particular, the company will benefit mainly from the point of view of reducing the total mileage.The number of dedicated trucks operating for the deliveries will be significantly reduced since the reduction in the number of empty maneuvers will lead to the usage of less trucks.Additionally, auction-based procurement will help reduce congestion, as well as noise and emissions due to the employment of a smaller number of trucks in the delivery operations.
The rest of the paper is organized as follows.In Section 2, we review the literature focusing on the quantification of the synergy in the context of CAs and then give the problem definition to underline our contributions with respect to previous works.In Section 3, we develop our basic synergy quantification algorithm, and we produce three different variants of it.Section 4 includes a method of bundle formation using the results of the algorithms and also an explanation on how to generalize our synergy algorithms to cover the multi-trucks case.Section 5 includes our numerical experiments and the validation results of the algorithms.In Section 6, we conclude the paper and suggest future research directions.

Literature review
In the following, we will first review the most relevant studies on CAs, particularly those dealing with the synergy quantification, and then we identify the gaps in the literature in order to highlight our contributions.

Related works on the synergy quantification
Before reviewing the synergy quantification literature, we want to define a few parameters that are commonly used in most of the literature papers. stands for the set of the auctioned contracts and  0 is the set of existing booked contracts. represents a subset of  and named as bundle or package of auctioned contracts, whereas   indicates the synergy of bundle .
To the best of our knowledge, the first works that defined the notion of synergy in the context of transportation CAs and incorporated it within a bundling decision tool were due to Song and Regan [18,19].The authors take into account the synergy (called complementarity) existing among the contracts (or lanes, see also [6]) in order to develop efficient approximation approaches that help in estimating the bids values and in generating the bundles.Their objective is to minimize the cost of repositioning empty trucks.Subsequently, the concept of synergy quantification appeared explicitly in the works of Wang and Xia [24] and An et al. [2].Wang and Xia [24] aim to minimize the total expected empty travel distance and therefore to maximize the total profit.For that purpose, they first compute (i) the first-order synergy value as a complementarity measure between an auctioned set of lanes and a set of booked lanes, and (ii) the second-order synergy value as the compatibility value between a pair of auctioned lanes and a pair of booked lanes.In mathematical terms, the first-order synergy is defined as   = emp() + emp( 0 ) − emp( ∪  0 ) where emp() is defined as the shortest empty travel distance for the given fleet to serve the contracts in .On the other hand, the second-order synergy is defined as  1,2 = emp( 1 ) + emp( 2 ) + emp( 0 ) − emp( 1 ∪  2 ∪  0 ) −  1 −  2 .The authors show that the synergy of the package selected for bidding depends on other bundles.
An et al. [2] develop a mathematical model, that uses pairwise synergy values between the contracts of the bundles as inputs, to find the bundle synergy values.They then used these values to evaluate the performance of the strategies used for generating bundles to submit to the auction.More specifically, the synergy value of a bundle for a specific bidder  is defined as

∑︀
< syn  (, ) where || is the cardinality of the bundle and syn  (, ) is the pairwise synergy value between contracts  and  in bidder 's network.
Chang [3] develops a decision support system for carriers to participate in one-shot CAs.The author defines an approximation method for the synergy values between contracts and the approximated values are embedded within the decision system which is based on a minimum cost flow formulation.
Another study that considers the synergy factor is due to Triki et al. [22].The synergy of a bundle  is computed as the average over all pairwise synergies of contracts within bundle  and also those between the booked and bundle 's contracts.Moreover, two different approaches are presented for the estimation of pairwise synergies: one is based on the Euclidean distance between contracts, while the other measures the distance depending on the number of hops.
Mesa-Arango and Ukkusuri [13] try to reduce the empty movements of the carriers by detecting and clustering the synergetic contracts, which are the contracts that minimize empty trips when operated together.The authors claim that the synergetic contracts are very important for the strategic decision making.They define an interconnectivity metric for each pair of contracts to represent the utility of having that pair in the same cluster.For instance, if contract  is to be served after contract  then the repositioning utility value   is based on the profit of serving contract , the cost of repositioning from contract  to contract , the cost of serving contract , and the cost of loading/unloading contract .Then, by using these utility values they define an algorithm to search for the trip-chains including the synergetic contracts.
Triki [20] incorporates the geographical position data of the contracts and employs the location technique to quantify the synergy.The author categorizes first the contracts into clusters based on their geographical position and determines the center point of each cluster.The synergy between two clusters  and  are then measured based the distance between the central points of clusters  and .The synergy of a bundle  is then calculated as the average of all the pairwise inter-cluster synergies over all the clusters involving either booked or auctioned contracts that are part of bundle  or both.
Yan et al. [25] extend the idea of in-vehicle consolidation from Mesa-Arango and Ukkusuri [13]'s study.The authors first define the synergy within each bundle based on the profit and cost of serving bundle , and also on the total distance to serve the contracts of bundle .In addition, they define three different expressions to calculate the synergy between bundle  and the booked contracts that take into account the vehicle capacity, the capacity imposed on contract  by the booked contracts and the additional needed capacity for contract  itself.Finally, they obtain the synergy value as the convex combination of the expressions defined above.
The last work we are aware of in the context of synergy quantification for the CAs bidding is due to Hammami et al. [7].The authors define a new expression for the bundle by merging and adapting the formulas presented in An et al. [2], Triki et al. [22] and Triki [20].
It is worthwhile noting that there are few other works that dealt with the quantification of the synergy in the context of simultaneous independent single auctions.Even though these works do not focus on CAs, we decided to give insights on their contributions for the sake of completeness.Specifically, Kuyzu et al. [8] take the synergy of each auctioned contract with all the other auctioned contracts into consideration in stochastic settings.The synergy of a particular contract  is defined based on the probability of winning the bid for bundle  and on the marginal increase in the cost by including contract  in the bundle.The authors use the synergy values to select the most profitable bundle in their further computations.
Similarly, Olcaytu and Kuyzu [14] propose a synergy-based approach to determine the bids for simultaneous independent single auctions.For each of the auctioned contract they calculate the synergy as a function of the bundle's cost and the length of that auctioned contract.More recently, Olcaytu and Kuyzu [15] tried to improve their above-mentioned work by avoiding the 2 || calculations required in total.The authors suggest an algorithm requiring only )︂ synergy calculations.Their algorithm employs a marginal cost value for each auctioned contract and calculates the synergy values between each pair of auctioned contracts based on the cost of serving the contracts.Finally, it is also worth citing the study of Lozano et al. [10] that uses the concept of synergy to search for the best coalition of companies to reduce the total shipment costs by merging the shipments.The synergy is used here as a measure of complementarity between the shipments of the carriers.The authors define the synergy of coalition  as the quotient of the savings achieved by merging the shipments of the coalition members over the minimum cost required by the transportation demands of coalition .In the context of CAs, the numerator may represent the increase in the total profit by serving the contracts of bundle  while the denominator can be the total profit gained by serving the booked contracts and the contracts of bundle .
It is clear that Triki [20] is the most related work to our study.However, there are some substantial differences between the two works.First, Triki [20] seems more like a pure clustering approach that does not take into account the revenues derived from the auctioned and booked contracts and neither the initial position information about the trucks.Moreover, it ignores the delivery deadline as well as the direction of the inter-node movements of each contract.These shortcomings make the outcomes of Triki [20] unsuitable for some underlying networks and/or problem parameters.Conversely, our algorithms consider all the above features allowing them to exhibit a high level of flexibility and adaptability to solve a wider range of instances that can arise in real-life contexts.

Problem definition and our contributions
Synergy between the sets of auctioned and booked contracts, and within the auctioned contracts included in any bid should take several aspects into account.Below, we will list and explain these aspects one by one.
One of the most important aspects that should be considered during synergy quantification is the direction of the contracts.In Figure 2, we provide an example explaining the importance of the travelling directions.
Consider a truck that will carry a booked contract from London to Edinburgh and then return empty to London for repositioning.To reduce this potential profit loss, carrier can bid on a single auctioned contract from Edinburgh to London in the return path.The auctioned contract with synergy on the existing travel route will prevent the truck from going back empty on the return route which clearly indicates the importance of the direction of the auctioned contract.Despite the obvious importance of the directions of the contracts, the studies from the literature do not explicitly take them into account.
Another aspect to be aware of during the bidding process is the possible delivery deadlines on long-term booked contracts.In other words, when chasing auctioned contracts among the booked contracts, the carrier does not have an unlimited time, and he must abide by the deadlines of the booked contracts and the selected auctioned contracts.Hence, even if they are profitable, the carrier may avoid bidding on some of the auctioned contracts to avoid any risk of violating one or more booked contract deadlines.None of the above-mentioned synergy quantification studies, but Triki et al. [22], takes the deadlines of the contracts into account.
Another aspect to consider during bidding on the auctioned contracts is the revenues of the auctioned contracts.This may seem obvious since no carrier may be willing to serve a non-profitable contract.Still, the revenues of the auctioned contracts are not taken into account in the majority of the studies in the literature, and only in a few cases the revenue of the auctioned contracts is implicitly considered in the cost factor if the auctioned contract is served.
Finally, the company chasing auctioned contracts between booked contracts may have more than one truck that can have already assigned booked contracts.In this case, the auctioned contracts synergies will vary according to the geographical position of the trucks.Consequently, the synergy calculation results to be more challenging under the presence of multiple trucks.For instance, some details should be clarified, such as which truck the synergy values will be calculated for.Moreover, the bundles of the auctioned contracts considered separately for trucks should not coincide with each other, i.e., the bundles of the trucks should be disjoint.Only in few studies in the literature, the multi-trucks case is considered.However, even in these studies, the synergy quantification ideas are only defined based on the distance between booked contracts and auctioned contracts, or pre-defined pairwise synergy values between them, without considering prior truck locations.
As highlighted in the literature review, there are numerous studies that partially consider the above-mentioned aspects while developing their bid generation decision tool.However, all those tools employ relatively complex mathematical formulations that often are impractical, especially for small carriers.Consequently, those carriers limit their participation in the CAs by submitting a very limited number of bids including only few contracts each, which reduces their chance of being successful.Our study represents an attempt to include all the above aspects in order to generate high quality bids by solely relying on the synergy quantification and without employing any sophisticated math-based approaches.We are confident that such strategies are useful even for the practitioners that cannot invest in acquiring sophisticated and expensive decision support tools.
In this study, we fill in the gaps existing in the literature by developing three synergy quantification algorithms that: -consider delivery deadlines imposed by each contract, -take into account the revenue deriving from the auctioned contracts, -take the directions of the contracts and the resulting complementarities into consideration, -applicable for all companies independently from the number of trucks they own.By embedding all the above aspects within an integrated, yet fast and computationally tractable decision support tool, companies can reply on our strategies for generating meaningful bids.In doing so, we pay attention to ensure that our proposed synergy algorithms are flexible enough to allow claimant companies expressing their preferences (towards risk, competition, etc.) or to comply with specific CAs features.

Synergy quantification algorithms
In this section we first define the sets, parameters and variables used in the algorithms together with the assumptions we make to construct our algorithms.Then in the next subsection we develop our methods and give detailed explanations of the algorithms.In the third subsection we explain how the assignments are finalized and how the synergetic algorithms are extended to the multi-truck case.

Notation and preliminaries
Let  be the set of nodes and  be the set of arcs.We use  and  indices for nodes and (, ) to point out arcs.We define  0 = {1, 2, . . ., } as the set of booked contracts and  = {1, 2, . . ., } as the set of auctioned contracts.Moreover, we use index  for any contract (either booked or auctioned) that is defined by an origin and a destination pair, i.e.,  = (  ,   ) where   is the pick-up point of contract  and the   is the delivery point.We assume that the booked contracts are ordered in terms of their deadlines, i.e., contract  + 1 is followed by contract  and also assume for now there is a single truck and it is, at the beginning of the planning horizon, at the origin of the first contract, which is  1 .Moreover, once the truck is reached to the destination point of the last booked contract,   , the planning horizon is assumed to be over.Hence, the planning horizon is the time elapsing between the time the truck enters  1 to serve the first booked contract and the time it reaches to deliver the final booked contract at   .We let   represent the last time that the service of contract  should start, i.e., serving contract  should start before   .Note that we assume a deadline only on the pickup point of the contracts since in (full) truckload studies vehicles go directly to the delivery points after taking the loads from pickup points, which means that imposing a deadline on the pickup point is equivalent to putting a delivery deadline.Set  is composed of all bundles of auctioned contracts (that is the set of all subsets of the auctioned contracts set ).Clearly, the cardinality of set  increases exponentially with the number of auctioned contracts, i.e., || = 2 || .The revenue of a bundle, say , is represented by   which is equal to the total revenues of the contracts included in that bundle, i.e.,   = ∑︀ ∈   where   stands for the revenue deriving from serving contract  ∈ .Finally,   is the traveling time between node  to node  and  is an enough big number, e.g.,  = | |.We assume that we operate in a deterministic setting, i.e., all the parameters defined in this paragraph are assumed to be known in advance at the beginning of the planning horizon.
Moreover, we define the following 6 sets of variables that are used in the algorithms: -  represents the synergy between a contract  ∈  0 and a bundle  ⊆ .
-∆  represents the minimum time required to serve all the contracts of bundle  beginning from node   and ending at  +1 .-  is the leaving time of the truck from   after serving contract  but without visiting any contract from bundle  before.-max ∆  is the time elapsed between the moment in which the truck leaves node   and the moment the truck enters node  +1 after serving all the contracts which leads to the maximum revenue without serving any contract from bundle  and without making the truck late for serving contract  + 1.In other words, max ∆  represents the required time for serving the contracts of the most profitable bundle among the feasible bundles (in terms of not being late to contract  + 1) between serving contracts  and  + 1 and without serving any contract from bundle .-  represents the maximum attainable revenue.
-  is the index of the most profitable bundle leading to max ∆  .In other words, the required time to serve the contracts of bundle   is equal to max ∆  , i.e., ∆ (  ) = max ∆  and the profit of bundle   is higher than any other  ∈ .
All the variable values, but the value of ∆  , are going to be determined within the algorithms.On the other hand, in order to calculate the ∆  value, that is the minimum time required to serve the contracts of bundle  and to lead to contract  + 1 after contract , we construct a specific linear programming formulation.The decision variables of this formulation are: -  : binary decision variable indicating whether or not the truck travels from node  to node .
-  : continuous decision variable indicating the order of node  in the route of the truck.
The formulation is given below and then the explanations of the objective function and the constraints are provided.
In (1), we simply calculate the total traveling time of the truck and minimize it.Constraint (2) is the flow balance constraint for all the nodes except nodes   and  +1 .Constraints (3) and ( 4) are the flow balance constraints for nodes   and  +1 .Note that the truck leaves node   after serving contract  and enters to node  +1 at the end to serve the next contract  + 1.Hence, the difference between the total number of outgoing arcs from the node and the total number of incoming arcs to the node is 1 and −1, respectively, for nodes   and  +1 and 0 for all the other nodes which are satisfied by constraints ( 2)-(4).Constraint (5) avoids sub-tours.Constraint (6) guarantees that all the contracts of bundle  are served by the truck.This constraint ensures that ∆  is the required minimum time to serve the contracts of bundle .Finally, constraints (7) and ( 8) are binary and non-negativity restrictions on the decision variables.Note that the above formulation does not take deadlines of the auctioned loads into consideration.This is because the booked contracts restrictions are predetermined based on long-term agreements whereas the auctioned contracts come from the spot market implying that the booked contracts should have stricter deadlines than the auctioned contracts.Indeed, based on this note we assume, in the numerical experiments we provide in Section 5, that the auctioned contracts are flexible and have no deadlines.However, our algorithms can be easily adapted to the case where the auctioned contracts have deadlines by modifying the formulation (1)- (8) as follows: (2)-( 4) = 0 where    ′ represents the time in which the vehicle enters to node   ′ for serving load  ′ ∈  and   ′ is a binary variable that takes value 1 if load  ′ ∈  cannot be served before its deadline   ′ .Finally,  is a large enough number.Note that if it is not possible to serve all the contracts belonging to bundle  within their deadlines, then the objective function value (9) will attain a very large value.This is due to the presence of the term having the big- coefficient in the objective function and, thus, as will be explained in the sequel, the algorithms will not choose bundle  to be served between booked contracts  and  + 1.

Synergy quantification algorithms
Here, we develop three synergy quantification algorithms.Although the general framework of the three algorithms is the same, there are few but important differences at some critical steps of the methods.For this reason, the algorithms may give different results depending on the problem instance to be solved.Therefore, the most appropriate algorithm should be selected by paying attention to the characteristics of the problem instance at hand.In the sequel, we will discuss the algorithms one by one while explaining which problem type can be solved more effectively by which version of the proposed algorithms.

Synergy quantification Algorithm 1
In the first step of Algorithm 1, we define a new set   that includes all bundles of  for each booked contract  ∈  0 .Note that, our purpose is to find the bundles of auctioned contracts possibly having positive synergy values with each booked contract  ∈  0 .With that intention, we enumerate each possible bundle one by one for each booked contract  ∈  0 .We manage to keep track of this enumeration process through the use of set   .Therefore,   is same as the set of bundles of the auctioned contracts, which is , at the beginning of the algorithm(s), but written for each of the booked contract separately since it is updated throughout the algorithm while set  should stay unchanged.Then a for-loop is constructed for each  ∈  0 in order to calculate the synergy between contract  and all the possible bundles of the auctioned contracts.Subsequently, to enumerate the set of all bundles of auctioned contracts, another for-loop and while-loop are constructed.The for-loop spans for the size of the bundles (ranging from 1 to ) outside, and inside, the while-loop spans for the bundles of size pre-specified by the outer for-loop.Once a bundle, say , is specified, the synergy between contract  and bundle  is equated to the total revenue of the bundle, i.e.,   =   , if the truck, leaving contract  at   +      , is able to serve all the contracts of bundle  and reaching contract  + 1 before  +1 , i.e.,   +      + ∆  ≤  +1 .Otherwise, the synergy is set to 0, i.e.,   = 0, and the synergy between contract  and all the other bundles including bundle  are set to 0 too and are eliminated from   .Then, all the synergy values are mapped into the [0, 1] interval after normalizing them with respect to the maximum synergy value.Finally, the best bundle having the highest synergy value is identified as   = max    .The steps of the algorithm are summarized in Figure 3.The critical step in the first synergy quantification algorithm lays in the "if" condition.The inequality   +      + ∆  ≤  +1 should hold for any positive value of the synergy which implicitly assumes that the truck reaches contract  at   (which is the deadline of contract ) serves contract  during time      and reaches contract  + 1 after serving all the contracts of bundle .If the deadlines of the booked contracts are not close to each other in general, this algorithm is expected to produce good synergy values.However, if the deadline of a booked contract , is very close to the deadline of the next contract  + 1, i.e.,   is relatively close to  +1 , then the synergy values between that contract and most of the bundles will be 0 since it is difficult that the condition (  +      + ∆  ≤  +1 ) holds.In such case, reaching contract  at its last allowable time (exactly at the deadline   ) becomes too restrictive.In the second algorithm that we report below, we assume instead that the truck reaches the booked contract  at a value  (−1) −      (thus it leaves   exactly at  (−1) ) which may represent a more realistic estimation of the entering time, rather than the last allowable time.
For instance, suppose there are 3 auctioned contracts and 3 booked contracts with deadlines 0, 100 and 200.Moreover, suppose the arcs lengths are relatively small, i.e., takes less than 10 units of time each.In this scenario, it is possible to fit bundles of auctioned loads with positive synergies between consecutive booked loads.Hence, Algorithm 1 is expected to produce good results.However, if deadlines are 0, 20, and 30, it is unlikely to find bundles with positive synergy as it would be impossible to serve auctioned contracts before the deadline of the next booked constraint since we assume that truck enters the booked loads exactly at their deadline values, i.e., at 0, 10 and 20.If we use Algorithm 2 instead of Algorithm 1, then we no longer assume that booked loads will be served at their exact deadlines, and their services may begin earlier.That elongates the duration between service times of consecutive booked contracts and eventually enables fitting bundles with positive synergies between consecutive booked contracts.

Synergy Quantification Algorithm 2
The steps of Algorithm 2, as reported in Figure 4, have some similarities with those of Algorithm 1.The main difference is related to the if condition that becomes   + ∆  >  +1 in Algorithm 2. This implies that we no longer assume that the truck leaves node   related to contract  at time   +      as assumed in Algorithm 1 but at   which is equal to  (−1) + max ∆ (−1) +      .In other words, the leaving time of contract  is equal to the leaving time of the truck from contract  − 1 plus the time required for serving the most profitable bundle among the feasible bundles without passing through any contract from bundle  (which is represented by max ∆ (−1) ) and the time needed to serve contract , that is      .Note that   avoids truck  from serving any contract from bundle  before so that while we evaluate the synergy between a booked contract  and a bundle , we make sure not to double count the contracts of bundle .Note that by equating   to  (−1) + max ∆ (−1) +      , we make sure that the truck does not go through contracts of bundle  before reaching contract  − 1 (since we use  (−1) ) and during serving some auctioned contracts between booked contracts  − 1 and  (since we use max ∆ (−1) ).While searching for the maximum profit attainable between booked contracts  − 1 and  without serving any contract from bundle  we first search for the index of the bundle as  (−1) = arg max The drawback of the second algorithm is the fact that it only focuses on the maximization of the attainable revenue among the feasible bundles.That motivates the truck to go for as many auctioned contracts as possible and the only limitation is the deadline of the next booked contract.However, even if some auctioned contracts are feasible, they may be far away compared to the revenue that they generate.In this case, the revenue to be earned from them may not be worth the trouble of serving them.In other words, it is necessary to consider not only the revenue of auctioned contracts, but also the cost related to their service.For instance, suppose there are 3 auctioned loads each of which has a revenue of 100, and it is possible to serve all the auctioned loads without violating the deadline of the booked loads.Then, Algorithm 2 suggests serving all three auctioned contracts with a resulting revenue of 300.On the other hand, suppose the third auctioned contract has a revenue of 10 only, and the cost of traveling to serve that auctioned contract after serving the first two ones is greater than 10.In such a case, Algorithm 2 fails to recognize that the contribution of the third auctioned contract is relatively small and will still include all the auctioned contracts within the bundle.Algorithm 3 described in the sequel suggests a remedy for this shortcoming.

Synergy quantification Algorithm 3
Notice from Figure 5 that we do not equate, in Algorithm 3, the synergy to the revenue of the bundle but the revenue per unit of time traveled, i.e.,   =   Δ  .Thus, the truck will try to make a profit by not only considering revenue, but also taking into account the travelled time.An alternative idea would be to equate the synergy to the revenue minus the cost of traveling, i.e.,   =   −  × ∆  where  is the cost per unit of time traveled.However, as the cost per unit of time parameter may differ from region to region or may change even within the same region, and since it is difficult to determine its exact value, we preferred to use the former one.
Before proceeding to explain how one can use the algorithms in the multi-truck case, we describe some preprocessing ideas that help to reduce the computation times our algorithms require especially when dealing with large networks.The main reason for the computational burden of the algorithms is the synergy calculation for each of the potentially 2  bundles for each booked contract.In order to reduce the number of bundles for which synergy calculations are made we implemented some pre-processing operations.Firstly, the bundles containing contracts that are far more than a certain distance away from each other can be eliminated.Similarly, the bundles containing at least one contract that is far than a threshold value from the booked contract being studied can be eliminated too.Finally, a minimum revenue requirement can be set for bundles to be considered, and bundles that do not provide the determined minimum level of revenue can be ignored.

Bundles aggregation model
The provided algorithms calculate the synergy values of each bundle of auctioned contracts and for each of the booked contracts.Then those synergy values are first equated to the time to pass through the shortest path between the current booked contract and the next contract while serving all contract belonging to the bundle at hand, and they are normalized thereafter.One may then select the bundle having the largest synergy for bidding.However, this approach may cause all contracts of the selected bundle to be included in between a single consecutive booked contract pair.In order to avoid this, we provide an integer program making use of the calculated synergy values (coming from one of the above algorithms) of the bundles as objective function coefficients.We define a new parameter   ′ which takes value 1 if bundles  and  ′ are disjoint, i.e.,  ∩  ′ = ∅, and value 0, otherwise.We also define two variables   and   which respectively indicate whether or not bundle  is selected for insertion between booked contracts  and  + 1, and whether or not bundle  is selected for inclusion within the tour of the vehicle, i.e., the contracts of bundle  will be included in the final bid.The formulation of the integer program is given in the following. max In the objective function (15), we maximize the total synergy of the selected bundles.Constraint ( 16) defines variable   and constructs the relation between   and   variables.It also implicitly avoids selecting any bundle more than once since   is defined as a binary variable.Constraint (17) indicates that in order to select two bundles, say bundles  and  ′ , they have to be disjoint, i.e., they should not have common contracts because they are going to be selected for insertion between two different consecutive booked contracts pairs.Note that both   and   ′ can take value 1 only if the value of the parameter   ′ is 1, which is attained only if bundle pair ,  ′ ∈  are disjoint.Finally, constraints ( 18) and ( 19) define binary   and   variables.Notice that binary restriction on   variable can be relaxed since its value cannot be fractional due to constraint (16) which accelerates the solution process of program ( 15)- (19).After solving the program, the bidder can bid on the auctioned contracts included in the bundles having the   variable values equal to 1.

Extension to the multi-truck case
While the above algorithms have been defined, for ease of presentation, for the single-truck case, their extension to the multi-truck context is straightforward.In this section, we provide a framework enabling the employment of the proposed algorithms for the multi-truck case.
First, we assume that the booked contracts are pre-assigned to the trucks which suit the carrier's network.Hence, the information about which trucks will serve which booked contracts is known during the calculation of the synergy values.Then, the carrier can choose one of the algorithms that is most suitable for its interest and calculate the synergy of the bundles using the selected algorithm for each truck independently from each other.Suppose the synergy of bundle  calculated for insertion between contracts  and  + 1 in truck's  route is called    .We still use the parameter   ′ which takes value 1 if bundles  and  ′ are disjoint, i.e.,  ∩  ′ = ∅, and takes value 0, otherwise.It is obvious that if bundles  and  ′ are not disjoint, there are at least one common contract in both bundles, then it is not rational to select both bundles for the bidding if they are going to be in different trucks.Below, we provide an integer program to find bundles for each of the trucks so that all the chosen bundles are disjoint.We add the  superscript to the variables to make them specific for truck .Consequently,    indicates now whether or not bundle  is selected for insertion between booked contracts  and  + 1 in truck  route and    indicates whether or not bundle  is selected for inclusion within the truck  route. max In the objective function (20), we maximize the total synergy of the selected bundles for each truck.Constraint (21) defines the relation between    and    variables and limits assignment of each bundle to be inserted in between at most one booked contract pair.Constraint (22) guarantees that each bundle is chosen for inclusion of at most one truck route whereas constraint (23) indicates that in order to select two bundles to be included in the route of a single truck or in the routes of two separate trucks, they have to be disjoint.Finally, constraints (24) and ( 25) define    and    as binary variables.To sum up, after running the selected algorithm for each of the truck independently, the carrier can calculate    values for each bundle  ∈ , for each booked contract  ∈  0 , and for each  ∈ .Then, the carrier can run model ( 20)- (25) to find the disjoint bundles for each truck to finally bid for the union of the selected bundles.Note that model ( 15)- (19) (or model ( 20)- (25) in the case of multiple trucks) is solved only once after the selected algorithm is run.Hence, its computation time is expected to be small for small or moderate sized instances.We report the computation times of these models in the computational experiments section.

Computational experiments
In this section, we first illustrate the synergy calculation by the three algorithms for a small illustrative example and then implement the algorithms for a real case study from Sultanate of Oman.For both examples, we compare our results with those found by Triki [20] for exactly the same problems and we comment why our results are more realistic.

Illustrative example
Let's assume a small network having 8 cities named from  to  and 11 roads connecting the cities.Also, assume that there are four booked contracts: booked contract 1 is from city  to city , booked contract 2 is from  to , booked contract 3 is from  to  and the last booked contract is from  to .Randomly generated delivery deadline data for the booked contracts are given in Table 1.Note that the bounds are also chosen so that they increase as the order of the booked contracts increase.Also note that since we assume that the truck is at the origin of the first booked contract, which is city  in this case, the truck immediately serves the first booked contract before seeking for any profitable auctioned contracts.The deadline of the first booked contract is set to 0.
We also assume that there are 3 auctioned contracts: from  to , from  to  and from  to .Revenues of the auctioned contracts are all taken as 10.The other connections between the cities that are neither booked nor Table 1.Deadline data for the booked contracts.auctioned contract can be used for repositioning purposes by the truck.The network is illustrated in Figure 6 and moreover, the distance between each pair of cities is given in Table 2.Note that the connections between the cities are undirected in the sense that the truck can go through either direction, but the contracts have a pre-defined origin and destination implying that the contracts are directed.Since there are 3 auctioned contracts, there are in total 2 3 − 1 = 7 bundles of auctioned contracts (the 1 is subtracted from total number of subsets as there is no need to calculate synergy for the empty set).The bundles are listed as  1 = {(, )},  2 = {(, ), (, )},  3 = {(, ), (, ), (, )},  4 = {(, ), (, )}, Table 3. Synergies of the bundles calculated for the illustrative example.3.
The first observation to be made is that  2 = {(, ), (, )} has the highest synergy for Algorithms 2 and 3 while its synergy is 0 for Algorithm 1.The reason is that contracts (, ) and (, ) of bundle  2 are to be served between booked contracts (, ) and (,  ) and by doing so the deadline of booked contract (,  ) would be violated.Algorithm 1 assumes that the truck leaves booked contract (, ) exactly at the delivery deadline, which is 200.In other words, it is impossible to leave node  at 200, then to serve both contracts (, ) and (, ) and reach to node  to serve the booked contract (,  ) before its deadline (which is 350), thus, the synergy of bundle  2 is found 0. As Algorithms 2 and 3 do not assume that the truck leaves the contracts exactly at their delivery deadlines but calculate it probably as lower than the deadline, then it becomes possible to serve the contracts of bundle  2 between booked contracts (, ) and (,  ) implying a positive synergy for bundle  2 .In Triki [20], synergy is calculated for only bundles having 2 contracts, which are  2 ,  4 and  6 , and the synergy values are respectively found as 0.33, 0.16 and 0.18.Our results are different since the synergy values  4 and  6 are calculated as 0 since we take deadlines into account whereas they are not considered in Triki [20].Still, the results of Algorithms 2 and 3 are similar to those of Triki [20] in the sense that the bundle having the largest synergy is still bundle  2 for Algorithms 2 and 3 and for Triki [20] as well.Moreover, computation times for solving model ( 15)-( 19) for Algorithms 1-3 are all negligible and amount to 0.022, 0.041, and 0.032 s, respectively.Now, suppose the direction of the first auctioned contract is reversed and it is now from  to .The results of the algorithms change drastically after this tiny modification as illustrated in Table 4.The computation times for solving model ( 15)-( 19) remain still negligible having values 0.016, 0.070, and 0.033 s for Algorithms 1, 2 and 3, respectively.On the other hand, the synergy calculation of Triki [20] would not be affected by this change at all since the direction of the contracts is already not considered.This shows that even for this small sample, Triki [20]'s decision not to take into account the deadlines and the directions of the contracts can make its results controversial in terms of suitability for real conditions.

A real case from the sultanate of Oman
In this section, we test the defined three synergy algorithms on a real-life application that was first analyzed in Triki [20].Omani Integrated Logistic Services (ILS: http://www.ilsoman.com/) is a company operating in the Sultanate of Oman and performs intensive transportation service between various Omani and UAE cities.In the real-life application that we examine, the company seeks to maximize its profit by bidding for 6 auctioned contracts in the spot market among its 8 booked contracts on a network with a total of 16 cities.By obtaining the distance information between the cities from publicly available information sources, and dividing by the average truck speed (80 km/h), travel times between the cities are obtained.We prefer not to report the details of these data in the article, as it will lengthen the article unnecessarily.We still summarize the data about the booked contracts and auctioned contracts, in Tables 5 and 6.The booked contracts are given in their respective order in Table 5.The deadlines of the booked contracts are generated as follows.We define a new parameter  (+1) for each booked contract  ∈  0 indicating the time to travel through the shortest path between   and  (+1) .To find the values of  (+1) parameter we construct a simple mathematical model, whose formulation is similar to the formulation of the model constructed for calculation of ∆  (reported in the previous section and run for each booked contract).Then, we obtain )︀ is a random real number generated within (0,  (+1) ) interval.On the other hand, the revenues of the auctioned contracts are randomly generated between 30 000 and 70 000 dollars.
As can be seen from Table 7, the bundle having the largest synergy for Algorithm 1 is bundle  5 , for Algorithm 2 is bundle  7 and for Algorithm 3 is bundle  4 .It is worth noting that the bundle having the largest synergy found by Triki [20] is also bundle  4 .Thus, the deadlines we imposed here are not so restrictive since both the works produced similar results (specifically Algorithm 3), even though Triki [20] does not take deadlines into account.On the other hand, it is easy to show that changing the direction of one or two contracts may change drastically our results whereas the outcomes of Triki [20] would result unaltered.Hence, although both the studies can produce similar results for this case study, the practicality of Triki [20]'s method is highly dependent on the problem parameter values, whereas our algorithms exhibit a high level of flexibility and adaptability to the instance under exam.Now, let's examine the case of having two trucks, both originally located in the city of Ameerat.We assume that Ameerat-Russail, Salalah-Muscat, Muscat-Sohar and Muscat-Abu Dhabi booked contracts are assigned to truck-1, whereas Ameerat-Barka, Solar-Musandam, Muscat-Dubai, Muscat-Fahud booked contracts are assigned to truck-2.For the first algorithm, the bundles that have    variables are equal to 1 (for both the trucks) are {(,  ), (, )}, {(, ), (, )}, {(, )}, and {(, )}.One may notice that their union consists of all the auctioned contracts.Similarly, for Algorithms 2 and 3 we again end up with the union of the selected bundles (bundles with    variables equal to 1) to be the set of all auctioned contracts as well.This implies that having more trucks helps the carrier to compete for all the auctioned contracts in the spot market with the aim of gaining as much as possible additional business.Finally, the computational times for model ( 20)- (25) for the three algorithms are 0.052, 0.064, and 0.068 s, respectively.

Conclusions and future research
In this article, we deal with reducing the empty truck maneuvers and earn additional income through bidding in combinatorial auctions for the companies operating in the field of transportation services.Three algorithms are proposed that will enable companies to select the bundles of auctioned contracts to bid in the spot market.These algorithms are realistic approaches since they all envisage deadlines for the booked contracts, consider the revenues for the auctioned contracts and take into account the contract directions for all booked and auctioned contracts.Technically, we calculate the synergy of each bundle for each booked contract as the revenue (or revenue per kilometer) if serving the bundle is possible after the booked contract without violating the deadline of the next booked contract.Then, the synergies of the bundles are normalized by dividing the synergies over the maximum bundle synergy.We also indicate how the algorithms can be extended to multi-truck case and we implement them to solve a real-life application for an Oman company operating in Oman and even in UAE, emphasizing the superiority of our algorithm results over the results of similar approach proposed in the literature.
Our study can be extended in several ways.First, the synergies calculated by the algorithms can be incorporated in a more sophisticated approach dealing with the complex vehicle routing or fleet management models.Moreover, our algorithms are designed for a combinatorial auction mechanism in which the outcomes are determined in one shot.In the case of multiple-run combinatorial auctions, our algorithms need to be updated accordingly which can be analyzed in a further study.The implementation of algorithms within the multi-run combinatorial auctions will require developing novel approaches that consider the iterative nature of the auction and incorporating the feedback on the price information, like the one explained in Kwon et al. [9].Also, the periodic nature of the problem can be considered as an extension to the current settings.Finally, although we have explained the different features of each algorithm and we gave an analysis of the data types for which every algorithm can perform better, it would be interesting to empirically analyze the behavior of the algorithms by generating greater datasets with varying operational features.

Figure 1 .
Figure 1.The environmental advantages of auction-based synergetic fleets management.

Figure 2 .
Figure 2. Importance of direction on the synergy quantification.

Table 2 .
Distances between cities in kilometers.

Table 5 .
Booked contracts: Origin, destination and deadline data.

Table 6 .
Auctioned contracts: Origin, destination and revenue data.

Table 7 .
Synergies of the bundles calculated by algorithms for real Omani case.