Autonomous Scrimmage?

This (exhaustive) thread discusses the feasibility of playing FRC matches with a fully autonomous robot.

But I have something different in mind. What if, for every FRC game, a simpler game was devised that could be more easily played 100% autonomously? This would be an opportunity for teams to exercise and share control systems skills. It would also perhaps employ a few elements from the latest FRC game, so that each team could use its (presumably mechanically complete) robot and practice field elements.

When I say simple, I mean that teams could score points just by driving their robot from one position on the field to another. For example, based on this year it could be driving from the Key to your lane across the bump. I’m also envisioning this happening a few months after the competition season, so that teams have time to develop and test their code. I want this to be as accessible as possible, but also sufficiently challenging for those who can handle it. In the case of Rebound Rumble, the points scored for each hoop or balanced bridge could be increased.

I’m not sure how FMS logistics would work here, or even event organization – I’m just trying to think of a fun way for teams to experiment with control techniques that they didn’t deploy with their competition robot due to time constraint/stability issues.

Incidentally, Zero Robotics is working towards becoming a fully autonomous FIRST, where everyone plays with identical robots and teams rely on an “FMS” that gives everyone data about the location of every robot. Their past two games have involved interacting with opponents, and this year there were allies as well. How could a game, based on Rebound Rumble but designed for a fully autonomous scrimmage, facilitate robot-robot interaction? In ZR, robots shoot virtual “lasers” at each other, but such a solution would not work well in FIRST. Robots would have to be completely on their own for localization and field navigation, as well as finding other robots.

it is interesting to think about how human players could co-exist in such a game. For example, based on Rebound Rumble, I can envision a robot that shoots its balls at the Key, navigates to its human player on the other side of the field, collects balls until it is full, and then returns towards the hoops until it is in range to shoot again. But such sophisticated routines would warrant a significant point bonus. This should be a competition that is accessible to rookie and veteran programmers alike.

Thoughts?

I haven’t been involved or even particularly observant of VRC or FTC in quite a while. But back before the FIRST/IFI divorce, the FIRST Vex Challenge had separate, fully autonomous matches (where the field was divided into sections for each team). A combination of the tele-operated ranking and your autonomous ranking was used to determine the final standings for alliance selection.

I believe something similar exist for the VRC College Competition now, if not the high school levels. Believe being the operative word.

Perhaps something similar to the system used in the RoboCup Small Size League (SSL) could be implemented. Teams can build custom robots (up to size limitations, etc) but are required to have “butterfly markers” on top of their robots to identify them, and a central camera system identifies the positions of the robots and game piece (ball) and reports these to each of the teams. Would be similar to bumper rules, etc, that are in current FIRST game rules.

Interesting. But perhaps it would be better to try and stick as close and relevant to FRC as possible? A routine that relies on an overhead camera isn’t particularly useful or usable in a regular FRC autonomous match. I’m hoping that teams would ultimately develop control techniques here that they could then apply in actual matches in later seasons.

How difficult would an overhead CV system that could report the location of different robots be? My guess is sufficiently complicated that it would be as if we were designing a new competition altogether.

I think the overall idea is that it’s beyond the capabilities of a vast majority (if not all) of FRC teams to do a full match autonomously, otherwise it would already be happening. Some adaptations will be needed. This could change over subsequent years as teams are able to handle bigger challenges, but it seems like it would be best to start with an easier formulation of the problem.

Could go the opposite way and put beacons (I’m imagining something close to the vision targets from 2009, but with more color options to make each beacon distinct) around the arena and cameras on the robots. Such beacons would be most effective if they are directly overhead. I see it as harder to suspend a bunch of beacons in the same locations from venue to venue than it would be to hang a couple of cameras from the lighting trellises where it’s convenient to do so and simply calibrate their positions relative to the field using software. Since the cameras are provided by the field, only one calibration has to made and maintained.

