I have a problem where for a large number of orders (a few hundreds) there are multiple Orders to be delivered to any given address. Lets imagine there are 20 orders to be delivered to a single address. Logically one would expect that as long as all the constraints related to vehicle capacity aren’t broken then single vehicle should get all the orders and go the this address alone… Unfortunatelly orders are being distributed over more then single vehicle, which is not cost effective, might be confusing for a customer getting e.g. two deliveries instead of one.
Is JSPRIT capable to review order’s deivery address and group them all if it is only possible from the vehicle capacity perspective? What might be wrong within the approach getting such results?
Thanks in advance for you help
Did you get a solution to this problem? I am facing the same issue. For this I had added a soft route constraint which penalizes multiple vehicle going to same location. There was a decrease in the number of vehicles going to same customer but this can be still optimised it seem. The number of multiple vehicle increase with increase in order volume. Can I achieve these obvious solution by tweaking some jspirit parameters? Maybe using different ruin and insertion strategies.
This is probably not the optimal solutoin, but you could give the truck that skill (being the address/or related). Prior to creating jobs, scan all the jobs coming in and group them under that skill and have it match job skill with truck skill.
Any jobs that can’t fit due to capacity/time windows would be assigned to a truck with the same skill or become unassigned.
i.e. if you had numerous zones in the city, you could give 1 truck that zone id, and give all jobs related to the zone that zone id as a required skill.