| Input: Booked and auctioned loads, i.e. and ; |
| Loaded and empty movement costs, i.e., ; |
| Current transportation network. |
| Output: Generated bids with prices; |
| Expected benefits for carrier. |
| Calculate current transportation network total costs; |
| Generate particles, with each particle including one lane bundle randomly chosen from the auctioned loads; |
| for for each particle do |
| Determine the optimal transportation plan under consideration of the constraints in the proposed model; |
| Calculate the cost of the new transportation plan; |
| Calculate the incremetal costs of the transportation tasks on the chosen lane bundles ; |
| Generate the price for the chosen lane set based on the incremental costs ; |
| Compare the auction price by carrier and the shipper’s costs for personally handling the services; |
| Calculate the possibility that the carrier wins the bid ; |
| Calculate the expected benefit from lane bundle with price and take this as the fitness value for this particle; |
| Set this particle as personal best particle ; |
| end for |
| Determine the particle with the maximum benefit and set as the global best particle ; |
| for to do |
| Update the particle velocities and positions using Eq. (24); |
| Repeat to ; |
| for for each particle do |
| if if the current fitness value is larger than that of the personal best particle , then; then |
| Set current particle as personal best particle ; |
| end if |
| end for |
| Determine the particle with the maximum benefit and compare the fitness value with that of the global best particle ; |
| if The fitness value larger than that of global best particle ; then |
| Set this particle as global best particle ; |
| end if |
| end for |
| Output the global best particle, including lane bundle and price and the expected benefit. |