Select to view content in your preferred language

VRP-Order Pair with Three Orders

144
3
Jump to solution
03-13-2025 12:22 PM
GarrettMelvin
Regular Contributor

Our scenario has a truck leaving the depot with an empty roll-off garbage container.  The truck will go to a customer location, swap the full container with an empty container, carry the full container to a landfill to empty, then return to the depot to sanitize the container.  At this point the truck is available for a second run of the same setup.  

We tried adding three orders (pickup location "A", dump location "B", sanitize location "C"), then adding two order pair records (FirstOrder "A"+SecondOrder "B", FirstOrder "B"+SecondOrder "C").  The solver returned an error "Order pairs has a FirstOrderName value for an order that is already paired."  

How can we setup a VRP to solve this scenario?  

@HeatherMoe @RodneyConger @RobertHaley @KelseyMills 

0 Kudos
1 Solution

Accepted Solutions
RodneyConger1
New Contributor

Hi @GarrettMelvin   The VRP doesn’t support chaining pairs. You might try using a single pair that links the customer location with the landfill and force the trip back to the depot using capacities. Your landfill order fills the truck and forces a renewal. 

View solution in original post

3 Replies
RodneyConger1
New Contributor

Hi @GarrettMelvin   The VRP doesn’t support chaining pairs. You might try using a single pair that links the customer location with the landfill and force the trip back to the depot using capacities. Your landfill order fills the truck and forces a renewal. 

GarrettMelvin
Regular Contributor

Thanks @RodneyConger1. We created a "force landfill" order for each customer pair order, but the solve did not return a feasible solution (some routes serviced only "force landfill" orders, some routes serviced customer orders without a "force landfill").  We changed the setup to have one "force landfill" order for each route, and setup specialties so they would stay only one per route.  We then added in time windows, revenue, and renewals, and the resulting solve produced an output where the "force landfill" orders were (mostly) in the feasible sequence.  The only instances of infeasible sequence was for routes that were unable to make a 2 customer serviced route, in which case a sanitize run is unnecessary.  Thank you.

0 Kudos
RodneyConger1
New Contributor

Hi @GarrettMelvin  Something along the  here is what i had in mind. Each of the points below is labeled with the order name and the solved sequence. The Depot is labeled with the sequences of the depot visits (1, 5, and 9)

The route has a capacity of 1. It begins at the depot empty. it travels to "PU2" and picks up an order with pickup quantity = 1. PU2 is paired with DEL2 at the landfill, it visits there next with sequence 3. After if services the delivery at the landfill, it picks up another order (assigned by the VRP) at the landfill with pick up quantity 1 - which fills the vehicle again. Next it visits the Depot to renew as sequence 5. It then travels to PU1 to fill the capacity again. PU1 is paired with DEL1 at the landfill and that's sequence 7. Another landfill order with pick up quantity 1 is serviced as sequence 8 and that forces the vehicle back to the depot to renew again as sequence 9.

RodneyConger1_0-1742250968638.png

 

0 Kudos