AMR costs for turning

AMR costs for turning

jfoster2
Not applicable
1,506 Views
6 Replies
Message 1 of 7

AMR costs for turning

jfoster2
Not applicable

[ FlexSim 25.0.1 ]

Is there a way to add costs for turning?

  • For instance, a path with two 90-degree turns is less desirable than a path with zero 90 degree turns.
  • Furthermore, a path with the same number 90-degree turns but one path is in the opposite direction of the vehicle orientation so it would require an additional 180-degree turn, how do I account for this cost?
0 Likes
Accepted solutions (1)
1,507 Views
6 Replies
Replies (6)
Message 2 of 7

FelixMoehlmann
Collaborator
Collaborator
Accepted solution

As long as the time loss due to deceleration/acceleration at turning points is small compared to the loss due to the rotation time itself, simply using the "Divide By Speed" option in the AGV Network properties (General tab) will take care of that.

1736769339771.png

0 Likes
Message 3 of 7

jfoster2
Not applicable
Does this take into account the current orientation of the vehicle when determining the path? Two paths may be equal in terms of distance/rotation however the current orientation of the vehicle is important since the vehicle always wants to travel forward. A path that requires no initial rotation is more desirable than a path that requires a 180 degree rotation initially.
0 Likes
Message 4 of 7

FelixMoehlmann
Collaborator
Collaborator
Yes, you can easily test this by building two routes to a destination, one where the TE needs to turn around first and one where it doesn't. It will prefer the second one, even if the distance is slightly longer (up until the basic math during routing will determine that turning around is better).
0 Likes
Message 5 of 7

jfoster2
Not applicable

flexsimex.jpg

In the image you can see the red path takes longer since the turning/rotation required is greater than the turning/rotation required for the blue. However, from the first pickup the vehicle actually takes the red path instead of the blue path. I cannot figure out why. I implemented you suggestion by checking the "Divide by speed" box but nothing changed. Here is the model amr.fsm

0 Likes
Message 6 of 7

FelixMoehlmann
Collaborator
Collaborator

I tested this with paths that had a forced travel orientation set. It could well be the case that rotation due to the threshold settings of the AGV is not taken into account when calculating the route.

While the getTravelPathWeight hook of the customization delegate gives you some control over the routing, it will be hard to use for this purpose, because it doesn't give you information about the current orientation of the traveller when it starts on a given path section.

To get full control over the routing you would have to implement your own routing algorithm. For an example you can take a look at the model we showcased some years ago.

https://www.youtube.com/watch?v=9PYGAJ9c2n4

It uses a self-made implementation of the A* algorithm that tries to minimize the amount of turns and also stores estimated arrival times per cell to predict collisions and make vehicles wait at the last 'save' location.

FlexSim_20202_AutoStore_1_0_5.fsm

AutoStore concept model overview.pdf

0 Likes
Message 7 of 7

Jeanette_Fullmer
Community Manager
Community Manager

Hi @jfoster, was Felix Möhlmann's answer helpful? If so, please click the "Accept" button at the bottom of their answer. Or if you still have questions, add a comment and we'll continue the conversation.

If we haven't heard back from you within 3 business days we'll auto-accept an answer, but you can always comment back to reopen your question.

0 Likes