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 s_1 * v_2 - s_2 * v_1 is minimised. However, doing so requires me to change the objective function in base_local_planner and probably some code in dwa_local_planner, 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.
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
a simpler solution can be subscribe to the velocities you are getting from planner, modify them and publish newer ones to your robot.
@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.
@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.