RoboJackets / robocup-software

Georgia Tech RoboJackets Software for the RoboCup Small Size League
Apache License 2.0
182 stars 187 forks source link

Remove has_ball role requirement #1256

Open JNeiger opened 5 years ago

JNeiger commented 5 years ago

The current has_ball role requirement requires one robot to have a ball in it's mouth otherwise it fails.

Reasons for the removal:

JNeiger commented 5 years ago

If we want a role requirement where we want to prefer the robot controlling the ball, it can easily be done through a more robust version of this. I'll post it here since I already wrote it out. At the current moment, I can only see this being used in capture and most of it can be done through the existing framework.

I have a couple ideas for this weight. You can do an inverted cylinder such that the immediate area around the ball (2*robot_radius or something) has a 0 cost while the rest of the area has a large non-zero cost. If that trigger when the ball has a large velocity away from a robot during a pass, you can throw a similarity cost where you compare the velocities of the ball and robot through a dot product or something.