[AGV Network] Routing Constrait BackwardOnly/ForwardOnly Not Working

[AGV Network] Routing Constrait BackwardOnly/ForwardOnly Not Working

iago_montes_f
Explorer Explorer
261 Views
2 Replies
Message 1 of 3

[AGV Network] Routing Constrait BackwardOnly/ForwardOnly Not Working

iago_montes_f
Explorer
Explorer

Hello,

 

I am creating a model in which I want the AMR to arrive with a specific orientation based on two stations that are on the same path. For this, I wanted to use the routing constraints ForwardOnly and BackwardOnly in the process flow, but they are not working. I am attaching two simplified models in which I show the issues.

 

Why doesn't it take the routes I indicate in case 1_0 and 2_0, even though they are valid routes to arrive with the correct orientation?

 

Case 1_0:

iago_montes3Q5QH_0-1754470264187.png

 

Case 2_0:

iago_montes3Q5QH_1-1754470366027.png

 

Thanks.

 

0 Likes
262 Views
2 Replies
Replies (2)
Message 2 of 3

iago_montes_f
Explorer
Explorer

Any help?

0 Likes
Message 3 of 3

FelixMoehlmann
Collaborator
Collaborator

As far as I can tell, the problem is that the live routing algorithm does not store data for both possible AGV orientations. So when no valid path can be found following the straight path, the algorithm will backtrack to the spur and follow it. But when it gets to the point where it merges with the straight path again it goes: "Oh, I got here faster by using the other option, so this can't be the solution". And discards the spur as an option, because it doesn't use different values for the orientations. (This is mostly purely conjecture based on how the A* algorithm that is used here works, but would explain the issue).

For the static routing table both orientations are taken into account. You can see this if you constrain the orientation on a path and then show the routing accessibility.

moehlmann_fe_0-1768559210155.png

So one possible solution could be to not use dynamic constraints but have separate paths for both control points.

 

Another option is to control which which path through the intersection is valid. By placing a control point on the straight path, you can change its constraint. This will force the routing to choose the spur as the only possible path and thus also force the orientation change and make a possible that a valid path to the destination is found.

moehlmann_fe_1-1768559489771.png

 

0 Likes