How to Build an Opening Repertoire
Take advantage of principles from machine learning and design thinking
Many players live their lives in search of the perfect opening. The one that will cover up their weaknesses, play to their strengths, and let them become the player they were always meant to be.
Good news: this opening exists and it’s called the London.
Just kidding, the London is just another opening, no better or worse than many others. In one sense the opening doesn’t matter that much: at the end of the day, you always have to play chess, and most games aren’t decided in the opening. In another, it matters quite a lot: getting positions where you’re comfortable and confident can give you a big leg up.
While finding the perfect opening is a pipe dream, building a functional opening repertoire is within everyone’s grasp. The latest episode of Adult Chess Academy got me thinking about choosing and perfecting openings. These are the strategies that I’ve found most helpful.
The Explore-Exploit Tradeoff
Before Stockfish and AlphaZero there was Chessmaster 3000. It was pretty hard to beat, but it did have a weakness. It played the same way every time, so if you figured out a way to beat it, you could just repeat the same moves and beat it in exactly the same way forever into infinity. This was oddly satisfying, but of course completely pointless from a learning perspective.
While chess engines have come a long way since Chessmaster 3000, they are still largely deterministic. Not perfectly - small differences in search time and other factors can affect results - but for the most part, give them the same position with the same parameters and they will settle on the same move.
This presents a problem for a program like AlphaZero that learns by playing itself. If it just played the same game against itself over and over, clearly it wouldn’t get very far. So the programmers have to inject a random element to mix up its play and explore more of the game space. At the same time, it can’t mix it up too much, since over time it needs to hone in on the best moves.
In machine learning this is known as the explore-exploit tradeoff. It refers to the balance between trying new things to maximize learning opportunities (explore) and using what you already know to get the best results (exploit). While there is no universal mathematical solution to the explore-exploit tradeoff, there is a pretty clear principle: explore early, exploit later.
Imagine you’re going out to dinner and you have to choose between a restaurant you’ve been to before and know you like, or a new restaurant you’ve never been to. Going to the restaurant you know you like is the exploit option - you’re using the knowledge you already have to make a choice you’re pretty sure will work out well. Going to the new restaurant is the explore option. The new restaurant probably won’t be as good as the one you already like, but there’s a small chance it could be even better. It might even become your new favorite restaurant. If this happens, you’ve gained valuable information you can use every time you go out to eat in the future.
There’s not an ironclad way to decide which restaurant to go to, but in general, the newer you are to the restaurant scene in whatever town you’re in, the more you should prefer exploring. If you’ve lived there for a long time, you’ve probably tried most of the restaurants available to you, and it’s unlikely a new restaurant will topple your current favorites. But if you’re new to town, you have much less information, so you’re more likely to find a new favorite.
Chess openings are similar. If you’re relatively new to chess or don’t know much about openings, it makes sense to focus on exploration to find something you like. You should try lots of openings and see what clicks. Once you have a stable repertoire that works for you and you’ve invested a lot of time into perfecting, it makes sense to mostly stick to that repertoire, while continuing to do a little exploration.
Prototyping
Designing Your Life by Dave Evans and Bill Burnett is about using principles from design to improve your life. One of the ideas they suggest is called prototyping. The idea of prototyping is that if you’re considering doing something you’ve never done before, you probably won’t be able to figure out how well it will go just by thinking about it. Therefore, if at all possible, it’s a good idea to take small actions that allow you to gather more information before burning your bridges.
For example, maybe you’re considering quitting your job as a software engineer to start a restaurant. You’re sick of writing code, love to cook at home, and have some innovative ideas for running a restaurant. But if you’ve never started a restaurant before, quitting your job immediately would be a risky plan.
Do you know anything about managing employees? Will you like restaurant cooking as much as home cooking? Will anyone like your menu?
You could gain a lot of information by taking small steps. For example, scheduling short interviews with professional chefs, applying to work one or two nights a week at a restaurant, or running a dinner club out of your house. You might gain a lot of expertise and confidence to launch your restaurant, or you might discover it would never have worked in the first place.
Likewise with chess openings, before burning down your current repertoire and replacing it with something else, you’d really like to know if the new repertoire is going to work any better. This leads to a cycle of constantly changing openings without ever landing on a repertoire that works. You probably won’t be able to figure this out just by thinking about it. You’ll have to play the games.
To do this I recommend prototyping an opening. Fortunately, while developing a deep expertise in an opening is difficult and time-consuming, learning the basics can be surprisingly quick and easy. For example, in one of my first games with the King’s Indian Defense I beat a 2700 player in 17 moves. Lucky? Yes, of course, but it just goes to show that you don’t need to be an expert in an opening to have a fighter’s chance.
One of my favorite ways to prototype an opening is to use the “Short & Sweet” courses on Chessable. Full disclosure: I work for Chessable. But I’m not selling anything here, because these courses are free. It generally takes me about 1-2 hours to finish the course, after which I’m excited to start playing it in blitz games.
Of course, if you fire up a random game online, your opponent is unlikely to cooperate by playing into exactly the opening you want to practice. For that reason if possible it’s a good idea to set up a practice match with a friend or training partner where you agree to play the same opening and analyze the games afterward. Doing this will increase your proficiency in an opening very quickly.
Lichess also has theme arena tournaments where every game starts with a certain opening position, so keep an eye out for theme tournaments with openings you want to practice.
In general, if an opening isn’t working for you, you have two options:
Change your openings
Get better at playing the opening
The prototyping framework provides a useful guideline for choosing between these options. When you’re in the prototyping phase, just move on. It’s like dating. If you go on a bad first date, there’s no point trying to make it work. You already have a piece of evidence that says you’re not compatible and there’s lots more fish in the sea. But if you’re in a committed relationship, you should be willing to put in a lot of effort to make it work.
The dividing line between prototyping and part of my repertoire is, “Would I be willing to play this in a game where I care about the result?” For me, that means a slow over-the-board game. Once an opening is in that phase, you should be willing to put in some time and effort to make it work - at least a few months to give it a fair shake. Much of the value of a well worked-out repertoire comes from experience, not only knowing the lines, but even more importantly having a feel for the middlegame positions. If you bail too early you never develop that.
Opening preparation and dating do differ in one important area. Even once you have an established repertoire, it’s a good idea to continue to play the field and experiment a little, whereas this is frowned upon in many relationships.
What Are You Maximizing For?
We’ve been talking this whole time as though “the best opening for you” is a self-explanatory concept, but it’s really not. What are you trying to maximize for? Learning? Winning (in what time frame)? Having fun? Different answers to these questions would suggest different opening choices.
For example, the Najdorf, one of the most iconic openings of all time and a favorite choice of Fischer and Kasparov, does not perform very well at most rating levels on Lichess. This is from a combination of factors:
Black pieces (Black openings in general are trickier because White starts with the first move advantage)
Mainline (Your openings should be well-prepared, at least relatively speaking)
Sharp (One mistake could spell disaster)
Varied (Many different types of positions)
All of this makes the Najdorf one of the most challenging openings to play. Challenging isn’t necessarily bad - you’ll get experience in a variety of different kinds of exciting positions and you can take inspiration from the games of some of the greatest world champions. But if you’re looking to maximize your rating gain in the next few months, it’s not the ideal opening for you.
In contrast, an opening like the Stafford Gambit actually scores extremely well on Lichess, but if you’re looking to build a repertoire that will take you to the master level and beyond in over-the-board chess, playing a bunch of games in the Stafford could be a waste of time. It just depends on what your goals are.
It might not sound very scientific, but at the end of the day the best advice is to play openings you like. For most people enjoying chess is more important than squeezing out every last rating point, and if you like the openings you play you’re likely to have better results as well.
I couldn't find proof Najdorf doesn't do well on lichess. For example at 1600 level black scores better than white