Modelling Dumpster Delivery / Pickup / Swap (with Intermediate Landfill Stage)

I am trying to solve the problem of dumpster delivery & pickup & swapping.

  • All trucks start at one of multiple depots with no dumpster, an empty dumpster, or a full dumpster
  • Pickup: A full dumpster can be picked up at a location
  • Delivery: An empty dumpster can be picked up at a location
  • Swap: An empty dumpster is dropped off and a full dumpster is picked up (at the same time)
  • All full dumpsters must be brought to one of multiple landfills, or if constraints cannot be met, it may be brought back to the depot (for dumping at landfill the next day)

How would I go about modelling this problem using Pickups, Deliveries, and Shipments?
I think that modelling the Swaps should be as simple as having a separate Pickup and Delivery and then adding a hard activity constraint to ensure they happen at the same time.
However, I’m not 100% sure how to model the pickups and deliveries themselves.
Pickups require that the load is dropped off at the depot, but I want them to go to the landfill first if possible.
For deliveries, an empty dumpster can come from either the depot or from the landfill after being emptied en route, instead of always coming from the depot.

I thought about modelling this with Shipments, but I’m not sure if that makes sense given that a shipment must have a set start and end point.

Thanks in advance for any assistance.