Closed lucaslorentz closed 9 months ago
Forgot to mention, but error seems to be different from #140.
It fails with manhattan distances as well, no need to use a custom matrix.
Hi, thanks for feedback!
Just to note: vicinity clustering is pretty an experimental feature.
I've briefly checked the problem and seems related to relation feature usage with vicinity feature. The root cause (most likely, still investigating) is that job1 and job2 are merged into one job in preprocessing step and this new job is used in internal job registry, not old ones. Possible solutions so far:
I guess you want to have two jobs to be clustered and then assigned to specific vehicle. I would need to think how to make this possible if you don't want upfront which jobs can be clustered together (otherwise you can use skills to lock them to specific vehicle)
Interesting, thanks for the info. So, the clustering logic does take "skills" into account, but not yet "relations". I also got it working by using "compatibility" to prevent clustering of those jobs, but I will probably change to use skills, like you suggested.
Yes, adding different skills/compatibility will prevent jobs to be clustered.
I'll will fix the issue to avoid panic by preventing jobs from relation to be clustered.
I've added the fix into the current master, will take some time to release all the changes
Thanks for the improvement. Ideally, the configured relations should separate jobs in different clusters, instead of preventing them from clustering.
I will stop using clustering for now. Just realized I don't need it. I was using it mostly to group the same location into a single stop, but I believe this is done already even without clustering.
Hey, congrats on the project! I'm considering adopting it and I'm doing some tests.
All more common stuff worked very well for me so far. But I'm getting this error on a specific scenario:
I carefully deleted everything in my scenario until I got the minimal reproducible problem. Turns out it is a problem when combining:
Could you please have a look? I hope you can easily fix it with the info below.
Problem
``` { "plan": { "jobs": [ { "id": "job_1", "pickups": [], "deliveries": [ { "places": [ { "location": { "lat": -23.6201069, "lng": -46.7615237 }, "duration": 1.0 } ], "demand": [1] } ], "services": [] }, { "id": "job_2", "pickups": [], "deliveries": [ { "places": [ { "location": { "lat": -23.6201069, "lng": -46.7615237 }, "duration": 1.0 } ], "demand": [1] } ], "services": [] } ], "relations": [ { "type": "any", "jobs": ["job_1"], "vehicleId": "vehicle_1" } ], "clustering": { "type": "vicinity", "profile": { "matrix": "bike", "scale": 0.5 }, "threshold": { "duration": 30.0, "distance": 30.0 }, "visiting": "continue", "serving": { "type": "original", "parking": 1.0 } } }, "fleet": { "vehicles": [ { "typeId": "bike", "vehicleIds": ["vehicle_1"], "profile": { "matrix": "bike" }, "costs": { "fixed": 0.0, "distance": 0.0002, "time": 0.005 }, "shifts": [ { "start": { "earliest": "2023-12-15T00:00:00+01:00", "location": { "lat": -23.5415617, "lng": -46.7139935 } }, "end": { "latest": "2023-12-25T00:00:00+01:00", "location": { "lat": -23.5415617, "lng": -46.7139935 } } } ], "capacity": [30] } ], "profiles": [{ "name": "bike" }] } } ```Stacktrace
``` thread '