Multi-robots reach goals at the same time
Hi all,
I am trying to have multi-robots (firstly 2 robots) reached multiple goals at the same time and avoid any obstacles along the way in a navigation task. One way I can think of is to base on the set of velocities generated from DWA of each robot, choose a velocity for each robot so that s1 * v2 - s2 * v1 is minimised. However, doing so requires me to change the objective function in baselocalplanner and probably some code in dwalocalplanner, and I have no idea which function I should incorporate to the DWA objective function to implement this. I am wondering if there is any other way to achieve this?
Please let me know if I violate any guidelines or duplicate the question. I search this extensively but pointless. Thank you.
Asked by harryng on 2019-11-26 22:06:32 UTC
Comments
This doesn't break any guidelines, but it is pretty particular so I'm not sure many people will have input. What I will say is that DWB (DWA's successor) has a more general critic framework so if you want to add an additional critic around this metric, that could be possible. I'm not convinced that's the best way to go, but its worth a try and all the right infrastructure is there in DWB to do it
Asked by stevemacenski on 2019-11-27 00:27:23 UTC
a simpler solution can be subscribe to the velocities you are getting from planner, modify them and publish newer ones to your robot.
Asked by Choco93 on 2019-11-27 08:28:09 UTC
@Choco93 From what I've found, DWA does not publish any set of velocities. Yet I can subscribe to /robot_1/cmd_vel, modifying cmd_vel directly would not make robots avoid obstacles.
Asked by harryng on 2019-11-27 21:57:21 UTC
@stevemacenski I will definitely give it a try. The difficult part, though, is to modify the objective function. I have not come up with the function to incorporate to the objective function for reaching goals at the same time. It would be great if there are any suggestions.
Asked by harryng on 2019-11-27 22:01:19 UTC