Playing sports with dedicated circuits

Published on January 11, 2015

I was recently playing ping-pong when I was struck by an interesting analogy between computational models and the learned reflexes of sports. When you play any physical game or sport involving speed, you rely on both reflexes and higher level thoughts. However, playing by thought and playing by reflex are very different in both their methods and their results. It's most clear in individual sports in which you must react quickly to your opponent's newest challenge while devising your own next strike, such as tennis. As the ball comes toward you, you have a fraction of a second to identify its position and trajectory, position yourself, coordinate the trajectory of your arm with that of the ball, and execute a strike at just the right angles and force.

Any athlete will tell you that when you're competing, you don't think about what you're doing. You just FEEL it. You watch the ball and your arms and legs and hands move and WHAM you hit the ball with just the spin you want. It's like there's a short circuit from your eyes to your arms.

But what if you don't have those kind of reflexes yet? What if you're new to the sport? You play a lot and slowly you develop them, but there can be real value in getting tips on what to focus on. Lessons and workshops from more experienced players are popular because they work. They tell you what to think about, what angle you want your racket to collide with the ball, the motion of arm that can achieve that angle of collision reliably. By thinking about these tips as you play, you can get better fast.

But I think it's just as relatable an experience that in the short term, tips like those will disrupt your play. You may hit some of those shots better, but just as likely your overall play will be a little off, the ball won't seem to go your way, and you give a worse account of yourself than you would have expected if you just focused up and played your game with the flawed technique you're comfortable with.

On the other side of the analogy, consider the contrast between hardware and software solutions to computing problems. The most basic tool of computation is the transistor, in logical terms just a pipe with an on-off switch. From it, you can build the fundamental logic gates - AND, OR, NOT, XOR, and the rest. These can be combined in clever ways to do things like add binary numbers, store the value of a bit, or control which signal goes through an intersection. Circuits like those can then be combined to achieve all sorts of specific goals, like controlling the timer and display of a microwave as you press its buttons.

But the most important logical circuit you can build is a general purpose processor. Equipped with tools to manipulate and store values, the processor acts according to instructions which are themselves data to be manipulated and stored. Rather than specify the operation in the wiring of the circuit, the processor can be programmed to do anything. This is the distinction between solutions in hardware, which use custom physical circuits, and software, which simply run programs on general purpose circuits. Software is obviously incredibly more flexible, allowing people to write simpler and simpler code to specify more and more complexity. It's the go-to solution for most computing problems.

But the flexibility comes at a price of speed. Though they're both unthinkably fast, the time required to execute the same computation with a program on a processor can be orders of magnitude longer than that of a purpose built digital circuit. That's why people go to the expense of engineering application specific integrated circuits for time critical applications like audio processing. Internet routers use dedicated circuits to forward packets out the right wire instead of waiting on a CPU. It's also why most computers have a dedicated graphics processing unit (GPU) to use specific circuits to draw computer graphics in real time.

To draw the analogy, the brain seems to have capacity for both general purpose, CPU style circuits, and specialized, GPU style pipelines from input observations to output actions. The general purpose thinking engine seems the more miraculous with its ability to perform symbolic reasoning, while the special use pathways are indespensible for quick twitch skills like riding a bike. For an activity like playing tennis, playing at a high level requires the competition to be executed almost entirely with dedicated pathways. But when you're trying to improve and you're thinking about applying the tips expressed as verbal symbolic concepts, your observations of the ball's motion has to pass through your general purpose processor before it can tell your arm how to move, slowing you down and throwing off your game.

Luckily, the miracle of human learning is that if similar thoughts passes through the general networks enough, they begin to develop their own dedicated pipelines. With enough training time, you internalize the concepts and can play by reflex better than ever before.