Part of the reason for using the butterfly patterns is that designing a CV system to recognize them is actually pretty easy. If you’re thinking of designing a system that works for a robot without the addition of special markers (or perhaps just red/blue bumpers) it wouldn’t be too difficult to create a system that identifies robot positions by using background subtraction and segmentation, but there would be no reliable way to determine the robots’ orientations nor to distinguish one red robot from another unless additional markings were utilized.

A logistical issue that would have to be addressed is the feasibility of such a competition for teams that don’t have ready and persistent access to a practice field. The localizing system utilized would likely have to be flexible enough to allow the camera and/or beacons to be set up in a shop environment and in such a way that programs could be transferable to the actual playing field. Or would a practice field be an implied requirement?

My feeling is that fully autonomous robots simply are not as exciting to watch as teleoperated ones. Autonomous is currently exciting because it is just controlled enough for teams to be highly successful at it. Games would have to be dumbed down a LOT for teams to successfully compete autonomously.

If FIRST wants to emulate the sports model, the majority of the match needs to be teleoperated in my opinion. Especially when you consider that many (the majority?) of teams struggle to field a robot that can competently play the game with the current structure.

Fully autonomous matches are kind of a bummer for the drive team, too.

I agree that few if any teams could field an effective fully auton robot given the 6 week build, But if there was a side competition - say, in mid-December, using ‘last year’s’ rules, some teams might make a pretty good go of it. The biggest issue I see is that those teams would be spread far & wide, making an actual competition an expensive proposition (=travel) for most of them.

Hmmm, maybe next year at IRI there could be a few fully autonomous Breakaway matches? :cool:

I have a feeling it would just be sad to watch that. Robots would need to be retrofitted with sensors for it to be plausible, and then teams would need to spend time programming for a competition they would have to pay double the shipping to attend, should they even be invited.

Some really quick and dirty code that uses a camera pointed at the ground to try to find balls, pick them up, seek the key, and then go shoot could be kind of cool, if not amusing to watch robots to drive around aimlessly and crash into things.

As both a driver and a programmer, I suppose it’s unfair for me to say that I wouldn’t mind either way :stuck_out_tongue:

In all seriousness, however, I would think that such an endeavor would require a different kind of support for the team, where the programmers/controls engineers are at the forefront of the competition. Could be interesting.

The logistics issue that you raise is a valid one, but my guess is that such an event would cater mainly to local teams, like other scrimmages (Ramp Riot, Monty Madness, etc). I suppose I put this idea out there just to see if others also thought that a simple auton-oriented side competition would be interesting, or worth competing in for teams.

It seems that many in this thread support the idea of putting trackers on the robots that are observed by an external sensor above all the robots. My concern with this is still the potential technical complication, as well as the loss of strict relevance to FRC. In other words, a navigation system reliant on an external sensor can’t be effectively adapted for a regular FRC game, since the infrastructure doesn’t exist in regular FRC games.

Also, an external tracking system seems like it would lend itself most to robot-robot interaction, right? Would an autonomous game with less robot-robot interaction/collaboration be worth it? Are there other potential solutions for interacting with other robots without using external sensors or data, such as computer vision detection? Either way, were I to design a simpler FRC game for use in an Autonomous Scrimmage I would probably not emphasize the robot-robot interaction, to “level” the playing field for teams that choose simpler methods to score points in this hypothetical game.

If a team wants could they technically have a fully autonomous robot?

Would it break any rules?

Like they push a button and initiate their auto mode?

If done effectively it could be very great in competition.

It does exist. However, it’s more of a challenge than a game - it’s one robot on the field at a time, rather than multiple robots competing and cooperating as they do in traditional teleoperated matches. A separate field is set aside for these matches (as well as the driver skill challenge - one robot, one drive team, 60 seconds to score as many points as possile)

I could see this translating into Rebound Rumble - one robot clears the bridges and A-bombs a robot waiting on the key …

The short answer is that it is legal. I would read through this thread to answer your question http://www.chiefdelphi.com/forums/showthread.php?t=84797