Pre-Competition Strategy

This year my team was fortunate enough to play with some VERY high level teams. While doing this I also was enlightened on how simple and kinda bad my teams “strategy” was. I was wondering if any of you guys could share how you prepare strategies before arriving at competition. I was thinking about creating something like a D&D/role playing simulation type thing where one person would control an alliance and you could start with different scenarios. Really just looking for ways to improve our strategy to help with hard matches.

I was asked by TJF to share JVN’s pre-mortem blog post, and frankly, its really good. [strike]Ill come back and edit in my own response in a minute.[/strike]

Something I did with 4513 this year was run simulations using a top down game that was created by another user on here. I asked some of the drive team today, and they said they liked using it and really helped with understanding strategic scoring and also working together inside intense situations (I had them cramped together, not totally by choice…)

Another option, especially if you have a 2nd robot, is to have them go 1v1 against each other. While its not perfect in terms of match simulation, it will be a race to see who is better and trying strats that normally you wouldn’t otherwise risk in normal competition, and also is valuable drive practice (which if your drivers arent getting any practice beforehand then start with this as that is by far the #1 thing you can do to help prepare your drivers.)

Possibly obvious, but in case it isn’t…

D&D is set up for relatively long cycles, and is based in gross on what sort of attack you’re doing – this is because it is essentially providing a reasonable bit of randomness to group storytelling. A game simulator to test out strategies would have to be based on a much shorter time scale. For Power Up, the robot capabilities would have to be how many seconds it takes for the robot to acquire and attempt to “score” a cube in the switch or scale or exchange based on a random number, as well as the likelihood of it actually going in the goal at the end of that time. It would also have to have defense capabilities - how much time does a given defensive robot add or multiply that time, and affect the goal percentage? Remember that the more aggressive a given robot is, the more likely it is to draw a foul…

I’m a big fan of human games. On kickoff or shortly thereafter, simulate game play with a bunch of students moving “like robots”. Give them different abilities and have them play matches different ways and see what works.

Thanks Mik. Now onto the good stuff.

JVN’s post captured a really important part of the process in the implementation: analysis, observation, and practice. The thing that seperates the bottom from the middle is knowing your limitations going in, and knowing each season isn’t a fresh start. This is gonna be a “from the top” post because pre-competition strategy starts LONG before the competition does.
Step 1. Start before kickoff.**

It may seem simple to say it like this, and kinda off topic, but I promise it’s not. To understand FRC designs and how effective, they’ll be, you need to study. A lot. Study previous seasons, good teams, not just world champions (congrats btw!). There are lessons to be learned in failure just as much as success.

Step 2. Set a goal, stick to it.

When you’re at kickoff, you need to be careful about scope creep. You might look at the design you want to go with and go “but if we build it like this, we can also score X!” and that mindset makes it incredibly easy for your 6 week build season to become a 16 week one. Stick to a goal you know you can achieve within 6 weeks even if everything goes wrong.

Step 3. Budget time for failure.

It’s absolutely horrifying to admit something doesn’t work, I know. But failure is an essential part of the FRC process. A wise man once said “The teams who succeed on Einstein succeed because they failed a hundred times before their robot touched carpet.” Things are gonna break during the season, and if you allow for it, you’ll be okay at worst and fine at best, leading us to step 4:
Step 4. Driver Training**

Your drive team needs to know the game. Inside, and out. Not just what they can score and what the fouls are, but also where on the field, practice with the robot, the whole nine yards. This means that if you need to play a different game than you’re used to with new partners, you can, and don’t need to rely on a partner maybe not knowing a strategy inside and out. Rules tests generally can help, but your drivers don’t need to know exactly which letter rule pertains to the $5 exemption on the CAW. Make sense?
Step 5. Artificial Alliances**

In the same way 148 outlined their strategies and potential partners in this post (incredibly long but worthwhile post, please read it!), you should think about this going in. What play styles are compatible with yours, and what will it take to get you to your goals? Can the teams in your area meet those needs, or will you have to take on another role? Filling in these gaps, while also keeping Karthik’s principles of Strategic Design (robot units. page 9 but also the whole slide deck.) in mind, is a very difficult task.

Before you bag your robot, after your drive-team has run their gauntlet against it, you should know what your robot is capable of if you need to push it, and what it normally can do. Knowing this, you can see what you need to round out your alliance to “play the game as it’s meant to be played.” You know in the rules where the RP are, where the point bonuses and important scores are. Don’t forget to think about that.
Step 6. Ask questions!**

You’ve achieved something very very few teams are able to do, you’ve won a Championship. Even if you hadn’t though, the FIRST community is more than willing to help everyone. We’re here to win a future, not banners. I talked a whole lot about JVN and Karthik but did you know they also have emails & CD profiles you can DM / email and get actual responses back from? The entire wealth of the FRC community’s extensive memory is one site search or DM away.

**Step 7,8,9,10… Iterate.
Watch this talk, and then this one. And then watch them again and pay attention this time. And then ask more questions. Like building a robot, the engineering process is iterative.

I know this was kinda nonsensical and rather rambly, but champions aren’t made the night before event, they’re forged in the fall.

Best wishes, Tim

I spent much of Saturday on this issue. We overextended ourselves this year, and ended up with less functionality than if we’d aimed a step or two lower. We’ve scrapped both our competition and practice robots from the competition season, and re-built for off-season events (leveraging what we learned during build and competition, of course). As a first take on this, I put together the attached “RobotComplexity” spreadsheet, and evaluated it on our post-season robot this year, and all our other robots back to our rookie year. (I likely missed some stuff for 2012, as I was mostly on the sidelines that year.) I expect this spreadsheet to continue to develop, but I’ve attached the first draft. Note that an “element” is a major structural or functional part of the robot, and does not include things like COTS gussets and fasteners. A “custom cut” is when we cut a piece from plate, bar, angle, channel or tube stock and drill a few holes for fasteners. “Modular” is when we cut a piece of VersaFrame, 8020, KoP chassis, or similar, and use only (or mostly) the stock holes. If the numbers don’t move much, we’ll be budgeting ourselves to about 250 points for our practice robot (to be complete at the end of week 4) and 325 -350 for our competition robot at our first event. Our cost of a bit over 500 points for what we tried to bring this year will be right out, unless we get there in several steps. Also, here I’ve sort of separated the drive train from the remainder of the robot; In future iterations, I’m going to try to bring these pieces back together, and tie “complexity” back more concretely to the number of team-member hours which each component typically requires to get to nominal functionality.

Edit: to clarify: to evaluate a single robot, zero out column E then populate it according to your robot’s pieces parts, then get the results in F3. All the data originally in column E and anything from G to the right is really just applicable to 3946, though you may want to do the same - zero the odd letter columns to fill them in, and find out how complex your robots were.

RobotComplexity.xlsx (34.2 KB)

Unless you’re playing week 1, the #1 most helpful thing would be to watch as many matches as possible. How did opponents play the elite teams? Did anything work? What didn’t work? Did the elite teams play the same way?

That in itself is a strat to consider, albeit youre making this one long in advance. If you know that you can come out the gate strong and have a working bot and a drive team thats competition ready at bag, it may benefit to go to a week 1 event. While out convenience for 3 years prior, 4513 traveled to a week 1 event across the district mainly because they knew that they can be dominant early on, and it finally paid off this year with their first blue banner.

To go the other way, maybe youve found waiting and really getting in the extra drive practice has been giving you the legup at events. Waiting till a week 3-5 event may be the best bet there, and really focus on the last set of iterations on the bot and really hone in on the driving.

Simplicity isn’t necessarily bad. You can make simple quite effective if you play your cards right. For example, putting cubes from the Portal into the enemy Switch sounds simple right? But it can be quite destructive to the other alliance, even if you don’t shut down the opposing Switch you’re at least distracting an enemy robot to keep up with their Switch instead of doing other game tasks. Strategy for a game should be specified around the robot you build, find your robots strengths and weaknesses. Do what you do well, and avoid your weaknesses. That’s the simplest way I can put it without going into multiple examples.

This thread has went a bit off-topic from the original how to “improve our strategy to help with hard matches”, but here is my response to OP.

The first step is to have a way you want to play the game.

The way we came up with this is to start out with some goals.

We need to own our switch in auto.
We would like to own the scale in auto.
We need to own and keep the scale early in teleop.
We would like to own our opponents switch as early as possible.
We need to have 3 cubes in the exchange for the levitate power-up.
We need to be “done” at ~30 seconds left in the match to have plenty of time to do our buddy lift.

Once you know what you need to do, the pattern of how you solve that problem gets easier. (I can expand on this with examples from this year if needed)

*Tip: Especially during qualification matches, your strategy must be able to be written in one sentence without the use of more than one comma.

I think this should be a little more refined, don’t just watch lots of matches – analyze them.
Make sure that you understand the decisions that were made in a match and why.
Everyone has a different way of analyzing matches, but for me personally, I will watch the matches once just as a spectator, then start analyzing the strategy of each alliance.
In this game, the first 15-20 seconds after autonomous and last 30-45 seconds of the match are most important, but there can be little things to pick up on in every portion of the match.
An example of the intricate details that can be valuable; this year at champs Corey from 2767 rattled off the driver station positions of the 254/148 alliance at Houston – even the smallest details can matter.

I’ll say that the 75% of the complexity of our strategies were … recycled from either experience playing against those strategies or seeing those strategies play out at other events.

A few examples:
Using the switch/exchange/defense bot to defend the fence cubes was from playing against/with 494 at MSC.
Using the switch/exchange bot to feed us a few cubes at the beginning of the match was from watching 33 and 6875’s play at ONWIN.
Our understanding on how to play the far end of the field was improved a lot from our matches against 3357, 3452, and 6193 at MSC.
Our almost 3 cube close-scale autonomous mode at MSC and CMP was heavily influenced by watching hours of video of 1114’s and 2056’s.
987 showed us how to use the opponents switch effectively to get back control of the scale at AZFL.
Our human players watched a lot of matches and reported on when and why top teams used power-up so that they had the information they needed on when to play the power-ups so that it would become an instinct.