Competing With Humans Is A Thankless Job
My graduate work was all done in Artificial Intelligence (AI). This is a field which sounds much more interesting than it is, thanks to Hollywood. People think of the Matrix, Terminator, Hal 9000, etc. and imagine scientists on the cusp of creating an intelligence beyond their control. The reality is more like trying to teach a chicken how to do brain surgery. And when the chicken scratches the ground you say “Look! The chicken is clearly disenfrachising the central glioblastoma! With a little more training and funding, we can solve chicken-based brain surgery!”
Except chickens are WAY smarter than computers. Computers have a very undeserved reputation for being smart, again thanks to Hollywood. But computers are mind-boggingly stupid. People think computers are smart because a computer can calculate a 1,000 cell spreadsheet in a fraction of a second. If a person could do that, you would think they were smart (and they would be). But thinking a computer is smart for doing that is like thinking I am strong because I can lift a ton of pennies, one penny at a time.
One of the first problems a fledgling AI student has to solve is a old AI problem called Sussman anomaly. Put simply (and it is impossible to make it complicated), the Sussman anomaly deals with a set of three blocks, A,B & C. You want to have the blocks stacked up A, B, C. You can only move one block at a time. The way the computer wants to think of this is the combination of the goals “A on B” and “B on C”
Are you excited yet? But right now you have the blocks like this:
Don’t worry, we are getting to the exciting part soon. Let’s say you decide to satisfy the goal “A on B”. You put C on the table, then A on B and end up like this.
Now you are halfway there. But you have a problem. You have to get farther away from your goal to solve the problem! You have to put A on the table, then B on C, then A on B. Shocking! If you start out with the goal of “B on C” you have the same kind of problem.
This is highly advanced stuff, I know. I hope you are keeping up with me. This problem is not that hard to solve with a different kind of planning algorithm, and in grad school we had to solve it with an expert system, or Lisp, or Prolog or something. I worked on it for quite a while and when I eventually solved it I went to my wife and said “Guess what! I solved my first AI problem”. My son actually played with blocks at the time, so I thought it would be interesting. And I described it to her. She paused to consider what I had just described and said “Adam can do that, and he can’t even talk yet.”
It was an epiphany for me. The first thing I learned was that my wife will never appreciate my true genius. The second thing is that computers can do a few things that regular people associate with intelligence, like calculations and keeping track of things. But there are an infinite number of things that computers can’t do that we don’t even associate with intelligence because they are so trivial.
Here are some examples of a number of things that we used to ponder in AI. You will think they are stupid because you are intelligent, relative to a computer. But when you really think about them, they are hard to nail down. Try to think of a set of rules that would allow a computer to unambiguously be able to answer these.
- What makes a cup a cup? How is a cup different from a glass?
- What constitutes a chair?
- How can you tell the difference between a cat and a dog?
- Look at a picture of a room. What are the boundaries of the object in the room? Where are the walls?
As an example of this, consider the seminal “I lied about the trees” paper. The central element is a joke:
Q: What’s big and gray, has a trunk, and lives in the trees?
A: An elephant - I lied about the trees.
The idea is that as you try to nail down a concept, the exceptions kill you. For example, one might say “An elephant is gray” But if we paint it pink, is it still an elephant? You might say “An elephant has four legs” But if it loses a leg is it still an elephant? How many things can you change before it ceases to be an elephant?
There are an immense number of things you can do without thinking. You can’t even describe how you do them, you just do them. And all those things are very, very hard for computers to do because we can’t tell the computers how to do them. The only way we can tell a computer how to do something is to put it in very simple terms, and we can’t do that with most of the things that humans do.
Because of this, when you work in AI, or computer vision, or a number of related fields, you are “competing” with humans. You can work really hard to make a computer see a few things, or figure out some concept on its own, or stack blocks. And you will be really excited about your accomplishment, but the humans around you will be completely unimpressed.